Maticová funkce

Maticová funkce je matematické zobrazení, která zobrazuje matice na matice. Některé komplexní funkce f {\displaystyle f} , nejčastěji se setkáme s funkcemi

z , sin ( z ) , cos ( z ) , exp ( z ) , log ( z ) a s g n ( z ) := R e ( z ) | R e ( z ) | , {\displaystyle {\sqrt {z}},\quad \sin(z),\quad \cos(z),\quad \exp(z),\quad \log(z)\quad {\text{a}}\quad \mathrm {sgn} (z):={\frac {\mathrm {Re} (z)}{|\mathrm {Re} (z)|}},}

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ť f ( z ) , f : C C {\displaystyle f(z),\,f:\mathbb {C} \rightarrow \mathbb {C} } je funkce komplexní proměnné z {\displaystyle z} , a nechť A {\displaystyle A} je čtvercová matice. Pokud je funkce f ( z ) {\displaystyle f(z)} definovaná a analytická na otevřené množině obsahující spektrum matice matice A {\displaystyle A} , lze funkci zobecnit na f ( A ) , f : C n × n C n × n {\displaystyle f(A),\,f:\mathbb {C} ^{n\times n}\rightarrow \mathbb {C} ^{n\times n}} . Zobecnění lze provést několika různými avšak navzájem ekvivalentními[1] způsoby:

Definice pomocí Jordanova rozkladu

Uvažujme analytickou funkci

f ( z ) = k = 0 ϕ k z k , {\displaystyle f(z)=\sum _{k=0}^{\infty }\phi _{k}z^{k},}

kde suma na pravé straně je Taylorova řada funkce f ( z ) {\displaystyle f(z)} v bodě 0 (která je konvergentní). Pak lze funkci zobecnit na čtvercové matice jednoduše jako

f ( A ) = k = 0 ϕ k A k . {\displaystyle f(A)=\sum _{k=0}^{\infty }\phi _{k}A^{k}.}

Je-li matice A {\displaystyle A} diagonalizovatelná, existuje regulární matice X {\displaystyle X} tak, že

X 1 A X = D = d i a g ( λ 1 , , λ n ) , {\displaystyle X^{-1}AX=D=\mathrm {diag} (\lambda _{1},\ldots ,\lambda _{n}),}

pak

f ( A ) = k = 0 ϕ k ( X D X 1 ) k . {\displaystyle f(A)=\sum _{k=0}^{\infty }\phi _{k}(XDX^{-1})^{k}.}

Protože

( X D X 1 ) 2 = ( X D X 1 ) ( X D X 1 ) = X D 2 X 1 = X d i a g ( λ 1 2 , , λ n 2 ) X 1 , {\displaystyle (XDX^{-1})^{2}=(XDX^{-1})(XDX^{-1})=XD^{2}X^{-1}=X\,\mathrm {diag} (\lambda _{1}^{2},\ldots ,\lambda _{n}^{2})X^{-1},}

pro k = 3 , 4 , 5 , . . . {\displaystyle k=3,4,5,...} platí

( X D X 1 ) k = ( X D X 1 ) ( X D X 1 ) k 1 = ( X D X 1 ) ( X D k 1 X 1 ) = X D k X 1 = X d i a g ( λ 1 k , , λ n k ) X 1 , {\displaystyle (XDX^{-1})^{k}=(XDX^{-1})(XDX^{-1})^{k-1}=(XDX^{-1})(XD^{k-1}X^{-1})=XD^{k}X^{-1}=X\,\mathrm {diag} (\lambda _{1}^{k},\ldots ,\lambda _{n}^{k})X^{-1},}

a tedy

f ( A ) = X ( k = 0 ϕ k d i a g ( λ 1 k , , λ n k ) ) X 1 . {\displaystyle f(A)=X\left(\sum _{k=0}^{\infty }\phi _{k}\,\mathrm {diag} (\lambda _{1}^{k},\ldots ,\lambda _{n}^{k})\right)X^{-1}.}

