Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Mějme R matice: A řádu m x n a B řádu n x m. Zjednodušte výpočet determinantu blokové matice:
( 0 A )
(-B I )
Bylo nám napovězeno, že ji máme násobit nějakou vhodnou maticí s determinatem = 1. Zkoušel jsem různé blokové matice s I submaticemi na diagonále a různě upravenými maticemi A a B mimo ni, ale bohužel většnou narazím na "nekompabilitu" rozměrů vzniklých matic, díky kterým by se výpočet reálné matice moc nezrychlil.
Nemáte někdo nějaký nápad? Stačí bez důkazu, že to půjde vždy.
Offline
Je-li m různé od n, pak budu-li dělat Gaussovu eliminaci na sloupcích či řádcích (podle toho, jestli je m větší než n), tak díky té nulové obdélníkové submatici mi vznikne nějaký nulový řádek či sloupec, tedy determinant bude nula.
Je-li m=n, pak výsledek je až na znaménko |A|*|B|. Stačí si buď uvědomit, jak můžeme použít pravidlo pro násobení matic 2x2, nebo si udělej Laplaceův rozvoj podle prvních m=n sloupců -- všechny součiny až na jeden budou obsahovat determinant matice s nulovým řádkem (sloupcem).
Offline
Pro m = n řešení chápu: stačí si |A|*|-B| vynásobit (-1)^((x*(x-1))/2, kde x = m+n, abych získal správné znaménko determinantu celé blokové matice– abych jej mohl spočítat, musím převrátit matici podle horizontální osy, což odpovídá elementární úpravě prohazování řádků. Každá taková operace invertuje znaménko původní permutace.
Avšak pro m různé od n to stále nechápu: nulová submatice mi snad přece nezaručí, že při převodu na REF se mi nějaký řádek/sloupec vynuluje. Nebo se pletu?
Offline
Jenže problém je (kromě mne :-) v tom, že ta nulová matice je čtvercová řádu mxm, vidím-li dobře. Takže sice pokud m>n, tak tam půjde nulový řádek/sloupec vyrobit, ale pokud m<n, tak už mi ho nikdo nezaručí.
Teď mne asi budete kamenovat, ale nešlo by tu celou matici vynásobit něčím tak, aby se měl zaručeno m=n a zůstala mi nulová i jednotková matice?
Offline
Tuším, že výsledek pro m<n povede na něco jako na |-AB| nebo tak. Nemám teď víc času to promyslet, ale napadá mě matice
-AB 0
0 I
která je rozměrové kompatibilní s maticí původní a jejich součin vypadá nadějně. Zkus jít třeba tímto směrem.
Offline
Díky, asi to tak bude. Když si původní matici pro lepší názornost převrátím podél vertikály (což odpovídá změně znaménka determinantu jeho násobením (-1)^(m+n)) a vynásobím ji zprava:
(I B)
(0 I)
kde "horní" jedničková matice je řádu nxn a "dolní" mxm, vyjde mi matice:
(A A*B)
(I 0 )
kterou převrátím dle horizontály nazpět (zase odpovídá změně znaménka násobením (-1)^(m+n)).
Nyní už vlastně počítám determinant diagonálních prvků, čímž jsem dosáhl zamýšleného zrychlení.
Doufám, že to není moc velký blud.
Offline