Numerické metody pro nalezení



Podobné dokumenty
VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

a vlastních vektorů Příklad: Stanovte taková čísla λ, pro která má homogenní soustava Av = λv nenulové (A λ i I) v = 0.

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

Vlastní čísla a vlastní vektory

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Arnoldiho a Lanczosova metoda

Definice 13.1 Kvadratická forma v n proměnných s koeficienty z tělesa T je výraz tvaru. Kvadratická forma v n proměnných je tak polynom n proměnných s

1 Linearní prostory nad komplexními čísly

M5960 Vybrané partie z aplikované matematiky seminář QR- -ROZKLAD

2. Schurova věta. Petr Tichý. 3. října 2012

FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci

Dnešní látka Opakování: normy vektorů a matic, podmíněnost matic Jacobiova iterační metoda Gaussova-Seidelova iterační metoda

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

0.1 Úvod do lineární algebry

Aplikovaná numerická matematika - ANM

0.1 Úvod do lineární algebry

vyjádřete ve tvaru lineární kombinace čtverců (lineární kombinace druhých mocnin). Rozhodněte o definitnosti kvadratické formy κ(x).

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

z = a bi. z + v = (a + bi) + (c + di) = (a + c) + (b + d)i. z v = (a + bi) (c + di) = (a c) + (b d)i. z v = (a + bi) (c + di) = (ac bd) + (bc + ad)i.

stránkách přednášejícího.

Základy maticového počtu Matice, determinant, definitnost

Co je obsahem numerických metod?

DEFINICE Z LINEÁRNÍ ALGEBRY

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

12. Determinanty. 12. Determinanty p. 1/25

Podobnostní transformace

Připomenutí co je to soustava lineárních rovnic


Úlohy nejmenších čtverců

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

Necht tedy máme přirozená čísla n, k pod pojmem systém lineárních rovnic rozumíme rovnice ve tvaru

Soustavy lineárních rovnic-numerické řešení. October 2, 2008

Operace s maticemi. 19. února 2018

Zdrojem většiny příkladů je sbírka úloh 1. cvičení ( ) 2. cvičení ( )

1 Vektorové prostory.

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

Numerické metody a programování. Lekce 4

Vlastní číslo, vektor

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

Interpolace, ortogonální polynomy, Gaussova kvadratura

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

Soustavy lineárních rovnic-numerické řešení

Matematika B101MA1, B101MA2

Lineární algebra : Skalární součin a ortogonalita

1 Řešení soustav lineárních rovnic

1 0 0 u 22 u 23 l 31. l u11

Numerické metody lineární algebry

1 Projekce a projektory

Všechno, co jste kdy chtěli vědět o maticích, ale báli jste se zeptat

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

Symetrické a kvadratické formy

Lineární algebra : Vlastní čísla, vektory a diagonalizace

EUKLIDOVSKÉ PROSTORY

11. Skalární součin a ortogonalita p. 1/16

Iterační metody řešení soustav lineárních rovnic. 27. prosince 2011

AVDAT Vektory a matice

15 Maticový a vektorový počet II

8 Matice a determinanty

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?

4. Trojúhelníkový rozklad p. 1/20

1 Polynomiální interpolace

Singulární rozklad. Petr Tichý. 31. října 2013

Numerické řešení nelineárních rovnic

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

Vlastní čísla a vlastní vektory

Lineární algebra. Matice, operace s maticemi

Soustavy lineárních rovnic

1 Mnohočleny a algebraické rovnice

Numerické metody lineární algebry

[1] Motivace. p = {t u ; t R}, A(p) = {A(t u ); t R} = {t A( u ); t R}

Lineární algebra : Skalární součin a ortogonalita

Věta o dělení polynomů se zbytkem

P 1 = P 1 1 = P 1, P 1 2 =

Definice : Definice :

2 Vektorové normy. Základy numerické matematiky - NMNM201. Definice 1 (Norma). Norma je funkcionál splňující pro libovolné vektory x a y a pro

Riemannův určitý integrál

Vlastní čísla a vlastní vektory

Numerická matematika 1

Cvičení 5 - Inverzní matice

Numerické metody a programování

Základy matematiky pro FEK

Operace s maticemi

Ortogonální transformace a QR rozklady

Numerické řešení soustav lineárních rovnic

1 Mnohočleny a algebraické rovnice

Soustavy lineárních diferenciálních rovnic I. řádu s konstantními koeficienty

Determinanty. Obsah. Aplikovaná matematika I. Pierre Simon de Laplace. Definice determinantu. Laplaceův rozvoj Vlastnosti determinantu.

Základy matematické analýzy

7 Ortogonální a ortonormální vektory

DRN: Soustavy linárních rovnic numericky, norma

Lineární algebra : Metrická geometrie

CHARAKTERISTICKÉ VEKTORY

Soustavy linea rnı ch rovnic

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

5. Lokální, vázané a globální extrémy

Matice. a m1 a m2... a mn

Matematika III. Miroslava Dubcová, Daniel Turzík, Drahoslava Janovská. Ústav matematiky

Kapitola 11: Vektory a matice 1/19

Transkript:

Masarykova univerzita Brno Fakulta přírodovědecká Katedra aplikované matematiky Numerické metody pro nalezení vlastních čísel matic Diplomová práce květen 006 Alena Baštincová

Poděkování V úvodu bych ráda poděkovala vedoucí diplomové práce Prof. RNDr. Ivaně Horové, CSc. z katedry aplikované matematiky PřF MU v Brně za pečlivé přečtení textu, cenné rady, připomínky k práci a za trpělivost. Dále bych chtěla poděkovat svým rodičům za veškerou podporu, které se mi v průběhu studia dostalo.

Prohlášení Čestně prohlašuji, že jsem svou diplomovou práci vypracovala samostatně a použila jsem pouze uvedenou literaturu. V Brně dne 0. května 006

Obsah 1 Základní kapitola 7 Typy metod pro hledání vlastních čísel 8 3 Klasické metody určení koeficientů charakteristického polynomu 10 3.1 Krylovova metoda................................. 10 3. Faddějevova-Leverrierova metoda........................ 11 4 Poloha a odhad vlastních čísel 13 4.1 Geršgorinovy věty................................. 13 5 Metody výpočtu dominantního vlastního čísla 17 5.1 Mocninná metoda................................. 17 5. Metoda Rayleighova podílu........................... 0 5.3 Výpočet dalších vlastních čísel mocninnou metodou.............. 6 Metody pro výpočet vlastních čísel a vlastních vektorů symetrických matic 4 6.1 Jacobiho metoda................................. 4 6. Householderova matice zrcadlení......................... 3 6.3 Givensova-Householderova metoda....................... 35 6.3.1 Householderova metoda......................... 35 6.3. Givensova metoda............................ 37 6.4 QR-rozklad.................................... 40 6.5 Konstrukce QR-rozkladu............................. 40 6.5.1 QR-rozklad pomocí Gram-Schmidtova algoritmu............ 40 6.5. QR-rozklad pomocí Householderovy matice.............. 4 6.5.3 QR-rozklad pomocí Givensovy matice.................. 46 6.5.4 Srovnání algoritmů............................ 48 6.5.5 QR-rozklad a vlastní čísla matice A QR-algoritmus......... 49 7 Podmíněnost problému vlastních čísel 51 7.1 Globální číslo podmíněnosti........................... 51 7. Odhad chyby vypočítaného vlastního čísla................... 5 7.3 Relativní chyba vypočítaného vlastního čísla.................. 53 4

Úvod Cílem mé diplomové práce je popsat numerické metody pro nalezení vlastních čísel matic. Vlastní čísla a vlastní vektory mají velmi široké spektrum aplikací, například se používají při hledání řešení diferenciálních rovnic a jejich soustav a to jak u obyčejných difarenciálních rovnic, tak u parciálních diferenciálních rovnic a jejich soustav. Totéž platí i pro diferenční rovnice a jejich soustavy. Mnohé technické problémy se dají popsat pomocí diferenciálních nebo diferenčních rovnic a jejich soustav, jako například popis obvodů v elektrotechnice.pokud má obvod větší počet prvků, dostáváme soustavu diferenciálních rovnic vyššího řádu. Pro jejich řešení potřebujeme znát vlastní čísla matice soustavy. Odtud je zřejmá duležitost úlohy o nalezení vlastních čísel matice. Přímé metody hledání vlastních čísel jsou mnohdy neefektivní a proto je nutné řešit tuto úlohu numericky. Při numerickém řešení se sice dopouštíme určité chyby, ale současně se dostaneme k řešení, alespoň přibližnému, v relativně kratším čase s požadovanou přesností. Ve své práci nejdříve definuji základní pojmy, nevěnuji se přímým metodám výpočtu vlastních čísel a zabývám se numerickými metodami jejich určení. Postupně uvádím řadu způsobů nalezení vlastních čísel a jim příslušným vlastním vektorům. Nejdříve uvádím klasické metody určení kořenů charakteristického polynomu, dále se věnuji odhadu polohy vlastních čísel, poté následují metody výpočtu dominantního vlastního čísla. Nejvíce místa věnuji metodám pro výpočet vlastních čísel symetrických matic. Závěrečná kapitola je věnována problému podmíněnosti vlastních čísel. Nevěnovala jsem se rozboru jednotlivých algoritmů při jejich zpracování na počítači, protože tato problematika závisí na volbě programovacího jazyka a softwarovém vybavení počítače. 5