Velká závorka uprostřed je diagonální matice, obsahující na diagonále shora uvedené Taylorovy řady se z = λ 1 , , λ n {\displaystyle z=\lambda _{1},\ldots ,\lambda _{n}} , tj. právě hodnoty f ( λ p ) , p = 1 , , n {\displaystyle f(\lambda _{p}),\,p=1,\ldots ,n} . Dostáváme tak vztah definující maticovou funkci diagonalizovatelné matice

f ( A ) = X d i a g ( f ( λ 1 ) , , f ( λ n ) ) X 1 . {\displaystyle f(A)=X\,\mathrm {diag} (f(\lambda _{1}),\ldots ,f(\lambda _{n}))X^{-1}.}

Pokud matice není diagonalizovatelná, můžeme použít Jordanův rozklad a situace je jen nepatrně složitější. Existuje regulární matice X {\displaystyle X} tak, že

X 1 A X = J , {\displaystyle X^{-1}AX=J,}

kde matice

J = d i a g ( J 1 , , J m ) , J p = ( λ p 1 λ p 1 λ p 1 λ p ) C n p × n p , p = 1 , , m , {\displaystyle J=\mathrm {diag} (J_{1},\ldots ,J_{m}),\qquad J_{p}=\left({\begin{array}{ccccc}\lambda _{p}&1\\&\lambda _{p}&1\\&&\ddots &\ddots \\&&&\lambda _{p}&1\\&&&&\lambda _{p}\end{array}}\right)\in \mathbb {C} ^{n_{p}\times n_{p}},\quad p=1,\ldots ,m,}

je blokově diagonální, s Jordanovými bloky na diagonále (zřejmě p = 1 m n p = m {\displaystyle \sum _{p=1}^{m}n_{p}=m} ). Analogicky jako v předchozím případě dostaneme vztah definující maticovou funkci

f ( A ) = X d i a g ( f ( J 1 ) , , f ( J m ) ) X 1 , {\displaystyle f(A)=X\mathrm {diag} (f(J_{1}),\ldots ,f(J_{m}))X^{-1},}

kde

f ( J p ) = ( f ( λ p ) f ( λ p ) f ( n p 1 ) ( λ p ) ( n p 1 ) ! 0 f ( λ p ) f ( λ p ) 0 0 f ( λ p ) ) . {\displaystyle f(J_{p})={\begin{pmatrix}f(\lambda _{p})&f'(\lambda _{p})&\cdots &\displaystyle {\frac {f^{(n_{p}-1)}(\lambda _{p})}{(n_{p}-1)!}}\\0&f(\lambda _{p})&\cdots &\vdots \\\vdots &\ddots &\ddots &f'(\lambda _{p})\\0&\cdots &0&f(\lambda _{p})\end{pmatrix}}.}

Definice pomocí Cauchyho integrálu

Nechť je opět f ( z ) , z C {\displaystyle f(z),\,z\in \mathbb {C} } je analytická na otevřené množině Ω {\displaystyle \Omega } obsahující spektrum matice A {\displaystyle A} . Nechť dále Γ {\displaystyle \Gamma } je uzavřená křivka v Ω {\displaystyle \Omega } oddělující od komplexní roviny nějakou část oblasti analyticity obsahující všechna vlastní čísla. Pak

f ( λ p ) = 1 2 π i Γ f ( s ) s λ p d s {\displaystyle f(\lambda _{p})={\frac {1}{2\pi i}}\oint _{\Gamma }{\frac {f(s)}{s-\lambda _{p}}}\,\mathrm {d} s} ,

a

f ( A ) = 1 2 π i Γ f ( s ) ( s I A ) 1 d s . {\displaystyle f(A)={\frac {1}{2\pi i}}\oint _{\Gamma }{f(s)(sI-A)^{-1}}\,\mathrm {d} s.}

Definice pomocí polynomiální interpolace

Definici pomocí Hermiteova interpolačního polynomu nalezneme například v knize.[1]

