Maticová funkce
Maticová funkce je matematické zobrazení, která zobrazuje matice na matice. Některé komplexní funkce , nejčastěji se setkáme s funkcemi
je možné rozšířit přirozeným způsobem na maticové funkce. Tento proces se také nazývá funkční kalkulus.
Výraz maticová funkce se někdy používá pro libovolné zobrazení z nějaké množiny do množiny matic.
Definice
Nechť je funkce komplexní proměnné , a nechť je čtvercová matice. Pokud je funkce definovaná a analytická na otevřené množině obsahující spektrum matice matice , lze funkci zobecnit na . Zobecnění lze provést několika různými avšak navzájem ekvivalentními[1] způsoby:
- pomocí Jordanova rozkladu matice,
- pomocí Cauchyova integrálu a
- pomocí polynomiální interpolace, užitím Hermiteova polynomu.
Definice pomocí Jordanova rozkladu
Uvažujme analytickou funkci
kde suma na pravé straně je Taylorova řada funkce v bodě 0 (která je konvergentní). Pak lze funkci zobecnit na čtvercové matice jednoduše jako
Je-li matice diagonalizovatelná, existuje regulární matice tak, že
pak
Protože
pro platí
a tedy
Velká závorka uprostřed je diagonální matice, obsahující na diagonále shora uvedené Taylorovy řady se , tj. právě hodnoty . Dostáváme tak vztah definující maticovou funkci diagonalizovatelné matice
Pokud matice není diagonalizovatelná, můžeme použít Jordanův rozklad a situace je jen nepatrně složitější. Existuje regulární matice tak, že
kde matice
je blokově diagonální, s Jordanovými bloky na diagonále (zřejmě ). Analogicky jako v předchozím případě dostaneme vztah definující maticovou funkci
kde
Definice pomocí Cauchyho integrálu
Nechť je opět je analytická na otevřené množině obsahující spektrum matice . Nechť dále je uzavřená křivka v oddělující od komplexní roviny nějakou část oblasti analyticity obsahující všechna vlastní čísla. Pak
- ,
a
Definice pomocí polynomiální interpolace
Definici pomocí Hermiteova interpolačního polynomu nalezneme například v knize.[1]
Výpočet
Jordanův rozklad je užitečný nástroj pro porozumění pojmu funkce matice. Definice však, jak to obvykle bývá, není vhodný návod pro praktický výpočet. Nicméně pro velmi malé, školní příklady, lze maticovou funkci spočítat přímo z definice, nejsnáze právě pomocí Jordanova rozkladu. Numericky stabilní výpočet maticových funkcí velkých matic je předmětem intenzivního základního vývoje v oblasti maticových výpočtů.
Výpočet maticové funkce je navíc silně závislý na funkci a na vlastnostech matice .
- Při výpočtu odmocniny z pozitivně definitní matice se používají algoritmy založené na Newtonově metodě.
- Při výpočtu znaménkové funkce matice, která nemá žádné ryze imaginární vlastní číslo se počítá pomocí algoritmu sign iteration.
V praxi, v mnoha případech není potřeba znát přímo matici , ale stačí znát její akci na konkrétní vektor, tj. , nebo dokonce . Často tedy stačí určit vektor délky , nebo dokonce jen jeden skalár (viz příklad řešení ljapunovské rovnice, případ kdy ). To je klíčové zejména u rozsáhlých úloh. Matice může být hustá i když původní matice je řídká. Pokus o přímé vyčíslení funkce tak může vést na hustou matici, přičemž požadavky na uložení všech prvků matice (reálných čísel) mohou významně přesahovat paměťové prostředky dostupné na daném počítači. Pro výpočet nebo bez vyčíslování matice se používají speciální postupy a algoritmy.
Příklady aplikací
Největším zdrojem aplikací jsou maticové výpočty samy o sobě. Mimo to se s maticovými funkcemi často setkáváme v teorii řízení.
Řešení obyčejných diferenciálních rovnic
Obyčejná homogenní diferenciální rovnice s konstantními koeficienty, anebo systém rovnic s konstantními koeficienty, se dá přepsat na maticovou rovnici
je vektor neznámých. Řešení je vektorový prostor generovaný sloupci matice
Řešení ljapunovské rovnice
Při rozhodování zda je dynamický systém řiditelný nebo pozorovatelný řešíme tzv. ljapunovské rovnice
kde matice je stabilní (tedy ). Řešení lze formálně zapsat ve tvaru
kde se užívá maticová exponenciála.
Podobné problémy vyvstávají při úlohách redukce modelu.
Stabilizace matice
V předchozí aplikaci byla zmíněna stabilní matice. Pokud matice dynamikého systému není stabilní, což se často stává, je třeba systém stabilizovat, tj. eliminovat vliv vlastních čísel s kladnou reálnou složkou ve zpětnovazební smyčce. To lze formálně realizovat znaménkovou funkcí. Nechť matice nemá žádné ryze imaginární vlastní číslo. Uvažujme dále, pro jednoduchost, že matice je normální, tj. . Protože znaménková funkce je v celé komplexní rovině, kromě imaginární osy, analytická, platí
Tedy matice
jsou ortogonální projektory na podprostory generované vlastními vektory matice odpovídajícími vlastním číslům se zápornou, resp. kladnou reálnou složkou.
Je-li nenormální, pak jsou šikmé projektory. Protože znaménková funkce má v celé komplexní rovině, kromě imaginární osy, nulové derivace, defektní matice (tj. s netriviálními Jordanovými bloky) nepřináší oproti diagonalizovatelným nenormálním maticím, alespoň v teorii, žádné komplikace navíc, jako tomu je u obecné funkce .
Příklad výpočtu
Nechť , a nechť
je zadaná matice a její Jordanův rozklad. Exponenciála této matice je
Nechť , a nechť
je zadaná matice a její Jordanův rozklad. Sinus této matice je
Reference
- Nicholas J. Higham, Function of Matrices. Theory and Computation, SIAM Publications, Philadelphia, PA, 2008
Literatura
- J. Duintjer Tebbens, I. Hnětynková, M. Plešinger, Z. Strakoš, P. Tichý: Analýza metod pro maticové výpočty, základní metody. Matfyzpress 2012. ISBN 978-80-7378-201-6. (Kapitola 2.4, Funkce matic, str. 47-49.)
- G. H. Golub, C. F. Van Loan: Matrix Computations, Third Edition. The Johns Hopkins University Press, Baltimore a Londýn 1992. ISBN 0-8018-5414-8. (Kapitola 11, Functions of Matrices, str. 555-578.)