Označení N množina přirozených čísel Z množina celých čísel R množina reálných čísel C množina komplexních čísel p n (x) polynom n-tého stupně proměnné x A m,n matice typu m,n (s m řádky a n sloupci) A = (a ij ) matice s prvky a ij I jednotková matice e i jednotkový vektor s 1 na i-tém místě O nulová matice o nulový vektor det A = A determinant matice A A 1 matice inverzní k matici A hod (A) hodnost matice A tr(a) stopa matice A ρ(a) spektrální poloměr matice A A H matice hermitovsky sdružená, tj.a H = ĀT (R n, +,.) vektorový prostor všech uspřádaných n-tic dimp dimenze prostoru P. <, > standardní skalární součin x norma vektoru x x eukleidovská norma vektoru x A norma matice A A euklidovská norma matice A A krychlová norma matice A konec důkazu 6

Kapitola 1 Základní kapitola Definice 1.0.1. Necht A je čtvercová matice řádu n. Její vlastní čísla λ 1,...,λ n jsou kořeny rovnice det(a λi) = 0, zvané charakteristická rovnice. Ke každému vlastnímu číslu λ i existuje aspoň jedno nenulové řešení soustavy rovnic Ax = λ i x. Toto řešení x i, kde x T i = (x (1) i,x () i,...,x (n) i ), nazveme pravým vlastním vektorem matice A. (Všude v dalším bude pojem vlastní vektor značit výhradně pravý vlastní vektor.) Levý vlastní vektor y i odpovídající vlastnímu číslu λ i je řešením rovnice y T A = λ i y T. Levý vlastní vektor matice A je tedy vlastním vektorem transponované matice A T a snadno lze ukázat, že odpovídá-li levý vlastní vektor y k vlastnímu číslu λ k a pravý vlastní vektor x i vlastnímu číslu λ i a platí λ k λ i jsou vektory y k a x i ortogonální. (Ve většině dále uvedených příkladů se budou vyskytovat reálné matice, budeme předpokládat, pokud nebude řečeno jinak, že matice A je reálná. Mnohé věty budou však platit i pro komplexní matice nebo budeme-li předpokládat symetrii, pro hermitovské matice, (důkazy následujících vět viz. [8]). Věta 1.0.1. Jsou-li λ 1,...,λ n vlastní čísla matice A, má matice A k vlastní čísla λ k 1,...,λ k n. Obecněji, je-li p(x) libovolný polynom, má matice p(a) vlastní čísla p(λ 1 ),...,p(λ n ). Věta 1.0.. Je-li matice A reálná a symetrická, jsou všechna její vlastní čísla a všechny příslušné vlastní vektory reálné. Kromě toho vlastní vektory příslušné různým vlastním číslům jsou ortogonální a levý vlastní vektor a pravý vlastní vektor příslušné témuž vlastnímu číslu jsou si rovny. Věta 1.0.3. Podobnostní transformace PAP 1 nemění vlastní čísla matice A. Věta 1.0.4. (Cayley-Hamilton) Necht je f(λ) = det(a λi) = 0 charakteristická rovnice matice A. Pak platí f(a) = 0. Věta 1.0.5. Vlastní čísla horní (dolní) trojúhelníkové matice jsou prvky na její diagonále. Věta 1.0.6. Libovolná matice A je podobná diagonální matici D právě tehdy, když má matice Akompletní soubor n lineárně nezávislých vlastních vektorů. 7

Kapitola Typy metod pro hledání vlastních čísel Podle základní definice víme, že vlastní čísla dané matice jsou kořeny jejího charakteristického polynomu. Z algebraické teorie víme, že kořeny polynomu stupně n > 4 nemůžeme algebraicky (tj. pomocí operací ±,,, ) vyjádřit ve tvaru vzorce. Proto se obecně nedají získat vlastní čísla přesně ( až na zaokrouhlovací chyby) po konečném počtu operací. K řešení našeho problému můžeme přistupovat více způsoby. 1. Použijeme-li libovolnou metodu na hledání kořenů charakteristického polynomu p(λ). Pro jednoduchý kořen můžeme použít Newtonovu metodu c i+1 = c i p(c i )/p (c i ) i = 1,,..., při vhodné volbě počáteční aproximace c 0, metodu sečen, metodu půlení intervalu atd. Modifikovaná Newtonova metoda se dá použít i na hledání násobných kořenů. V případě komplexně sdružené dvojice kořenů můžeme použít např. Bairstowovu metodu. Hledání velkého počtu kořenů tímto způsobem je však dost náročné a problém bývá nestabilní.. Získání vlastních čísel bez znalostí charakteristického polynomu, při využívání vlastností podobných matic. Cílem je najít podobnou matici v jednodušším tvaru, ze kterého se dá vlastní číslo určit (například z diagonální nebo trojúhelníkové matice). Takovou matici (někdy jen některé její vlastní číslo) můžeme získat jako limitu posloupnosti podobnostních transformací. Výběr těchto transformací bývá založen na speciálních vlastnostech matic a jejich vlastních vektorů. 3. Nelineární přístup, vlastní problém (A λi)x = 0 uvažujeme jako soustavu n rovnic pro n + 1 neznámých x 1,...,x n,λ, kterou doplníme normovanou podmínkou například x i = 1 na soustavu n + 1 nelineárních rovnic. Tato soustava se dá řešit například Newtonovou metodou. Přitom se však nevyužívají algebraické vlastnosti soustavy, které můžou výpočet značně ulehčit. Proto je tento postup značně neefektivní. Poznámka.0.1. Pod pojmem úplný problém vlastních čísel se rozumí úloha najít všechna vlastní čísla a případně i příslušné vlastní vektory. 8

Pojem částečný problém vlastních čísel znamená najít jedno nebo více vlastních čísel spolu s příslušnými vlastními vektory. Úplný a částečný problém vystupují jako naprosto odlišné úlohy nejen oborem aplikací, ale i metodami řešení. Řešení úplného problému je náročnější. Neexistuje univerzální algoritmus, který by byl stejně efektivní pro všechny typy matic. 9

Kapitola 3 Klasické metody určení koeficientů charakteristického polynomu Dříve se většina metod na výpočet vlastních čísel zakládala právě na výpočtu koeficientů charakteristického polynomu. Jejich výpočet pomocí součtu hlavních minorů je však nerentabilní. Existují mnohem jednodušší metody na určení koeficientů, které mají stejný charakter (tj. při výpočtu bez zaokrouhlování získáme po konečném počtu kroků přesné koeficienty). Zaokrouhlovací chyby však můžou vypočítané koeficienty hodně oddálit od jejich přesných hodnot. Proto se tyto metody moc nepoužívají. 3.1 Krylovova metoda Charakteristickou rovnici můžeme zapsat ve tvaru Z Cayleyovy Hamiltonovy věty plyne Tedy pro každý vektor y platí n 1 p(λ) = λ n + b i λ i = 0. i=0 n 1 A n + b i A i = 0. i=0 n 1 A n y + b i A i y = O. (3.1) Rovnice (3.1) je soustava n lineárních rovnic pro n neznámých b 0,...,b n 1. i=0 Poznámka 3.1.1. K výpočtu vektoru A i y podle rovnice A i y = A(A i 1 y) je třeba n násobení, takže k sestavení soustavy (3.1) je třeba řádově n 3 operací. 10

3. Faddějevova-Leverrierova metoda Metoda se opírá o fakt, že součet vlastních čísel libovolné matice je roven její stopě. Algoritmus Faddějěvovy-Leverrierovy metody počítá jednoduchým způsobem kořeny charakteristické rovnice. Algoritmus 1. Je dána matice A řádu n. Krok 1: Položme B 1 = A pak p 1 = tr(b 1 ) Krok : B = A(B 1 p 1 I) a p = 1 tr(b ). Krok n: B n = A(B n 1 p n 1 I) a p n = 1 n tr(b n) Krok n+1: Charakteristický polynom je ve tvaru p(λ) = λ n p 1 λ n 1... p n 1 λ p n. Poznámka 3..1. Pro inverzní matici A 1 platí A 1 = 1 p n (B n 1 p n 1 I). Poznámka 3... Důkazy konvergence popsaných metod v této kapitole a analýzu chyb můžeme najít v literatuře, viz.[1],[10]. Příklad 3..1. Najděte koeficienty charakteristického polynomu užitím F.-L. metody pro matici 8 1 3 1 A = 1 6 0 3 9 1. 1 0 1 7 B 1 = A tr(b 1 ) = 30 p 1 = 30, 165 4 18 B = A(B 1 30I) = 139 33 3 4 33 175 17 18 3 17 159 p = 1 tr(b ) = 1 ( 638) = 319,, B 3 = A(B + 319I) = 1066 106 146 70 106 99 13 34 146 13 1087 67, 70 34 67 1085 p 3 = 1 3 tr(b 3) = 1 430 = 1470, 3 B 4 = A(B 3 1410I) = 138 0 0 0 0 138 0 0 0 0 138 0 0 0 0 138 11

p 4 = 1 tr(b 4) = 1 ( 855) = 138, 4 p(λ) = λ 4 30λ 3 + 319λ 1410λ + 138. Poznámka 3..3. F.-L. metoda je i přes jednoduchý algoritmus méně výhodná než Krylovova metoda, protože vyžaduje skutečně počítat matice A k pro k = 1,...,n. 1

Kapitola 4 Poloha a odhad vlastních čísel 4.1 Geršgorinovy věty Přesná znalost vlastních čísel dané matice nás v některých praktických aplikacích nemusí zajímat a stačí znát polohu vlastních čísel v určitých oblastech komplexní roviny. Tyto informace můžeme získat i bez přímých výpočtů vlastních čísel dané matice. K nalezení polohy vlastních čísel lze použít následující větu. Věta 4.1.1. Geršgorinova věta Necht A = {a ij } je čtvercová matice řádu n. Definujme r i := j=1,j i a ij, i = 1,...,n. (4.1) Potom každé vlastní číslo λ matice A splňuje aspoň jednu z následujících nerovností λ a ii r i, i = 1,...,n. (4.) Jinými slovy, všechna vlastní čísla matice A leží v oblasti n K = R i, (4.3) kde R i jsou kruhy o poloměru r i a středu a ii. i=1 Důkaz. Necht λ je vlastní číslo matice A a x je vlastní vektor odpovídajíci vlastnímu číslu λ. Potom ze vztahu Ax = λx nebo ze vztahu (A λi) = 0 dostaneme (λ a ii )x i = a ij x j, j=1,j i i = 1,...,n kde x i je i-tý prvek vektoru x. Necht x k je největší prvek vektoru x (v absolutní hodnotě). Protože x j / x k 1 pro j k, je λ a kk a kj ( x j / x k ) a kj. (4.4) j=1 j=1,j k Tedy λ leží v kruhu {λ : λ a kk r k }. 13

Definice 4.1.1. Kruhy R i := {z : z a ii r i }, i = 1,...,n, se nazývají Geršgorinovy kruhy v komplexní rovině. Poznámka 4.1.1. Věta nám nezaručuje, že v každém kruhu bude nějaké vlastní číslo, pouze nám říká, že vlastní čísla matice A leží ve sjednocení Geršgorinových kruhů. Následující věta polohu vlastních čísel upřesňuje. Věta 4.1.. Geršgorinova zobecněná věta Necht r Geršgorinových kruhů je disjunktních. Pak právě r vlastních čísel matice A leží ve sjednocení těchto kruhu. Důkaz. V důkazu této věty se používa vlastností z komplexní analýzy, viz []. Poznámka 4.1.. Určení polohy vlastního čísla dané matice pomocí Geršgorinových vět je poměrně jednoduché. Pro zajímavost uvedeme ještě jednu větu, která sice také určuje polohu vlastních čísel, ale její použití je už složitějsí a v určitých příkladech nepraktické. Věta 4.1.3. Necht A je čtvercová (obecně komplexní) matice n-tého řádu, necht α je (komplexní) číslo, pro které stopa matice tr((αi A) 1 ) 0. Pak v každém uzavřeném kruhu obsahujícim číslo α a α, kde n α = α tr((αi A) 1 ), leží alespoň jedno vlastní číslo matice A. n (α α) Definujme r =, pak v kruhu o středu a poloměru r leží alespoň tr((αi A) 1 ) jedno vlastní číslo matice A. Poznámka 4.1.3. Tato věta není obecně známa a vyplýva z vět o kořenech polynomiální rovnice.důkaz viz.[9] Příklad 4.1.1. Užitím Geršgorinových vět určete přibližnou polohu vlastních čísel komlexní matice 1 1/ 1/4 1/4 1/4 1 + i 0 1/4 1/ 1/4 1 1/ 1/4 1/ 1/ i Řešení 1. r 1 = n i=1,i 1 a 1i = 1/ + 1/4 + 1/ = 1 r = n i=1,i a i = 1/4 + 0 + 1/4 = 1/ r 3 = n i=1,i 3 a 3i = 1/ + 1/4 + 1/ = 5/4 r 4 = n i=1,i 4 a 4i = 1/4 + 1/ + 1/ = 5/4 R 1 = {z : z 1} R = {z : z 1 i 1/} R 3 = {z : z + 1 5/4} R 4 = {z : z + + i 5/4} 14

R R 3 R 1 1 - -1 0 1-1 - R 4 Obrázek 4.1: Geršgorinovy kruhy Podle Geršgorinových vět tedy leží jedno vlastní číslo v kruhu R 1, jedno v kruhu R a zbylá dvě ve sjednocení kruhů R 3 R4. viz obr(4.1). Uved me přesnou hodnotu vlastních čísel: λ 1 = 1.985 i0.0446 λ = 1.0063 + i.0678 λ 3 = 0.9079 i0.0855 λ 4 =.069 i1.9377 což přesně odpovídá poloze určené pomocí Geršgorinových kruhů. Poznámky ke Geršgorinově větě 1. Ze vztahu (4.4) pro maximální souřadnici x i můžeme získat odhad λ i a ii j i a ij min( a kk a kj ) k j i a min λ i ( a ii a ij ). i j i Pro matici s převládající diagonálou platí 0 < min( a ii i j i a ij ) λ i max i a ij = A j i 15

. K matici A můžeme pomocí jednoduché podobnostní transformace D 1 AD = B (D je diagonální) získat podobnou matici B, která má jiné Geršgorinovy kruhy. Potom všechna vlastní čísla leží v oblasti K A K B. Cílem těchto transformací je rozklad oblasti K na souvislé komponenty, případná izolace jednoho kruhu, ve kterém pak můžeme zaručit existenci právě jednoho vlastního čísla. 3. Pokud det(λi A) = det(λi A T ), můžeme vytvořit Geršgorinovy kruhy i pro matici A T a získat oblast K A K A T.,ve které vlastní čísla leží. ( ) ( ) 3 3 Příklad 4.1.. Matice A 1 = resp. A 1 1 = mají stejné oblasti K 1 1 A1 = K A := K A. Na obr. vidíme, že v případě matice A, žádný z malých kruhů neobsahuje vlastní číslo. Obrázek 4.: Použité značení: Hranice oblasti K A je značena přerušovaně Hranice oblasti K A T je značena plnou čarou Šedou barvou je značena hranice oblasti K A K A T vlastní čísla A 1 λ 1, = ± 3 vlatní čísla A λ 1, = ± i 16

Kapitola 5 Metody výpočtu dominantního vlastního čísla Úmluva: Očíslujeme-li vlastní čísla dané matice A tak, aby platilo λ 1 λ... λ n (každé číslo píšeme tolikrát, kolik činí jeho násobnost), pak budeme vlastní číslo λ 1 nazývat dominantní vlastní číslo. 5.1 Mocninná metoda Mocninná metoda je nejčastěji používanou metodou pro nalezení dominantního vlastního čísla a příslušného vlastního vektoru dané matice. Metoda je obzvlaště vhodná pro řídké matice, protože spočívá pouze v násobení sloupcových vektorů dané matice. Základní předpoklad k užití této metody je, že daná matice má dominantní vlastní číslo λ 1 a že nemá nelineární elementární dělitele, tj. že existuje n lineárně nezávislých vlastních vektorů této matice, kde n je řád matice. Konstrukce: Necht x je libovolný vektor, x R n, za předpokladu, že {v 1,...,v n } je množina lineárně nezávislých vlastních vektorů, můžeme vektor x vyjádřit jako lineární kombinaci vektorů v i,i = 1,...,n x = α i v i. (5.1) i=1 Násobením obou stran rovnice (5.1) maticemi A,A,...,A k dostaneme systém rovnic Ax = α i Av i = α i λ i v i, A x = A k x = i=1 α i A v i = i=1 α i A k v i = i=1 17 i=1 α i λ iv i, (5.) i=1. α i λ k iv i. i=1

Pro λ k 1, které jsme vypočítali ze systému (5.), dostáváme A k x = λ k 1 i=1 α i ( λ i λ 1 ) k v i. Z předpokladu, že λ 1 je dominantní vlastní číslo a tedy λ 1 > λ j j =,...,n, plyne, že lim (λ j ) k = 0 k λ 1 a tedy lim k Ak x = lim λ k k 1α 1 v 1. (5.3) Tento postup bude konvergovat k nule, jestliže λ 1 < 1 a divergovat, jestliže λ 1 1, ovšem za předpokladu, že α 1 0. Poznámka 5.1.1. Popsaná konstrukce je i důkazem následující věty. Věta 5.1.1. Von Mises Jestliže matice A má n lineárně nezávislých vektorů a je-li vlastní číslo λ 1 dominantní a pro vektor x 0 R n platí, že x 0,v 1 0.Pak x 0 lim k (Ak ) = α 1 v 1. (5.4) λ k 1 Důsledek 5.1.1. Je-li y libovolný vektor, který není ortogonální k vlastnímu vektoru v 1, plyne z věty 5.1.1,že λ 1 = lim k ( yt x k+1 y T x k ), kde x k+1 = Ax k = A k x 0. Definice 5.1.1. Čísla yt x k+1 = y T Ax k se nazývají Schwarzovými konstantami. Algoritmus. Je zadána matice A Krok 1: Zvolíme x 0 Krok : Použijeme iterační formuli x k+1 = Ax k Krok 3: x k+1 = max{ x k+1 (j) x (j) λ k+1 } 1 = max j=1,...,n { x j n }. Krok n: Zastavení výpočtu po n krocích λ (j) 1 = max j=1,...,n { x (j) n } nebo zastavení výpočtu pro λ (k+1) 1 λ (k) 1 < δ. 18

Poznámka 5.1.. Nejčastější volbou počátečního vektoru x 0 je vektor x 0 = (1,...,1) T. Příklad 5.1.1. Najděte dominantní vlastní číslo matice 4 3 3 0 4 1 3 A = 1 5 0 4 6 0 1. 3 6 5 1 Řešení. Zvolíme x 0 = (1, 1, 1, 1, 1) T x 1 = Ax 0 = 13 11 1 11, 17 λ(1) 1 = 17 x 1 = 0.7647 0.6471 0.7059 0.6471, 1 x = Ax 1 = 9.7647 8.7647 9.588 7.7059, 1.359 λ() 1 = 1.359 x = 0.7905 0.7095 0.776 0.638, 1 0.7731 0.6957 x 10 = 0.7735 0.615, 1 Vlastní čísla matice A jsou x 11 = Ax 10 = 10.085 9.047 10.0307 7.9454, 1.97 λ(11) 1 = 1.97. λ 1 = 1.97,λ = 3.8755,λ 3 = 3.0794,λ 4 = 0.097 i0.0164. Takže je vidět,že po jedenácti krocích jsme dostali přesné řešení zadaného příkladu. 19

Příklad 5.1.. Pro matici A = 1.5 0.4 3 0.86 0.5 1.5 1.5 však metoda nebude konvergovat, protože číselné hodnoty budou oscilovat. λ 1 =.13746 λ,3 = 0.8617 ± i.5118 λ,3 =.66 Absolutní hodnoty vlastních čísel jsou si rovny a tedy mocninná metoda nedokáže určit dominantní vlastní číslo. Poznámka 5.1.3. Nevýhody mocninné metody: odhad chyby konvergence (obvykle v praxi nevíme, zda jsou splněny předpoklady mocninné metody) volba x 0 (bude-li vektor x 0 takovou lineární kombinací vlastních vektorů, že koeficient u vlastního vektoru odpovídajícího dominantnímu vlastnímu číslu bude roven 0, potom mocninná metoda nevypočte dominantní vlastní číslo). Poznámka 5.1.4. Rychlost konvergence mocninné metody závisí hlavně na volbě vektoru x 0 a na velikosti podílu λ λ 1. 5. Metoda Rayleighova podílu Metoda Rayleighova podílu je modifikovanou mocninnou metodou a zaměřuje se na výpočet dominantního vlastního čísla symetrické matice. Pro tuto část tedy budeme vždy předpokládát, že matice A je symetrická. Potom vlastní vektory musí být ortonornální (tj. v T i v j = 0 pro i j, v T i v i = 1). Odvození: 1. Zvolíme x 0 jako lineární kombinaci vlastních vektorů x 0 = α i v i. i=1. Sestrojíme posloupnost x k = Ax k 1, x k = A k x 0, x k = α 1 A k v 1 +... + α n A k v n. 0

3. Platí Av i = λ i v i, potom x k = α 1 λ k 1v 1 + α λ k v +... + α n λ k nv n, kde λ 1 je dominantní vlastní číslo. 4. Dostaneme x k = λ k 1[α 1 v 1 + i= α i ( λ i λ 1 )v i ]. Sumu n i= α i( λ i λ 1 )v i ] definujme jako w k, w k o. 5. Analogicky x k+1 6. Vyjádříme součin x T k x k, x T kx k = λ k 1[α 1 v 1 + i= α i ( λ i λ 1 )v T i ]λ k 1[α 1 v 1 + i= λ k 1 [α 1 + w T kw k ] α i ( λ i λ 1 )v i ] = λ k 1 [α 1 + i= α i( λ i λ 1 ) k ] = a součin x T k x k+1 Dostáváme x T kx k+1 = λ k 1[α 1 v T 1 + λ k+1 1 [α 1 + x T k lim Ax k k x T k x k i= i= α i ( λ i λ 1 ) k v T i ]λ k+1 1 [α 1 v 1 + i= α i( λ i λ 1 ) k+1 ] = λ k 1 [α 1 + w T kw k+1 ]. = lim k x T k Ax k+1 x T k x k = λk+1 λ k α i ( λ i λ 1 ) k+1 v i ] = 0 { }} { w T kw k+1 ) 1 (α1 + 1 (α1 + w T } kw {{ k+1 ) } 0 = λ 1. Poznámka 5..1. Součin w T k w k konverguje k nule pro k dvakrát rychleji než w k k nulovému vektoru, z toho vyplývá, že metoda Raleighova podílu bude rychlejší než mocninná metoda. Příklad 5..1. Metodou Rayleighova podílu určete dominantní vlastní číslo matice 1 1 0 A = 1 1 1. 0 1 1 1

Řešení 3. x 0 = (1 1 1) T Vlastní čísla matice A jsou x 1 = Ax 0 = 3, λ (1) 1 = xt 0x 1 =.3333, x T 0x 0 5 x = Ax 1 = 7, λ () 1 = xt 1x =.4118, x 5 T 1x 1 1 x 3 = Ax = 17, λ (3) 1 = xt x 3 =.414. x 1 T x λ 1 =.414,λ = 1,λ 3 = 0.414. Tedy už po třech krocích jsme dostali přesné řešení. 5.3 Výpočet dalších vlastních čísel mocninnou metodou Pokud již známe vlastní číslo λ 1 matice A a k němu příslušný vlastní vektor v 1, můžeme vypočítat následující vlastní číslo λ a vlastní vektor v opět mocninnou metodou, kterou použijeme na redukovanou matici. Věta 5.3.1. O redukci Necht λ 1 0 je vlastní číslo matice A s vlastním vektorem v 1 a vektor x je libovolný vektor s vlastností x T v 1 = 1. Potom vlastní čísla matice B = A λ 1 v 1 x T jsou 0,λ,...,λ n (kde λ 1,λ,...,λ n jsou vlastní čísla matice A). Důkaz. Necht J = V 1 AV = λ 1 δ 1 0 0 0 λ δ......,...... δ n 1 0 0 0... λ n je Jordanův tvar matice, kde δ i {0, 1}, i = 1,...,n 1. Jsou-li v 1,...,v n sloupce matice V, potom matice C = V 1 BV má tvar C = J λ 1 V 1 v 1 x T V = J λ 1 e 1 (x T v 1,...,x T v n ) =

( ) 1 x = J λ T v...x T v n 1 = 0 1,n 1 0 n 1,n 1 0 δ 1 λ 1 x T v λ 1 x T v 3 λ 1 x T v n 0 λ δ 0 =........ 0........ δ n 1 0 0 0... λ n což větu dokazuje (vlastní čísla jsou na diagonále). Výběr vektoru x: Věta o redukci zaručuje široký výběr vektoru x. Např. 1. Wielandtova redukce Výhoda této metody je v tom, že v každé další fázi pracujeme s menší maticí a provádíme méně výpočtů. Položíme x = 1 λ 1 v j 1r T j kde r j je j-tý řádek matice A a v j 1 0. Index j vybereme tak, aby odpovídal největší složce vektoru x.. Hotellingova redukce Zde položíme x = y 1, kde y 1 je levý vlastní vektor k λ 1 a je normalizován, tak, že platí y T 1 x = 1. Protože y 1 obvykle neznáme, používá se tato metoda nejsnadněji u symetrických matic, v tomto případě je x i = v i. 3

Kapitola 6 Metody pro výpočet vlastních čísel a vlastních vektorů symetrických matic 6.1 Jacobiho metoda Jacobiho metoda může najít všechna vlastní čísla a jim odpovídající vlastní vektory symetrické matice A. Metoda je vhodná hlavně pro plné matice. Necht A je symetrická, potom existuje ortonormální báze složená z vlastních vektorů A = M T DM λ i jsou reálná vlastní čísla matice A, D = diag(λ 1,...,λ n ) a T je ortogonální matice. Při prvním kroku Jacobiho metody položíme A = A 1 a sestrojíme posloupnost {S k } k 1 elementárních ortogonálních matic takovou, aby A k+1 = S T ka k S k = (S 1...S k ) T A(S 1...S k ) k = 1,,... konvergující k D. Protože A k+1 jsou podobné matici A, mají stejná vlastní čísla. Necht S je matice tvaru 1 0 0 0....... 0 cosα sin α 0 S =....... 0 sin α cos α 0....... 0 0 0 1 (tzn. matice rovinné rotace nebo Givensova transformace) kde prvky cosα jsou na pozcích (p,p) a (q,q),sinα na pozici (p,q) a sin α na pozici (q,p). Pak platí věta Věta 6.1.1. Necht p,q jsou přirozená čísla, 1 p < q n, α je reálné číslo, necht S je ortogonální matice. 4

1. Je-li A = (a ij ) symetrická, je B = S T AS = (b ij ) symetrická a b ij = i,j=1 i,j=1. Je-li a pq 0, existuje jediné α π/4, 0) (0,π/4) tak, že kde α je jediné řešení rovnice b pq = 0, a ij cotg α = a qq a pp a pq Důkaz. ležící v této množině. Potom b ii = i=1 a ii + a pq. i=1 1. Protože A = SBS T a víme, že pro dvě matice K,L platí tr(kl) = tr(lk), máme a ij = tr(a T A) = tr(sb T S T SBS T ) = i,j= tr(sb T BS T ) = tr(s T SB T B) = tr(b T B) = i,j= b ij.. Transformace na pozicích (p,q);(q,q);(p,p);(q,p) má tvar a tedy [ ] [ ] [ ] [ ] bpp b pq cos α sin α app a = pq cos α sin α b qp b qq sin α cosα a qp a qq sin α cos α [ ] [ ] app cos α a = pq sin α a pq cos α a qq sin α cos α sin α a pp sin α + a pq cos α a pq sin α + a qq cos α sin α cos α b pp = a pp cos α a pq sin α cos α + a qq sin α a pp cos α + a qq sin α a pq sin α 5