Pahýl Tato část článku je příliš stručná nebo postrádá důležité informace. Pomozte Wikipedii tím, že ji vhodně rozšíříte.

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 f {\displaystyle f} a na vlastnostech matice A {\displaystyle A} .

  • Při výpočtu odmocniny z pozitivně definitní matice A {\displaystyle {\sqrt {A}}} se používají algoritmy založené na Newtonově metodě.
  • Při výpočtu znaménkové funkce s g n ( A ) {\displaystyle \mathrm {sgn} (A)} 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 f ( A ) {\displaystyle f(A)} , ale stačí znát její akci na konkrétní vektor, tj. f ( A ) v {\displaystyle f(A)v} , nebo dokonce c H f ( A ) b {\displaystyle c^{H}f(A)b} . Často tedy stačí určit vektor délky n {\displaystyle n} , nebo dokonce jen jeden skalár (viz příklad řešení ljapunovské rovnice, případ kdy k n {\displaystyle k\ll n} ). To je klíčové zejména u rozsáhlých úloh. Matice f ( A ) {\displaystyle f(A)} může být hustá i když původní matice A {\displaystyle A} 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 n 2 {\displaystyle n^{2}} 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 f ( A ) v {\displaystyle f(A)v} nebo c H f ( A ) b {\displaystyle c^{H}f(A)b} bez vyčíslování matice f ( A ) {\displaystyle f(A)} se používají speciální postupy a algoritmy.

Pahýl Tato část článku je příliš stručná nebo postrádá důležité informace. Pomozte Wikipedii tím, že ji vhodně rozšíříte.

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

x ˙ = A x , kde x = x ( t ) {\displaystyle {\dot {x}}=Ax,\qquad {\text{kde}}\qquad x=x(t)}

je vektor neznámých. Řešení je vektorový prostor generovaný sloupci matice

exp ( A t ) . {\displaystyle \exp(At).}

Řešení ljapunovské rovnice

Při rozhodování zda je dynamický systém řiditelný nebo pozorovatelný řešíme tzv. ljapunovské rovnice

A X + X A H = B B H , A , X C n × n , B C n × k , {\displaystyle AX+XA^{H}=-BB^{H},\qquad A,X\in \mathbb {C} ^{n\times n},\quad B\in \mathbb {C} ^{n\times k},}

kde matice A {\displaystyle A} je stabilní (tedy R e ( λ ) < 0 , λ s p ( A ) {\displaystyle \mathrm {Re} (\lambda )<0,\,\lambda \in \mathrm {sp} (A)} ). Řešení lze formálně zapsat ve tvaru

X = 0 exp ( A t ) B B H exp ( A H t ) d t , {\displaystyle X=\int _{0}^{\infty }\exp(At)BB^{H}\exp(A^{H}t)\mathrm {d} t,}

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 A {\displaystyle A} nemá žádné ryze imaginární vlastní číslo. Uvažujme dále, pro jednoduchost, že matice je normální, tj. A = X D X H {\displaystyle A=XDX^{H}} . Protože znaménková funkce je v celé komplexní rovině, kromě imaginární osy, analytická, platí

s g n ( A ) = X d i a g ( s g n ( R e ( λ 1 ) ) , , s g n ( R e ( λ n ) ) ) X H . {\displaystyle \mathrm {sgn} (A)=X\,\mathrm {diag} (\mathrm {sgn} (\mathrm {Re} (\lambda _{1})),\ldots ,\mathrm {sgn} (\mathrm {Re} (\lambda _{n})))X^{H}.}

Tedy matice

P = 1 2 ( I s g n ( A ) ) , P + = 1 2 ( I + s g n ( A ) ) {\displaystyle P_{-}={\frac {1}{2}}(I-\mathrm {sgn} (A)),\qquad P_{+}={\frac {1}{2}}(I+\mathrm {sgn} (A))}

jsou ortogonální projektory na podprostory generované vlastními vektory matice A {\displaystyle A} odpovídajícími vlastním číslům se zápornou, resp. kladnou reálnou složkou.

Je-li A {\displaystyle A} nenormální, pak P , P + {\displaystyle P_{-},\,P_{+}} 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 f {\displaystyle f} .

Pahýl Tato část článku je příliš stručná nebo postrádá důležité informace. Pomozte Wikipedii tím, že ji vhodně rozšíříte.

Příklad výpočtu

Nechť f ( z ) = exp ( z ) {\displaystyle f(z)=\exp(z)} , a nechť

A = ( 3 0 1 1 2 1 1 0 1 ) = ( 1 0 0 1 0 1 1 1 0 ) ( 2 1 0 0 2 0 0 0 2 ) ( 1 0 0 1 0 1 1 1 0 ) 1 {\displaystyle A={\begin{pmatrix}3&0&-1\\1&2&-1\\1&0&1\\\end{pmatrix}}={\begin{pmatrix}1&0&0\\1&0&1\\1&-1&0\\\end{pmatrix}}{\begin{pmatrix}2&1&0\\0&2&0\\0&0&2\\\end{pmatrix}}{\begin{pmatrix}1&0&0\\1&0&1\\1&-1&0\\\end{pmatrix}}^{-1}}

je zadaná matice a její Jordanův rozklad. Exponenciála této matice je

exp ( A ) = ( 1 0 0 1 0 1 1 1 0 ) ( e 2 e 2 0 0 e 2 0 0 0 e 2 ) ( 1 0 0 1 0 1 1 1 0 ) = ( 2 e 2 0 e 2 e 2 e 2 e 2 e 2 0 0 ) . {\displaystyle \exp(A)={\begin{pmatrix}1&0&0\\1&0&1\\1&-1&0\\\end{pmatrix}}{\begin{pmatrix}e^{2}&e^{2}&0\\0&e^{2}&0\\0&0&e^{2}\\\end{pmatrix}}{\begin{pmatrix}1&0&0\\1&0&-1\\-1&1&0\\\end{pmatrix}}={\begin{pmatrix}2e^{2}&0&-e^{2}\\e^{2}&e^{2}&-e^{2}\\e^{2}&0&0\\\end{pmatrix}}.}

Nechť f ( z ) = sin ( z ) {\displaystyle f(z)=\sin(z)} , a nechť

A = ( π 6 + 2 4 1 π 6 2 ) = ( 2 1 1 0 ) ( π 6 1 0 π 6 ) ( 2 1 1 0 ) 1 , {\displaystyle A={\begin{pmatrix}{\frac {\pi }{6}}+2&4\\-1&{\frac {\pi }{6}}-2\end{pmatrix}}={\begin{pmatrix}2&1\\-1&0\end{pmatrix}}{\begin{pmatrix}{\frac {\pi }{6}}&1\\0&{\frac {\pi }{6}}\end{pmatrix}}{\begin{pmatrix}2&1\\-1&0\end{pmatrix}}^{-1},}

je zadaná matice a její Jordanův rozklad. Sinus této matice je

sin ( A ) = ( 2 1 1 0 ) sin ( π 6 1 0 π 6 ) ( 0 1 1 2 ) = ( 2 1 1 0 ) ( sin π 6 cos π 6 0 sin π 6 ) ( 0 1 1 2 ) = ( 1 2 + 3 2 3 1 2 3 1 2 3 ) . {\displaystyle \sin(A)={\begin{pmatrix}2&1\\-1&0\end{pmatrix}}\sin {\begin{pmatrix}{\frac {\pi }{6}}&1\\0&{\frac {\pi }{6}}\end{pmatrix}}{\begin{pmatrix}0&-1\\1&2\end{pmatrix}}={\begin{pmatrix}2&1\\-1&0\end{pmatrix}}{\begin{pmatrix}\sin {\frac {\pi }{6}}&\cos {\frac {\pi }{6}}\\0&\sin {\frac {\pi }{6}}\end{pmatrix}}{\begin{pmatrix}0&-1\\1&2\end{pmatrix}}={\begin{pmatrix}{\frac {1}{2}}+{\sqrt {3}}&2{\sqrt {3}}\\-{\frac {1}{2}}{\sqrt {3}}&{\frac {1}{2}}-{\sqrt {3}}\end{pmatrix}}.}

Reference

  1. a b 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.)

Související články

  • Funkce
  • Matice
Pahýl
Pahýl
Tento článek je příliš stručný nebo postrádá důležité informace.
Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty.
Autoritní data Editovat na Wikidatech