b pq = b qp = a pp cos α sin α + a pq sin α + a pq cos α a qq sin α cos α = a pq cos α + 1/(a pq a qq ) sin α b qq = a pp sin α + a pq sin α cos α + a qq cos α a pp sin α + a qq cos α + a pq sin α Stejně jako v části (1) pro libovolné α. Zvolíme-li α tak, aby platilo je b pq = b qp = 0 a tedy ostatní a ii = b ii pro i p,q. Poznámka 6.1.1. a pp + a qq + a pq = b pp + b qq + b pq cotg α = a pp a qq a pq b pp + b qq = a pp + a qq + a pq Při transformaci A B = S T A S se mění pouze p-té a q-té řádky a sloupce, přesněji pro libovolné α : b ij = a ij pro i p,q a j p,q b pi = b ip = a pi cos α a qi sin α pro i p,q b qi = b iq = a pi sin α a qi cos α pro i p,q b pp = a pp cos α + a qq sin α a pq sin α b qq = a pp sin α + a qq cos α + a pq sin α b pq = b qp = a pq cos α + 1 (a pp a qq ) sin α Použijeme-li vztahy mezi goniometrickými funkcemi, lze prvky matice B vyjádřit pomocí prvků matice A. 6

Postup výpočtu: Nejprve položíme Označíme-li t = tg α je t = K = a qq a pp a pq (= cotg α) { kořen t + Kt 1 pro K 0 1 pro K = 0 Dále c = 1 1 + t (= cosα) s = t 1 + t (= sinα) Pro prvky matice B platí vztahy: b pi = b ip = c a pi s a qi b qi = b iq = c a qi + s a pi i p,q i p,q b pi = b ip = a pp t a pq b pi = b ip = a qq + t a pq Uved me odvození např. pro b qq Protože a dále čitatel je b qq = a pp sin α + a qq (1 sin α) + a pq sin α = a qq (a qq + a pp ) sin α + a pq sin α = a qq + a pq (sin α cotg α sin α). cot α sin α + sin α = sin α cos α sin α sin α cos α 4 sin α cos α sin α cos α + sin 4 α = sin α(sin α + cos α) = sin α b qq = a qq + sin α cos α a pq = a qq + t a pq. Jeden krok Jacobiho metody: Máme-li sestrojenou matici A k = [a (k) ij ], vybereme (p,q) tak, aby a (k) p,q 0. Sestrojíme S k jako ve větě 6.1.1, určíme α ( π/4, 0) (0,π/4) tak, aby položíme cotg α k = a(k) qq a (k) pp, a (k) pq A k+1 = S T kas k = [a (k+1) ij ]. 7

Strategie pro volbu (p,q): 1. Klasická Jacobiho metoda: Zvolíme (p,q) taková, aby platilo a (k) pq = max i j a(k) ij a (p,q) se mění pro různá k.. Cyklická Jacobiho metoda: Nulují se všechny nediagonální prvky cyklickou smyčkou, např. (p,q) volíme (1, ) (1, 3)... (1,n); (, 3)... (,n);... ; (n 1,n). Zřejmě, je-li některý prvek nulový, postupujeme dále (tj. volíme α k = 0 nebo S k = I) 3. Prahová Jacobiho metoda: Postupujeme jako u cyklické Jacobiho metody, ale nediagonální prvky, které jsou v absolutní hodnotě menší než jistá mez, která se zmenšuje s každou smyčkou, se neanuluje. Poznámka 6.1.. Co se týče konvergence, ukážeme myšlenku důkazu pro nejjednodušší případ. Označíme P n množinu všech permutací čísel 1,,...,n. Věta 6.1.. Posloupnost matic {A k } k=1 získaných klasickou Jacobiho metodou je konvergentní, lim A k = diag(λ s(i) ) k pro jistou permutaci s P n. K důkazu potřebujeme následující lemma. Lemma 6.1.1. Bud X konečnědimenzionální normovaný vektorový prostor, {x k } ohraničená posloupnost v X, která má pouze konečný počet hromadných bodů, necht Potom je posloupnost {x k } konvergentní. lim x k+1 x k = 0. k Důkaz. věty 6.1. Označme A k = [a (k) ij ] = D k + B k, D k = diag(a (k) ii ). Nejprve dokážeme, že lim k B k = 0. Označme Ω k = i j a (k) ij. Pak platí Ω k n(n 1) a (k) pq 8

nebot máme n(n-1) nediagonálních prvků a číslo a (k) pq je maximální. Dále podle věty 6.1.1 Ω k+1 = Ω k a (k) ij, tedy tj. Ω k+1 (1 n(n 1) )Ω k lim Ω k = 0. k Nyní dokážeme, že lim k (D k+1 D k ) = O. Pro diagonální prvky matice A k+1 platí 0, i p,q, a (k+1) ii a (k) ii = (tg α k )a (k) pq, i = p, (tg α k )a (k) pq, i = q. Protože α k π/4 a lim k a (k) pq = 0 je důkaz proveden. Necht {D k } je posloupnost, která konverguje k matici D, potom také lim k A k = D, protože A k = D k + B k a lim k B k = 0. Tedy Matice A k det(λi D) = lim det(λi A k k ) = det(λi A). a A jsou podobné, tedy det(λi A k ) = det(λi A) pro všechna k. Takže D a A mají stejné charakteristické polynomy, tedy i stejná vlastní čísla. D proto musí být diagonální, D = diag(λ s(i) ) Posloupnost {D k }, kde D k je vektor dimenze n, je ohraničená, nebot D k = ( i,j=1 d (k) ij ) 1/ ( A k = A i,j=1 a (k) ij ) 1/ = Jsou tedy splněny předpoklady lemmatu 6.1.1 a posloupnost {A k } konverguje. Příklad 6.1.1. Klasickou Jacobiho metodou určete všechna vlastní čísla matice 8 1 3 1 A = 1 6 0 3 9 1, 1 0 1 7 9

Řešení 4. Maximální nediagonální prvek (v absolutní hodnotě) je 3 na pozici (1,3) p = 1 q = 3 K = a 33 a 11 a 13 t je kořen (s menší absolutní hodnotou) polynomu c = t + 1 3 1 = 0, = 1 6 0 t = 0.8471708838304, 1 1 + t = 0.76301998477 s = t 1 + t = 0.6463748961300 b 13 = b 31 = 0 b 11 = a 11 t a 13 = 5.45861873485088, b 33 = a 33 + t a 13 = 11.541381651491, b 1 = c a 1 s a 3 =.0557697747331 = b 1, b 14 = c a 14 s a 34 = 1.409394878609 = b 41, b 3 = c a 3 + s a 1 = 0.8796650688155 = b 3, b 34 = c a 34 + s a 14 = 0.1166450863453 = b 43, b = a b 44 = a 44 b 4 = b 4 = a 4. Pak dostaneme matici 5.45861873485088.0557697747331 0 1.409394878609.0557697747331 6 0.8796650688155 0 0 0.8796650688155 11.541381651491 0.1166450863453. 1.409394878609 0 0.1166450863453 7 Nyní opět vybereme maximální prvek a stejným způsobem postupujeme dál. Po 7 krocích se dostamene k matici 3.794071808176 0.0708617147580 0.003936614183 0.005166055919 B = 0.0708617147580 6.401953673989 0.08436498867668 0.064853710075 0.003936614183 0.08436498867668 11.7677650507119 o. 0.005166055919 0.064853710075 0 8.0359674671830 Zde už je vidět, že nediagonální prvky konvergují k nule.po dalších sedmi krocích už dostaneme diagonální matici 3.957 0 0 0 B = 0 6.593 0 0 0 0 11.7043 0, 0 0 0 8.4077 kde diagonální prvky odpovídají vlastním číslům zadané matice A. 30

Nyní se budeme zabývat konvergencí vlastních vektorů klasické Jacobiho metody, kterou dokážeme pomocí následující věty. Připomeňme, že kde Q k = S 1...S k. A k+1 = S T ka k S k = Q T kaq k Věta 6.1.3. Předpokládejme, že všechna vlastní čísla matice A jsou vzájemně různá. Potom posloupnost matic Q k, k = 1,..., konstruovaných klasickou Jacobiho metodou konverguje k ortogonální matici, jejíž sloupce tvoří ortogonální množinu vlastních vektorů matice A. Důkaz. Opět použijeme lemma 6.1.1, ověříme jeho předpoklady. {Q k } má pouze konečný počet hromadných bodů, které jsou nutně ve tvaru [±p s(1) ± p s() ±... ± p s(n) ], s P n, kde p 1,...,p n jsou sloupce ortonormální matice Q, pro níž Q T AQ = diag(λ i ). Necht {Q k } je podposloupnost posloupnosti {Q k }, Q k Q k. Podle věty 6.1. existují s P n tak, že diag(λ s(i) ) = lim k A k = lim k (QT k A k Q k ) = QT k A k Q k což bylo dokázáno. Všechna vlastní čísla jsou různá, tedy existuje pouze konečně mnoho hromadných bodů. Pro úhly určující S k máme tg α k = a(k) pq, α a (k) qq a (k) k π/4. pp Podle věty 6.1. odtud plyne, že existuje l tak, že pro k l je a (k) qq a (k) pp 1 min i j λ i λ j > 0. Protože se dvojice (p,q) mění s k, nemůžeme dokázat, že posloupnosti a (k) qq konvergují. Ale lim k a(k) pq = 0, tedy lim α k = 0 a lim S k = I k k Q k+1 Q k = Q k (S k I) 0. A konečně posloupnost {Q k } je ohraničená, protože Q k = 1. a a (k) pp Poznámka 6.1.3. Při výpočtu můžeme průběžně kontrolovat výsledky tím, že po každém kroku zjišt ujeme, zda a (k+1) pp + a (k+1) qq = a (k) pp + a (k) qq. Nebo vypočítáme matici SDS T, která by se měla rovnat matici A. 31

Poznámka 6.1.4. Přesnost Jacobiho metody závisí na tom, jak přesně se vypočítají odmocniny pro určení sinα k a cos α k. Poznámka 6.1.5. Ačkoliv se Jacobiho metoda používá převážně pro symetrické matice, pracuje často dobře i v případě nesymetrických matic. V tomto případě ovšem konverguje k trojúhelníkové matici a má-li výchozí matice komplexní vlastní čísla, je nutné použít místo matic S k vhodné unitární matice. 6. Householderova matice zrcadlení Definice 6..1. Matice tvaru H(u) : = I uut u T u = I uut u se nazývá Householderova matice (někdy též elementární zrcadlení nebo Householderova transformace). Vlastnosti: označení matice zrcadlení se používá proto, že aplikujeme-li matici H(u) pro nějaké u na vektor x R n, pak je vektor H(u)x souměrný s vektorem x podle nadroviny ortogonální k vektoru v. Obrázek 6.1: Householderova transformace matice I je speciální případ Householderovy transformace. Pro u = o je H(o) = I. Hx = x pro každé x R n, tj. zrcadlení tedy nemění délku vektoru. Hy = y pro každé y P = {v R n v T u = 0}. 3

H má jednoduchou vlastní hodnotu -1 a (n 1)-násobnou vlastní hodnotu 1. Důkaz. Protože y P = {v R n v T u = 0} má n 1 lineárně nezávislých vektorů y 1,..., y n 1 a Hy i = y i pro i = 1,,..., n 1, pak 1 je (n 1)-násobná vlastní hodnota a H také zrcadlí u na -u, tj. Hu = u. Takže -1 je vlastní hodnota matice H, která musí být jednoduchá, nebot H má pouze n vlastních hodnot. z věty o spektrálním rozkladu plyne Matice H je ortogonální a symetrická. det(h) = ( 1)1 1 = 1, Důkaz. Symetrie plyne z Dále platí H (u) = a proto je matice H(u) ortogonální. ( uu H T (u) = I T T ) T uu T = I u T u u = H(u). ) (I )(I uut uut = I 4 uut u T u u T u u + uu T 4uuT = I, u 4 Věta 6..1. Pro každé dva vektory y, z R n takové, že y z a y = z, platí y = H(y - z)z. Jinými slovy, každé dva různé vektory o stejné normě lze převést jeden na druhý Householderovou transformací. Důkaz. Platí H(y z)z = (I (y z)(y z)t y z = z + y + z y T z y z ) z = z yt z z (y z) = y z (y z) = z + y z (y z) = y. y z Důsledek 6..1. Jsou-li y, z dva vektory o stejné normě, potom existuje ortogonální matice Q taková, že y = Qz. Důkaz. Pro y z stačí vzít Q = H(y z), jinak Q = I. 33

Věta 6... Pro každé x R n je { H(x + sgn(x 1 ) x e 1 ), pro x 1 x, H = I, pro x 1 = x, ortogonální matice s vlastností Hx = x e 1. Nebo-li, aplikujeme-li vhodnou matici H na vektor x, dostaneme vektor, který má všechny složky až na první nulové. Důkaz. Je-li x 1 = x, potom z x 1 = x 1 + + x n plyne, že x = = x n = 0. Tedy x = x 1 e 1 = x e 1 = Ix = Hx. Je-li x 1 x, potom x + sgn(x 1 ) x e 1 0, takže vektory y = sgn(x 1 ) x e 1 a z = x jsou různé a platí pro ně y = x = z, a odtud je y = sgn(x 1 ) x e 1 = H(y z)z = H( x sgn(x 1 ) x e 1 )x. Poznámka 6..1. Pro vektor určující Householderovu matici lze volit bud + x e 1 nebo x e 1. Z důvodu minimalizace numerických chyb volíme stejné znaménko jako u první složky vektoru x. Věta 6..3. Pro každé x takové, že x = 1, je { H(x + sgn(x 1 )w 1 ), pro x e 1, H = I, pro x = e 1. ortogonální matice, jejímž prvním sloupcem je vektor x. Důkaz. Pro x = e 1 je zřejmý. Necht tedy x e 1. Protože x = 1 = e 1, je podle Věty 6.. což je tvrzením věty. x = H(x + sgn(x 1 )e 1 ) = He 1 = H 1, Díky těmto větám tedy umíme najít vektor u tak, že daný nenulový vektor x se transformuje na vektor, který má nenulovou pouze první složku. Příklad 6..1. Lze x = ( 1,, 7) T H(u) (α, 0, 0) T? Protože x = 3 6, položíme u = x x e 1 = ( 1 3 6,, 7) T a u = 6(18 + 6 ). Dále uu T = 1 3 6 ( 1 3 55 + 6 6 + 6 6 7 1 6 6,, 7) = + 6 6 4 14 7 7 1, 6 14 49 takže H(u) = Snadno lze ověřit, že 1 3 6 6 6 7 + 1 6 1 3(18 + 6 6 50 + 3 6 14 6 ) 7 + 1 6 14 5 + 3 6 H(u)x = (3 6, 0, 0) T. 34.

6.3 Givensova-Householderova metoda Jedná se o metodu speciálně vhodnou k hledání některých vlastních čísel symetrických matic, např. všech vlastních čísel obsažených v předem zadaném intervalu. Umožňuje počítat vlastní čísla s různou přesností. Na druhé staně nám neposkytuje informace o vlastních vektorech. Má dvě etapy: Householderova metoda pro redukci symetrické matice na třídiagonální tvar. Givensova metoda (metoda bisekce) pro výpočet vlastních čísel symetrické třídiagonální matice. 6.3.1 Householderova metoda Necht A je symetrická matice, postupně se určuje n ortogonálních matic H 1,...,H n, tak, aby matice A k = H T k 1 A k 1 H k 1 = byly ve tvaru Tudíž matice (H 1...H k 1 ) T A (H 1...H k 1 ), k = 1,...,n a T k A k = a k A n 1 = (H 1...H n ) T A (H 1...H n ) je třídiagonální a také podobná matici A. Každá transformace A k A k+1 = H T k A k H k se provádí pomocí matice [ ] Ik 0 H k =, 0 Hk kde H k = H(ṽ k ), kde ṽ k byl zvolen tak, aby pouze první složka H(v k )a k byla nenulová. 35

Potom zřejmě a T H k k H T k A k H k =, H T k a k tj.po vhodné volbě ṽ k máme další část třídiagonální matice. Matici H k můžeme popsat také jako Householderovu matici příslušnou vektoru Máme dvě možné volby vektoru v k : v k = [0,...,0,ṽ k ] T. v k = [0,...,0,a (k) k+1,k ± ( i=k+1 a (k) ik ) 1/,a (k) k+,...,a(k) n,k ]T, znaménko se volí stejné jako je znaménko u a (k) k+1,k. Máme-li určen vektor v k, prvky a (k+1) k + 1 i, j n matice A k+1 = [a (k+1) ij ] určíme následovně: Postupně určíme vektory w k = (v T kv k ) 1/ v k, jejichž složky označíme w (k) i q k = (I w k w T k )A k w k,, q (k) i. Potom matice A k+1 má tvar A k+1 = A k w k q T k q k w T k ij, tj. k + 1 i,j n. a (k+1) ij = a (k) ij w (k) i q (k) j q (k) i w (k) j Příklad 6.3.1. Householderovou transfornací převed te matici 4 1 A = 3 1 1 1 3 1 1 1 1 na třídiagonální tvar. 36

Řešení 5. v 0 = ( 0 + ( + + 1 ) 1 ) T, w 0 = (v T 0v 0 ) 1 v0 = ( 0 0.91871 0.365148 0.18574 ) T, q 0 = (I w 0 w T 0 )Aw 0 = ( 5.4774.7386095 5.0390466 3.61496813 ) T, 4 3 0 0 A 1 = A w 0 q T 0 q 0 w T 0 = 3.6 1.8 0.6 0.68 1.4, 0 1.8 1.4 0.68 v 1 = ( 0 0.6.6 + ( 1.8) 1.8 ), w 1 = ( 0 0 0.954514 0.98168 ) T, q 1 = ( 0 6.0365793 0.3770516 1.07794 ) T, 4 3 0 0 A = A 1 w 1 q T 1 q 1 w T 1 = 3 3.1678 0 0 3.1678 1.4 0.. 0 0 0. 1.4 6.3. Givensova metoda Metoda slouží k určení vlastních čísel symetrické třídiagonální matice b 1 c 1 c 1 b c B =.......... c n b n 1 c n 1 Pokud je některé z čísel c i nula, rozpadá se matice B na dvě třídiagonální matice stejného typu. Tedy bez újmy na obecnosti můžeme předpokládat, že c i 0, (i = 1,...,n 1). Označme b 1 c 1 c 1 b c B i =........., c i 1 b i 1 c i 1 c i b i i = 1,...,n c n 1 Věta 6.3.1. Polynomy p i (λ), λ R, definované pro i = 1,...,n rekurentně p 0 (λ) = 1 b n mají následující vlastnosti: p 1 (λ) = b 1 λ p i (λ) = (b i λ)p i 1 (λ) c i 1p i (λ), i n 37

1. Polynom p i je charakteristický polynom matice B i (p i (λ) = det(b i λi)).. lim p i(λ) = +, λ i = 1,...,n 3. Jestliže p i (λ 0 ) = 0, potom p i 1 (λ 0 )p i+1 (λ 0 ) < 0, i = 1,...,n 1 4. Polynom p i má vzájemně i různých kořenů, které oddělují i + 1 kořenů polynomu p i+1, i = 1,...,n. Důkaz. 1. Plyne z rozvoje det(b i λi). p i (λ) = ( 1) i λ i... pro λ 3. Necht p i (λ 0 ) = 0 pro nějaké i, i = 1,...,n 1, z definice p i plyne p i+1 (λ 0 ) = c i p i 1 (λ 0 ). Protože c i 0, dostaneme bud p i 1 (λ 0 ) p i+1 (λ 0 ) < 0 nebo p i 1 (λ 0 ) = p i (λ 0 ) = p i+1 (λ 0 ) což by indukcí vedlo k tomu, že p i (λ 0 ) = p i 1 (λ 0 ) =... = p 1 (λ 0 ) = p 0 (λ 0 ), což je spor, protože p 0 (λ 0 ) = 1. 4. Plyne z a 3. Poznámka 6.3.1. Posloupnost polynomů splňující -4 se nazývá Sturmova posloupnost (používá se při výpočtu kořenu polynomů). Příklad 6.3.. Pomocí charakteristického polynomu určete vlastní čísla třídiagonální matice A z příkladu 6.3.1. 4 3 0 0 A = 3 3.1678 0 0 3.1678 1.4 0. 0 0 0. 1.4 38

Řešení 6. p 0 (λ) = 1 p 1 (λ) = 4 λ p (λ) = ( λ)(4 λ) 9 p 3 (λ) = ( 1.4 λ)[( λ)(4 λ) 9] 10(4 λ) p 4 (λ) = (1.4 λ)[( 1.4 λ)[( λ)(4 λ) 9] 10(4 λ)] 0.04[( λ)(4 λ) 9] = Kořeny polynomu p 4 (λ) jsou λ 4 λ 3 9λ + 58λ λ 1 = 5.4355 λ = 5.4907 λ 3 = 1.489 λ 4 = 0.5159 Věta 6.3.. Bud i přirozené číslo, 1 i n. Pro dané µ R položme { sgnp i (µ) je-li p i (µ) 0, sgnp i (µ) = sgnp i 1 (µ) je-li p i (µ) = 0. Potom N(i, µ), což je počet znaménkových změn v posloupnosti po sobě jdoucích prvků uspořádané množiny N(i,µ) = {+, sgnp 1 (µ),...,sgnp i (µ)} se rovná počtu kořenů polynomu p i, které jsou menší než µ. Tato věta umožňuje aproximaci (s libovolnou přesností) vlastních čísel matice B = B n a dokonce přímý výpočet vlastního čísla na dané pozici. Předpokládejme například, že chceme aproximaci i-tého vlastního čísla λ (n) i = λ i matice B ( jako předtím předpokládáme, že λ 1,...,λ n jsou vzájemně různá a uspořádaná sestupně). Krok 1: Určíme interval a 0,b 0, v němž leží žádané vlastní číslo, např. a 0 = b 0 = B. Krok : c 0 = a 0 + b 0, spočteme N(n,c 0 ). Potom bud N(n,c 0 ) i a λ i < a 0,c 0 ) nebo N(n,c 0 ) < i a λ i < c 0,b 0 > tím získáme interval < a 1,b 1 >, v němž leží kořen λ i. Postupně získáme posloupnost intervalů < a k,b k >, k 0 takových, že λ i < a k,b k > a b k a k = k (b 0 a 0 ), k 0. 39

6.4 QR-rozklad Definice 6.4.1. Dvojici matic Q a R nazveme QR-rozkladem matice A, pokud platí, že A = QR, přičemž Q je ortogonální matice a R je horní trojúhelníková matice. Nyní uvedeme věty o existenci QR-rozkladu a jeho jednoznačnosti. Věta 6.4.1. K libovolné reálné matici A R m n, kde m n, existuje ortogonální matice Q R m m a horní trojúhelníková matice R R m n tak, že platí A = QR. Věta 6.4.. Jsou-li sloupce matice A R m n, m n, lineárně nezávislé, potom v QRrozkladu jsou matice R a prvních n sloupců matice Q určeny až na znaménko jednoznačně. Důkazy obou vět viz [] 6.5 Konstrukce QR-rozkladu 6.5.1 QR-rozklad pomocí Gram-Schmidtova algoritmu Věta 6.5.1 (Gram-Schmidtův QR-rozklad). K libovolné reálné matici A R m n, kde m n, existuje ortogonální matice Q R m m a horní trojúhelníková matice R R m n s nezápornými prvky na diagonále tak, že platí A = QR. V případě lineárně nezávislých sloupců matice A jsou prvky na diagonále kladné. Základní myšlenka důkazu: Máme-li matici A R m n, pak aplikací zobecněného Gram- Schmidtova ortogonalizačního procesu na sloupce matice A (ty mohou být lineárně závislé i nezávislé) a doplněním těchto vektorů na bázi v R m získáme sloupce matice Q. Uvažujme matici A = (a 1... a n ) složenou ze sloupcových vektorů. Pak u 1 = a 1, e 1 = u 1 u 1, u = a p e1 a, e = u u, u 3 = a 3 p e1 a 3 p e a 3, e 3 = u 3 u 3,. k 1 u k = a k p ej a k, j=1 e k = u k u k, 40

kde p u v = <v, u> <v, v> u. Po úpravě obdržíme vzorce pro vektory a i a 1 = e 1 u 1, a = p e1 a + e u, a 3 = p e1 a 3 + p e a 3 + e 3 u 3,. k 1 a k = p ej a k + e k u k. j=1 Označme Q = (e 1... e n ). Nyní máme < e 1, a 1 > < e 1, a > < e 1, a 3 > < e 1, a n > 0 < e, a > < e, a 3 > < e, a n > R = Q T A = 0 0 < e 3, a 3 > < e 3, a n >,....... 0 0 0... < e n, a n > nebot QQ T = I a < e j, a j >= u j, < e j, a k >= 0 pro j > k. 1 51 4 Příklad 6.5.1. Proved me QR-rozklad matice A = 6 167 68. 4 4 41 Řešení 7. Gram-Schmidtovým procesem dostaneme 1 69 58 U = (u 1 u u 3 ) = 6 158 6. 4 30 165 Matici Q potom získáme jako Q = ( u1 u 1 u u ) u 3 = u 3 6/7 69/175 58/175 3/7 158/175 6/175. /7 6/35 33/35 A = QQ T A = QR, takže Algoritmus Mějme matici A. Položme 14 1 14 R = Q T A = 0 175 70. 0 0 35 r 11 = a 1, q 1 = a 1 r 11, 41

pro k =,..., n spočítejme: r jk = < q j, a k > pro j = 1,..., k 1, k 1 z k = a k r jk q j, j=1 r kn = < z k, z n > q k = z k r kk. Metodu lze také upravit tak, že zaměníme pořadí operací. Tedy položme Pak pro k =,..., n, spočtěme r kk = a (k 1) k, A 0 A. q k = a(k 1) k, r kk r ki = q T ka (k 1) i pro i = k + 1,..., n, A (k) = A (k 1) q k r T k. Z formálního hlediska jde o změnu pořadí operací, ovšem z numerického hlediska obdržíme kvalitativně různé výsledky. 6.5. QR-rozklad pomocí Householderovy matice Věta 6.5. (Householderův QR-rozklad). Každou matici A R m n lze pomocí s = min{n, m 1} Householderových matic rozložit na součin QR, a to tak, že platí ( R1 ) 0 m > n, H s H H 1 A = Q T A = (R 1, 0) m < n, R m = n. Důkaz. Konstrukce QR-rozkladu Mějme reálnou matici A a 11 a 1n a 1 a n A =...... a m1 a mn Krok 1.: Zkonstruujme Householderovu matici H 1 tak, aby H 1 A měla v prvním sloupci pouze samé 0 s výjimkou pozice (1, 1), tj. aby 0 H 1 A =... 0 4

K tomu stačí získat vektor u n (dle předchozího) tak, že pro platí H 1 H 1 = I u nu T n u T nu n a 11 a 1. a m1 = 0.. 0 Označme A (1) : = H 1 A. A (1) je tvaru a 11 A (1) 0 =... 0 Krok.: Zkonstruujme Householderovu matici H tak, že H A (1) má ve druhém sloupci 0 pod pozicí (, ) při zachování požadavku prvního kroku, tj. 0 A () : = H A (1) = 0 0.... 0 0 Matici H získáme tak, že nejdříve zkonstruujeme Householderovu matici o rozměru (m 1) (n 1) takovou, že a definujme Tím získáme matici A () = H A (1). Analogicky pokračujeme dále. Ĥ : = I n 1 u n 1u T n 1 u T n 1u n 1 Ĥ a a 3. a m = 0., 0 1 0 0 H : = 0. Ĥ 0 Pro k s. Krok k-tý: Obecně vytváříme Householderovu matici. Ĥ k : = I n k+1 u n k+1u T n k+1 u T n k+1 u n k+1 43

o rozměru (m k + 1) (n k + 1) takovou, že a kk Ĥ k. = 0.. a mk 0 Definujeme čili můžeme spočítat A (k) = H k A (k 1). ( ) Ik 1 0 H k : =, 0 Ĥ k Tímto způsobem po s krocích obdržíme matici A (s), která bude v horním trojúhelníkovém tvaru a bude právě maticí R. Protože A (k) = H k A (k 1) k =,..., s, máme Položme R = A (s) = H s A (s 1) = H s H s 1 A (s ) = = H s H s 1 H H 1 A. Q T = H s H s 1 H H 1. Máme hledanou ortogonální matici (nebot každá z H i je ortogonální). Celkem tj. R = Q T A, A = QR. (Zopakujme si, že Q = H T 1 H T H T s = H 1 H H s.) Příklad 6.5.. Uvažme matici Řešení 8. Krok 1.: Konstrukce H 1. 0 1 1 A = 1 3. 1 1 1 H 1 0 1 = 0. 1 0 Potom tedy dle Příkladu 6..1 spočteme 0 u 3 = 1 + 1 0 = 1, 1 0 1 takže H 1 = I 3 u 3u T 3 u T 3u 3 = 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 44 1 = 0 1 1 1 1 1 1 1 1.

Určeme 3 A (1) = H 1 A = 0 1. 0 1+ + Krok.: Zkonstruujeme ( ) ( ) 0, 071 Ĥ = =, 1, 071 0 ( ) ( ) ( ) 0, 071 1 1, 4318 u = 1, 47 =, 1, 071 0 1, 071 ( ) 0, 1691 0, 9856 Ĥ =, 0, 9856 0, 1691 tzn. 1 0 0 H = 0 0, 1691 0, 9856, 0 0, 9856 0, 1691 a spočítáme 1, 414, 113, 884 A () = H A (1) = H H 1 A = 0 1, 47 1, 6330 = R 0 0 0, 5774 Pro Q nyní platí 0 0, 8165 0, 5774 Q = H H 1 = 0, 7071 0, 408 0, 5774. 0, 7071 0, 408 0, 5774 Celkem tedy 0 1 1 A = 1 3 = 1 1 1 0 0, 8165 0, 5774 1, 414, 113, 884 0, 7071 0, 408 0, 5774 0 1, 47 1, 6330 = QR. 0, 7071 0, 408 0, 5774 0 0 0, 5774 45

6.5.3 QR-rozklad pomocí Givensovy matice Definice 6.5.1. Matice tvaru 1 0 0 0....... 0 c s 0 G(i, j, c, s) : =....... = I+(c 1)(e i e it +e j e jt )+s(e i e it e j e jt ), 0 s c 0....... 0 0 0 1 kde c + s = 1, se nazývá Givensova matice, která nám mezi jinými popisuje Givensovu transformaci. Obrázek 6.: Geometrický význam Givensovy rotace Givensovu matici značíme G(i, j, α). Opět chceme setrojit matice Q 1, Q,..., Q s tentokrát však pomocí Givensových matic tak, aby A (1) = Q 1 A měla nuly pod prvkem (1, 1) v prvním sloupci, matice A () = Q A (1) měla nuly pod prvkem (, ) ve druhém sloupci, atd. Každou z matic Q i lze sestrojit jako součin Givensových matic ten je možné sestrojit takto: Bud s = min{m 1, n}. Pak Q 1 : = G(1, m, α)g(1, m 1, α) G(1, 3, α)g(1,, α) Q : = G(, m, α)g(, m 1, α) G(, 3, α). R = A (s) = Q s A (s 1) = = Q s Q s 1 Q Q 1 A = Q T A. Nyní máme A = QR, kde Q T = Q s Q Q 1. To lze zformulovat do následující věty. 46