Problem lastnih vrednosti

Σχετικά έγγραφα
Problem lastnih vrednosti 1 / 20

8. Posplošeni problem lastnih vrednosti

13. Jacobijeva metoda za računanje singularnega razcepa

Podobnost matrik. Matematika II (FKKT Kemijsko inženirstvo) Diagonalizacija matrik

Funkcijske vrste. Matematika 2. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 2. april Gregor Dolinar Matematika 2

Numerične metode 2 (finančna matematika)

matrike A = [a ij ] m,n αa 11 αa 12 αa 1n αa 21 αa 22 αa 2n αa m1 αa m2 αa mn se števanje po komponentah (matriki morata biti enakih dimenzij):

Diferencialna enačba, v kateri nastopata neznana funkcija in njen odvod v prvi potenci

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 22. oktober Gregor Dolinar Matematika 1

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 5. december Gregor Dolinar Matematika 1

Lastne vrednosti in lastni vektorji

11. Posplošeni problemi lastnih vrednosti

Tretja vaja iz matematike 1

Osnove linearne algebre

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 21. november Gregor Dolinar Matematika 1

Iterativno reševanje sistemov linearnih enačb. Numerične metode, sistemi linearnih enačb. Numerične metode FE, 2. december 2013

Reševanje sistema linearnih

V tem poglavju bomo vpeljali pojem determinante matrike, spoznali bomo njene lastnosti in nekaj metod za računanje determinant.

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 14. november Gregor Dolinar Matematika 1

11.5 Metoda karakteristik za hiperbolične PDE

Oznake in osnovne definicije

Odvod. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 10. december Gregor Dolinar Matematika 1

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 12. november Gregor Dolinar Matematika 1

Dodatna poglavja iz linearne algebre za 1. letnik finančne matematike na FMF. Primož Moravec

Splošno o interpolaciji

Zaporedja. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 15. oktober Gregor Dolinar Matematika 1

Reševanje sistemov linearnih enačb

KODE ZA ODKRIVANJE IN ODPRAVLJANJE NAPAK

Kvadratne forme. Poglavje XI. 1 Definicija in osnovne lastnosti

Navadne diferencialne enačbe

3.1 Reševanje nelinearnih sistemov

Matrike. Poglavje II. Matrika je pravokotna tabela realnih števil. Na primer: , , , 0 1

Analiza 2 Rešitve 14. sklopa nalog

Dragi polinom, kje so tvoje ničle?

5.1 Predpogojevanje. K 1 Ax = K 1 b,

Linearne preslikave. Poglavje VII. 1 Definicija linearne preslikave in osnovne lastnosti

Uporabna matematika za naravoslovce

Inverzni problem lastnih vrednosti evklidsko razdaljnih matrik

Matematika 2. Diferencialne enačbe drugega reda

Poglavje 2. Sistemi linearnih enačb

UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO MATEMATIKA II

Kotne in krožne funkcije

IZPIT IZ ANALIZE II Maribor,

Osnove matematične analize 2016/17

diferencialne enačbe - nadaljevanje

Enačba, v kateri poleg neznane funkcije neodvisnih spremenljivk ter konstant nastopajo tudi njeni odvodi, se imenuje diferencialna enačba.

Poliedri Ines Pogačar 27. oktober 2009

Uvod v numerične metode (matematika)

Matematika. Funkcije in enačbe

DISKRETNA FOURIERJEVA TRANSFORMACIJA

Frekvenčna analiza neperiodičnih signalov. Analiza signalov prof. France Mihelič

1 Fibonaccijeva stevila

Matematika I (VS) Univerza v Ljubljani, FE. Melita Hajdinjak 2013/14. Pregled elementarnih funkcij. Potenčna funkcija. Korenska funkcija.

Numerična analiza. Bor Plestenjak. Fakulteta za matematiko in fiziko. Jadranska 21, 4. nadstropje, soba 4.04

NEPARAMETRIČNI TESTI. pregledovanje tabel hi-kvadrat test. as. dr. Nino RODE

*M * Osnovna in višja raven MATEMATIKA NAVODILA ZA OCENJEVANJE. Sobota, 4. junij 2011 SPOMLADANSKI IZPITNI ROK. Državni izpitni center

SKUPNE PORAZDELITVE VEČ SLUČAJNIH SPREMENLJIVK

Bor Plestenjak. Numerične metode. delovna verzija. verzija: 4. marec 2010

Definicija. definiramo skalarni produkt. x i y i. in razdaljo. d(x, y) = x y = < x y, x y > = n (x i y i ) 2. i=1. i=1

8. Navadne diferencialne enačbe

Booleova algebra. Izjave in Booleove spremenljivke

Uvod v numerične metode

Matematika 1. Gabrijel Tomšič Bojan Orel Neža Mramor Kosta

Vektorski prostori s skalarnim produktom

Numerično reševanje. diferencialnih enačb II

Uvod v numerične metode

Elementi spektralne teorije matrica

Spoznajmo sedaj definicijo in nekaj osnovnih primerov zaporedij števil.

Iterativne numerične metode v linearni algebri

Lastne vrednosti in vektorji

Izpeljava Jensenove in Hölderjeve neenakosti ter neenakosti Minkowskega

Enočlenske metode veljajo trenutno za najprimernejše metode v numeričnem reševanju začetnih problemov. Skoraj vse sodijo v

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA SANDRA BOLTA LASTNE VREDNOSTI GRAFA DIPLOMSKO DELO

Metoda glavnih komponent

1. VAJA IZ TRDNOSTI. (linearna algebra - ponovitev, Kroneckerjev δ i j, permutacijski simbol e i jk )

Funkcije več spremenljivk

Algebraične strukture

Tema 1 Osnove navadnih diferencialnih enačb (NDE)

Linearna algebra. Bojan Orel Fakulteta za računalništvo in informatiko

Zbirka rešenih izpitnih nalog iz numeričnih metod

ZBIRKA REŠENIH NALOG IZ MATEMATIKE II

Navadne diferencialne enačbe

Delovna točka in napajalna vezja bipolarnih tranzistorjev

Kotni funkciji sinus in kosinus

FAKULTETA ZA STROJNIŠTVO Matematika 4 Pisni izpit 22. junij Navodila

1. Trikotniki hitrosti

MATEMATIKA II TEORIJA

vezani ekstremi funkcij

Matematika. BF Lesarstvo. Zapiski ob predavanjih v šolskem letu 2009/2010

INTEGRALI RACIONALNIH FUNKCIJ

VEKTORJI. Operacije z vektorji

INŽENIRSKA MATEMATIKA I

Odvode odvisnih spremenljivk po neodvisni spremenljivki bomo označevali s piko: Sistem navadnih diferencialnih enačb prvega reda ima obliko:

22. Kdaj sta dva vektorja vzporedna? FGG geodezija UNI Matematika I, 2005/ Kdaj so vektorji a 1, a 2,..., a n linearno neodvisni?

Kanonična oblika linearnega programa. Simpleksna metoda. Bazne rešitve kanoničnega linearnega programa.

Matematično modeliranje. Simpleksna metoda.

Kontrolne karte uporabljamo za sprotno spremljanje kakovosti izdelka, ki ga izdelujemo v proizvodnem procesu.

II. LIMITA IN ZVEZNOST FUNKCIJ

8. Diskretni LTI sistemi

Gimnazija Krˇsko. vektorji - naloge

Transcript:

Problem lastnih vrednosti Naj bo A R n n. Iščemo lastni par, da zanj velja Ax = λx, kjer je x C n, x 0 (desni) lastni vektor, λ C pa lastna vrednost. Vektor y 0, pri katerem je y H A = λy H, je levi lastni vektor. Če je y levi lastni vektor A za lastno vrednost λ, je y desni lastni vektor A H za lastno vrednost λ. Zato zadošča, da pri algoritmih obravnavamo le računanje desnih lastnih vektorjev. Matrika A se da diagonalizirati, če obstajata nesingularna matrika X = [x 1 x n ] in diagonalna matrika Λ = diag(λ 1,..., λ n ), da je A = X ΛX 1. V tem primeru je Ax i = λ i x i za i = 1,..., n in stolpci X so lastni vektorji. Če je det(s) 0, sta matriki A in B = S 1 AS podobni in imata enake lastne vrednosti. Velja, da je x desni lastni vektor za A natanko tedaj, ko je S 1 x desni lastni vektor za B. Lastne vrednosti so ničle karakterističnega polinoma det(a λi ). Matrika A ima tako n lastnih vrednosti λ 1,..., λ n, pri čemer večkratne ničle štejemo večkrat. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 1 / 36

Motivacija za računanje lastnih vrednosti B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 2 / 36 Obstajajo številne aplikacije, kjer potrebujemo lastne vrednosti in lastne vektorje matrike. Nekaj primerov: Strukturna analiza: iz strukture (npr. sistema mas in vzmeti, zgradbe,...) dobimo matriko, iz lastnih vrednosti matrike pa lastne frekvence. Tako lahko npr. preverimo, da lastne frekvence zgradb niso blizu frekvenc potresov. Rešitev diferencialne enačbe ẋx(t) = Ax(t), x(0) = x 0 ima obliko x(t) = x 0 e At. Če lahko matriko A diagonaliziramo, lahko poceni izračunamo izraz e At. Rešitev je stabilna, če za vse lastne vrednosti λ matrike A velja R(λ) < 0. Za stabilno reševanje predoločenih sistemov, kjer matrika ni polnega ranga, potrebujemo singularni razcep, računanje SVD pa je povezano z lastnim problemom za A H A.

Primer uporabe lastnih vrednosti Po Newtonovih zakonih za odmike uteži y i velja sistem diferencialnih B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 3 / 36 Denimo, da imamo sistem treh uteži in treh vzmeti.

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 4 / 36 enačb My + Ky = 0, kjer sta m 1 0 0 k 1 + k 2 k 2 0 M = 0 m 2 0, K = k 2 k 2 + k 3 k 3, 0 0 m 3 0 k 3 k 3 M je masna matrika, K pa togostna matrika. Sistem niha z lastno frekvenco ω, kar pomeni, da za komponente rešitve velja y k (t) = x k e iωt, kjer so x 1, x 2, x 3 amplitude. Lastno frekvenco in amplitude določimo iz Kx = ω 2 Mx, saj mora veljati y k (t) = ω2 x k e iωt. To prevedemo na lastni problem Ax = λx, kjer je A = M 1 K in λ = ω 2.

Direktna metoda ne obstaja B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 5 / 36 Lastne vrednosti so ničle karakterističnega polinoma det(a λi ), lahko pa tudi obratno za vsak polinom skonstruiramo matriko, katere karakteristični polinom bo kar izbrani polinom. Ker se ničel splošnega polinoma stopnje 5 ali več ne da izračunati drugače kot numerično, to velja tudi za lastne vrednosti in direktne metode za lastne vrednosti torej ni. Računanje preko karakterističnega polinoma ni numerično stabilno. To smo videli že na Wilkinsonovem zgledu. Glede na potrebe in lastnosti matrike imamo različne algoritme. Pomembno je: Ali je matrika majhna in polna ali velika in razpršena? Ali je matrika simetrična (hermitska)? Ali potrebujemo vse ali le nekatere lastne vrednosti? Ali poleg lastnih vrednosti potrebujemo tudi lastne vektorje?

Občutljivost problema B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 6 / 36 Kaj se dogaja z lastnimi vrednostmi, ko zmotimo elemente matrike? Lastne vrednosti so zvezne funkcije elementov matrike, toda... Npr., za n n matriko 0 1...... je karakteristični polinom A = 0 1 ɛ 0 p(λ) = λ n ɛ in λ = n ɛ. Pri n = 16 in ɛ = 10 16 je λ = 0.1. Motnja ɛ je spremenila prvo števko vseh lastnih vrednosti. Matrika A ni simetrična!.

Občutljivost lastnih vrednosti Izrek Naj bo λ enostavna lastna vrednost A, x ustrezni desni, y pa levi lastni vektor in x 2 = y 2 = 1. Če je λ + δλ ustrezna lastna vrednost A + δa, potem velja λ + δλ = λ + y H δax y H x + O( δa 2 ). Dokaz. Za pravi lastni par Ax = λx, za zmotenega pa (A + δa) (x + δx) = (λ + δλ)(x + δx). Če pomnožimo z leve z y H in zanemarimo člene drugega reda, dobimo δλ = y H δax y H x + O ( δa 2) 1 Količina y H je občutljivost lastne vrednosti. Za večkratno lastno x vrednost je občutljivost, saj lahko dobimo y H x = 0 in motnja lastne vrednosti je neomejena. V primeru A = A T in δa = δa T, dobimo δλ δa + O ( δa 2). B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 7 / 36

Potenčna metoda B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 8 / 36 Potenčna metoda je metoda za računanje dominantnega lastnega vektorja (in pripadajoče lastne vrednosti). izberi x 0 0; za k = 0, 1,... z k+1 = Ax k ; x k+1 = z k+1 z k+1 ; Izrek Denimo, da lahko A diagonaliziramo kot A = W ΛW 1, kjer je Λ = diag(λ 1,..., λ n ) in W = [w 1 w n ]. Naj velja λ 1 > λ 2 λ 3. Zaporedje vektorjev (x k ) konvergira proti dominantnemu lastnemu vektorju x 1.

Konvergenca potenčne metode B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 9 / 36 Dokaz. Če začetni vektor x 0 razvijemo kot x 0 = n i=1 α iw i, dobimo x k = Ak x 0 A k x 0 = α 1w 1 + α 2 ( λ2 λ 1 ) k w 2 + α n ( λn λ 1 ) k w n α 1 w 1 + α 2 ( λ2 λ 1 ) k w 2 + α n ( λn λ 1 ) k w n in x k konvergira v smeri proti w 1, ko k. Konvergenca je linearna in je odvisna od λ 2 / λ 1. Konvergenco imamo tudi v primeru večkratne dominantne lastne vrednosti, v ostalih primerih pa si lahko pomagamo s premikom in računamo lastne vrednosti matrike A σi. Numerična metoda v praksi konvergira za vsak x 0 (tudi če je α 1 = 0, saj nam v tem primeru pomagajo zaokrožitvene napake). Če iščemo lastno vrednost nesingularne matrike A, ki je najmanjša po absolutni vrednosti, delamo potenčno metodo za A 1, saj ima A 1 lastne vrednosti λ 1,..., λ 1 n. V algoritmu namesto množenja z k+1 = A 1 x k rešujemo sistem Az k+1 = x k (inverzna iteracija).

Rayleighov kvocient B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 10 / 36 S potenčno metodo (ali z inverzno iteracijo) dobimo približek za lastni vektor. Kako do približka za lastno vrednost? Imamo približek x za lastni vektor in iščemo lastno vrednost. Najboljši približek je λ, ki minimizira rešitev pa je Rayleighov kvocient Ax λx 2, ρ(a, x) = x T Ax x T x, definiran za x 0. Je rešitev predoločenega sistema xλ = Ax. Za Rayleighov kvocient velja, da je ρ(a, x) = ρ(a, αx) za α 0. Očitno je tudi, da iz Ax = λx sledi ρ(a, x) = λ. Pravi kriterij za zaustavitev potenčne metode je torej Ax k ρ(a, x k )x k < ɛ.

Inverzna iteracija B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 11 / 36 Če uporabimo potenčno metodo na matriki (A σi ) 1, potem bo dominantna lastna vrednost tista, ki je najbližja σ, saj so lastne vrednosti (A σi ) 1 1 enake λ i σ, i = 1,..., n. Algoritem: izberi x 0 0; za k = 0, 1,... reši sistem (A σi )z k+1 = x k ; x k+1 = 1 z k+1 z k+1 ; Postopek ponavadi uporabljamo za izračun lastnega vektorja, ko že izračunamo lastno vrednost. Zaradi močne dominance v enem ali dveh korakih dobimo lastni vektor iz poljubnega začetnega približka. Metodo imenujemo inverzna iteracija.

Preostale lastne vrednosti Ko izračunamo en lastni par (λ 1, x 1 ), lahko ostale izračunamo npr. z redukcijo: a) Hotelingova redukcija za A = A T. Definiramo B = A λ 1 x 1 x T 1. Velja Bx 1 = 0 in Bx k = λ k x k za k i. b) Householderjeva redukcija za splošno matriko. Poiščemo ortogonalno Q, da je Qx 1 = e 1. Potem ima B = QAQ T obliko [ ] λ1 b B = T, 0 C saj je Be 1 = QAQ T e 1 = QAx 1 = Qλ 1 x 1 = λ 1 e 1. Preostale lastne vrednosti dobimo v matriki C. Pri obeh metodah je pomembno, da matrike B ne izračunamo eksplicitno, temveč upoštevamo formulo za B in tako izračunamo produkt Bx na ekonomičen način. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 12 / 36

Razmislek ob računanju vseh lastnih vrednosti B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 13 / 36 Pri numeričnem računanju lastnih vrednosti bi radi matriko spravili v podobno matriko B = S 1 AS za neko nesingularno matriko S, pri čemer je B taka, da znamo iz nje prebrati lastne vrednosti. Idealna B bi bila diagonalna matrika, a to ne gre, saj se vsake matrike ne da diagonalizirati. Denimo, da smo za A izračunali S in B. Sedaj nas zanima, ali je S 1 (A + δa) S = B za nek majhen δa. Pri tem predpostavimo, da je S točna, za B pa velja B = B + δb. Iz S 1 (A + δa)s = B + δb sledi S 1 δas = δb, od tod pa lahko ocenimo δa S S 1 δb = κ(s) δb. Če je občutljivost κ(s) zelo velika, to ni obratno stabilno. Stabilno pa bo, če bo matrika S unitarna.

Jordanova forma Za vsako matriko A obstaja taka nesingularna matrika X, da je X 1 AX = J, kjer je J = diag(j 1,..., J k ) in je λ i 1...... J i =... 1 λi Jordanova kletka. Matrika J je Jordanova forma. Jordanova forma pove veliko o matriki A, na žalost pa ni stabilna. Ker ni zvezna funkcija elementov matrike A, jo lahko majhne motnje popolnoma spremenijo. Npr. 0 1...... A(ɛ) =... 1 ɛ 0 ima za ɛ = 0 eno samo kletko, za ɛ 0 pa n kletk 1 1 z lastnimi vrednostmi n ɛ. Računanje Jordanove forme tudi ni obratno stabilno. Problem nastane, ker je matrika X lahko zelo občutljiva. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 14 / 36

Schurova forma B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 15 / 36 Z unitarnimi prehodnimi matrikami, ki so neobčutljive, lahko pridemo do trikotne oblike. Izrek Za vsako matriko A obstajata unitarna matrika Q in zgornja trikotna matrika T, da je Q H AQ = T (Schurova forma). Dokaz. Uporabimo indukcijo po n. Za n = 1 izrek očitno velja. n 1 n: Naj bo λ lastna vrednost A in x normiran lastni vektor. Obstaja taka unitarna matrika U, da je Ue 1 = x (Givens, Householder). Matrika B = U H AU ima obliko B = ( 1 n 1 ) 1 λ, n 1 0 C saj je Be 1 = U H AUe 1 = U H Ax = U H λx = λe 1.

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 16 / 36 Po indukcijski predpostavki obstaja Schurova forma za C. Torej obstaja unitarna V 1, da je V1 HCV 1 = T 1 zgornja trikotna. Sedaj je [ ] [ ] [ ] 1 0 1 0 λ 0 V1 H B = 0 V 1 0 T 1 }{{}}{{} V H V in V } H {{ U H } A }{{} UV je zgornja trikotna matrika, torej Schurova forma za Q H Q matriko A.

Realna Schurova forma B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 17 / 36 Schurova forma je stabilna, saj je podobnostna transformacija ortogonalna. Schurova forma ni enolična, saj je npr. vrstni red λ i poljuben. Matriki Q in T sta lahko kompleksni, saj ima realna matrika lahko kompleksne lastne vrednosti. Za realno matriko obstaja realna Schurova forma Q T AQ = T, kjer je Q ortogonalna matrika in T kvazi zgornja trikotna matrika (na diagonali ima lahko bloke 2 2, v katerih so skriti konjugirani pari kompleksnih lastnih vrednosti).

Ortogonalna iteracija B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 18 / 36 Osnova praktično pomembnim algoritmom za prevedbo na Schurovo formo je ortogonalna iteracija: izberi matriko Z 0 velikosti n p, p n, z ortonormiranimi stolpci; za k = 0, 1,... Y k+1 = AZ k ; izračunaj QR razcep (osnovni, Q R n,p ) Y k+1 = QR; Z k+1 = Q; Opomba. Pri p = 1 je to kar potenčna metoda. Izrek Naj velja A = X ΛX 1, kjer je X = [x 1 x n ] in Λ = diag(λ 1,..., λ n ). Lastne vrednosti naj bodo urejene po absolutni vrednosti nerastoče in naj velja λ p > λ p+1. Če je matrika V 0 := (X 1 Z 0 )(1 : p; 1 : p) polnega ranga p, zaporedje matrik (Z k ), ki ga generira ortogonalna iteracija, konvergira proti ortonormirani bazi za invariantni podprostor L(x 1,..., x p ).

Dokaz. Velja L(AZ k ) = L(Y k+1 ) = L(Z k+1 ). Če to iteriramo, ugotovimo L(Z k ) = L ( A k Z 0 ). Ker je A k = X Λ k X 1, v diagonalni matriki 1 λ k p Λ k zadnjih n p diagonalnih elementov konvergira proti 0. To poreže zadnjih n p stolpcev v matriki X in zadnjih n p vrstic v matriki X 1 Z 0 R n,p. Kvadratna podmatrika, prvih p vrstic in stolpcev te matrike je polnega ranga po predpostavki. Torej L(Z k ) = L ( X Λ k X 1 Z 0 ) = L ( X (:; 1 : p) ( X 1 Z 0 ) (1 : p; :) ) = L(X (:; 1 : p)) Kaj je vsebina zahteve, da je V 0 = (X 1 Z 0 )(1 : p, 1 : p) polnega ranga p? Naj bo Z 0 = [ n i=1 α ikx i ] p k=1. Tedaj V 0 = X 1 (1 : p; 1 : n)z 0 = [α ik ] p i,k=1. Podobno za r < p velja, da L(Z k (:, 1 : r)) konvergira proti L(x 1,..., x r ). Vzemimo kar p = n in poljubno nesingularno matriko Z 0. V tem primeru seveda ne računamo invariantnega podprostora dimenzije n, saj je to kar celotni prostor. Pri predpostavki, da so absolutne vrednosti λ i paroma različne (kar hkrati pomeni, da so vse realne), lahko pokažemo, da matrika A k = Z T k AZ k konvergira proti Schurovi formi. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 19 / 36

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 20 / 36 Izrek Izberimo Z 0 = I n. Če so absolutne vrednosti λ i paroma različne in matrike X 1 (1 : p, 1 : p) za vse p polnega ranga, zaporedje matrik, danih z A k := Z T k AZ k, konvergira proti Schurovi formi. Dokaz. Matriki A in A k := Zk T AZ k sta podobni, saj je Z k ortogonalna matrika. Naj bo Z k = [Z k1 Z k2 ], kjer ima Z k1 p stolpcev. Potem je [ Zk T Z T AZ k = k1 AZ k1 Zk1 T AZ ] k2 Zk2 T AZ k1 Zk2 T AZ. k2 Ker L(Z k1 ) konvergira proti invariantnemu podprostoru L({x 1,..., x p }), enako velja tudi za L(AZ k1 ), to pa pomeni, da Z T k2 AZ k1 konvergira proti 0, saj je Z T k2 Z k1 = 0. Ker to velja za vsak p = 1,..., n, sledi, da matrika A k = Z T k AZ k res konvergira proti zgornji trikotni matriki, torej proti Schurovi formi za matriko A. Če je matrika X 1 (1 : p, 1 : p) izrojena, numerične napake prinesejo, da po koraku iteracije ni več.

QR metoda B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 21 / 36 To je metoda, ki se trenutno uporablja v numeričnih paketih. Realni Schurov razcep dobimo z naslednjim algoritmom: A 0 = A; za k = 0, 1,... A k = Q k R k ; (QR razcep matrike A k ) A k+1 = R k Q k ; V vsakem koraku tako izračunamo razcep QR matrike in faktorja v zamenjanem vrstnem redu zmnožimo v novo matriko. Iz A k+1 = R k Q k = Q T k A kq k sledi, da sta si matriki A k+1 in A k ortogonalno podobni, torej je A k ortogonalno podobna začetni matriki A. Izkaže se, da je QR iteracija povezana z ortogonalno iteracijo. Od tod ugotovimo, da A k konvergira proti Schurovi formi.

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 22 / 36 Lema Matrika A k pri QR iteraciji je enaka A k = Z T k AZ k, kjer je Z k matrika, ki jo dobimo v ortogonalni iteraciji, z začetkom Z 0 = I. Torej v primeru, ko imajo lastne vrednosti paroma različne absolutne vrednosti, A k konvergira proti Schurovi formi matrike A, brž ko so glavne podmatrike X (1 : p; 1 : p), p = 1,..., n matrike lastnih vektorjev X neizrojene. Dokaz. Pogoj matriki X zagotavlja, da je matrika X 1 (1 : p; 1 : p) neizrojena in po predpostavki za lastne vrednost ortogonalna iteracija z začetkom Z 0 = I n konvergira k podprostoru L({x 1,..., x p }) za vsak p, 1 p n. Treba je pokazati še A k = Zk T AZ k. Uporabimo indukcijo po k. Na začetku je A 0 = Z0 T AZ 0 = A in trditev velja, saj je Z 0 = I. Denimo, da je A k = Zk T AZ k. Potem je ) = Z T k Z k+1 = Q k R k. A k = Z T k AZ k = Z T k ( Zk+1 U k+1 }{{} QRrazcep AZ k } {{ } ort. U k+1 }{{} zg.trik. Zaradi enoličnosti (do diagonalne matrike z elementi ±1) je to kar QR razcep matrike A k. Odtod ugotovimo A k+1 = R k Q k = U k+1 Zk T Z k+1 = Zk+1AZ T T k Zk Z k+1 = Z }{{} k+1az T k+1. U k+1

K uporabni obliki QR metode B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 23 / 36 Metoda QR v predstavljeni obliki je potratna. Hitrost konvergence je λ odvisna od razmerij p λ p+1. Vsak korak iteracije zahteva O ( n 3) operacij. Koraki v zmanjšanje časovne zahtevnosti Število operacij posameznega koraka lahko zmanjšamo, če skrčimo zahtevnost razcepa QR. To pomeni, da je treba poiskati podobnostno (ortogonalno zaradi stabilnosti) transformacijo, ki matriko preoblikuje tako, da je korak QR hitrejši, hkrati pa to obliko iteracija ohranja. Pokaže se, da na začetku poiščemo ortogonalno matriko Q, da je Q T AQ zgornja Hessenbergova (A A T ) oziroma tridiagonalna matrika (A = A T ). Pokaže se tudi, da se ta oblika ohranja. Hitrost konvergence lahko pospešimo s premiki, ki smo jih spoznali pri inverzni iteraciji.

Redukcija na Hessenbergovo obliko ( ) A = ( ) ( ). ( ) Poiščemo ortogonalno Q 1, da je Q 1A = 0 0, A1 = Q1AQT 1 = 0 ( ) 0 ( ). 0 0 ( ) Nato poiščemo ortogonalno Q 2, da je Q 2A 1 = 0 0 0, A2 = Q2A1QT 2 = 0 0 0 ( ), 0 0 0 0 ( ) na koncu pa še ortogonalno Q 3, da je Q 3A 2 = 0 0 0, H = Q3A2QT 3 = 0 0 0 0 0 0 0 0 0 Tako smo dobili H = Q 3Q 2Q 1A(Q 3Q 2Q 1) T. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 24 / 36

Redukcija na Hessenbergovo obliko B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 25 / 36 Algoritem za redukcijo na Hessenbergovo obliko s Householderjevimi zrcaljenji je: Q = I ; { Če potrebujemo Q. } za i = 1,..., n 2 določi w i R n i, tako da P i prezrcali A(i + 1 : n i) v ±ke 1 ; A(i + 1 : n, i : n) = P i A(i + 1 : n, i : n); A(1 : n, i + 1 : n) = A(1 : n, i + 1 : n)p i ; Q(i + 1 : n, i : n) = P i Q(i + 1 : n, i : n); { Če potrebujemo Q. } Število operacij je 10 3 n3 + O(n 2 ) oziroma 14 3 n3 + O(n 2 ) če potrebujemo tudi Q.

Hessenbergova oblika se ohranja B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 26 / 36 Izrek Če je A zgornja Hessenbergova, se oblika med QR iteracijo ohranja, tudi če uporabljamo premike. Dokaz. Naj bo A k zgornje Hessenbergove oblike in σ k premik, ki ga uporabimo na k-tem koraku. Razcep QR = A k σ k I da matriko Q, ki je tudi zgornje Hessenbergove oblike, saj ima i-ti stolpec matrike P i na mestih i + 2, i + 3,..., n ničelne elemente, kot jih ima po predpostavki A k σ k I. Zato je matrika RQ + σ k I tudi zgornja Hessenbergova. Če na začetku A reduciramo na Hessenbergovo obliko, porabimo za en korak QR iteracije le še O(n 2 ) namesto O(n 3 ) operacij.

Ireducibilna matrika Definicija Hessenbergova matrika H je ireducibilna, če so vsi njeni subdiagonalni elementi h i+1,i neničelni. Če je H reducibilna, je npr. oblike H = 0 0 0 0 0 0 0 in problem lastnih vrednosti razpade na dva ločena problema. Zaradi tega lahko vedno predpostavimo, da je H ireducibilna. Če ni, iščemo lastne vrednosti vsakega ireducibilnega dela zase. Naj bo H = [h ij ] n i,j=1 zgornja Hessenbergova matrika in h r+1,r = 0, za nek 1 r n. Ker je ( ) ( ) det (H λi n ) = det [h ij ] r i,j=1 λi r det [h ij ] n i,j=r+1 λi n r, lastne vrednosti iščemo za vsako od podmatrik [h ij ] r i,j=1 in [h ij] n i,j=r+1 posebej. B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 27 / 36

Premiki B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 28 / 36 Konvergenco lahko pospešimo s premiki: A 0 = A; za k = 0, 1,... izberi premik σ k ; A k σ k I = Q k R k ; { Izračunamo QR razcep.} A k+1 = R k Q k + σ k I ; Lastne vrednosti se ohranjajo Matriki A k in A k+1 pri iteraciji QR s premikom sta ortogonalno podobni, saj tako kot prej velja A k+1 = R k Q k + σ k I = Q T k (Q k R k + σ k I ) Q k = Q T k A k Q k.

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 29 / 36 Za hitro konvergenco moramo za premik izbrati čim boljši približek za lastno vrednost. Če bi za premik izbrali kar lastno vrednost, potem iz naslednje leme sledi, da bi se v enem koraku QR iteracije iz matrike izločila ta lastna vrednost in bi računanje lahko nadaljevali na manjši matriki. Lema Če je σ lastna vrednost ireducibilne Hessenbergove matrike A in A σi = QR, B = RQ + σi, potem je b n,n 1 = 0 in b nn = σ. Dokaz. Ker je A ireducibilna, je prvih n 1 stolpcev matrike A σi linearno neodvisnih. V razcepu A σi = QR zato velja r ii 0, i = 1,..., n 1. Ker pa je A σi singularna, mora biti r nn = 0. To pa pomeni, da je zadnja vrstica v matriki RQ enaka 0, torej v matriki B = RQ + σi velja b n,n 1 = 0 in b nn = σ. Preostale lastne vrednosti lahko sedaj izračunamo iz matrike B(1 : n 1, 1 : n 1).

Enojni in dvojni premik B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 30 / 36 a) enojni premik: Za σ k izberemo a (k) nn. V tem primeru imamo kvadratično konvergenco v bližini lastne vrednosti, vendar premik ni dober za kompleksne lastne vrednosti. b) dvojni premik: Vzamemo lastni vrednosti σ (k) 1, σ(k) 2 (lahko tudi kompleksni) podmatrike [ a (k) n 1,n 1 a (k) n,n 1 ] a (k) n 1,n a nn (k) in naredimo dva premika v enem koraku: A k σ (k) 1 I = Q kr k (izračunamo QR razcep) A k = R k Q k + σ (k) 1 I A k σ (k) 2 I = Q kr k (izračunamo QR razcep) A k+1 = R kq k + σ (k) 2 I Ko (približno) najdemo eno lastno vrednost, nadaljujemo računanje z manjšo podmatriko.

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 31 / 36 Izkaže se, da kompleksna aritmetika ni potrebna, saj je A k+1 = U T k A ku k, kjer je U k ortogonalna matrika iz razcepa QR realne matrike N k := A 2 k (σ (k) 1 + σ (k) 2 )A k + σ (k) 1 σ(k) 2 I. Res, Q k Q kr kr k = Q k ( A k σ (k) = Q k Q H k = ) 2 I R k ( ) A k σ (k) 2 I Q k R k = ( ) ( ) A k σ (k) 2 I A k σ (k) 1 I = A 2 k (σ (k) 1 + σ (k) 2 )A k + σ (k) 1 σ(k) 2 I. ( A k σ (k) 2 I ) Q k R k Torej je (Q k Q k ) (R k R k) razcep QR realne matrike N k. Na prvi pogled nam to ne pomaga dosti, saj v formuli za N k nastopa matrika A 2 k. Za izračun le te pa potrebujemo O ( n 3) operacij. Kot bomo videli, v resnici potrebujemo le prvi stolpec matrike N k, katerega izračun zahteva le O ( n 2) operacij.

Implicitna metoda QR B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 32 / 36 Izrek (Q-izrek) Če je Q = [q 1 q n ] takšna ortogonalna matrika, da je Q T AQ = H ireducibilna Hessenbergova matrika, potem so stolpci q 2,, q n do predznaka natančno določeni s q 1. Dokaz. Naj bo Q T AQ = H in V T AV = G, kjer je V = [v 1 v n ] ortogonalna matrika, G ireducibilna Hessenbergova matrika in v 1 = q 1. Potem je W := V T Q ortogonalna matrika. Če jo zapišemo po stolpcih W = [w 1 w n ], je w 1 = e 1. Velja GW = GV T Q = V T AQ = V T QH = WH. Odtod Gw i = i+1 j=1 h jiw j in h i+1,i w i+1 = Gw i i j=1 h jiw j. Ker je w 1 = e 1 in G zgornja Hessenbergova matrika, po indukciji sledi, da ima w i neničelne elemente kvečjemu v prvih i vrsticah. Torej mora biti W zgornja trikotna matrika. Ker pa je hkrati tudi ortogonalna, je to mogoče le, če je W = diag(1, ±1,..., ±1), torej v i = ±q i.

Posledica Q-izreka B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 33 / 36 Če v koraku algoritma QR, A k = Q k R k, A k+1 = R k Q k = Q T k A kq k poznamo prvi stolpec matrike Q k, lahko izračunamo matriko A k+1, ne da bi računali celoten QR razcep matrike A k. Tako dobimo implicitno QR iteracijo. Kakšne predznake stolpcem matrike Q k izberemo, ni pomembno. Če izračunamo razcep A k σ k I = Q k R k, vse druge dobimo z Q k R k = (Q k S k )(S k R k ), za neko matriko S k = diag(±1,..., ±1). Odtod A k+1 = (S k R k )(Q k S k ) + σ k I = S k (Q k R k + σ k I )S k in so si vse A k+1 diagonalno podobne. Imajo torej iste lastne vrednosti, razlikujejo se le v predznakih vrstic in stolpcev. Posledica Q-izreka Ker je morata prva stolpca matrik A k σ k I in Q k R k enaka, moramo za izračun A k+1 = Q T k A kq k - izbrati prvi stolpec matrike Q k, tako, da je vzporeden prvemu stolpcu matrike A k σ k I, - določiti druge stolpce matrike Q k tako, da bo Q k ortogonalna in A k+1 zgornja Hessenbergova matrika.

Implicitna metoda QR z enojnim premikom B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 34 / 36 Poglejmo implicitno QR iteracijo z enojnim premikom. Vemo, da je prvi stolpec Q k enak normiranemu prvemu stolpcu matrike A k σ k I. Če uspemo poiskati tako ortogonalno matriko Q k, ki bo imela za prvi stolpec normirani prvi stolpec A k σ k I in bo Qk T A kq k zgornja Hessenbergova matrika, potem je po Q-izreku matrika Qk T A kq k enaka matriki iz naslednjega koraka metode QR. Matriko Q k poiščemo kot produkt Givensovih rotacij Q k = R 12 R 23 R n 1,n. Prva rotacija R 12 je že določena s prvim stolpcem A k σ k I, c 1 s 1 s 1 c 1 R12 T = 1,... 1 to pomeni da moramo za [c 1, s 1, 0,..., 0] T izbrati normiran vektor [a 11 σ k, a 21, 0,..., 0] T. Ostale pa določimo tako, da bo A k+1 = Q T k A kq k zgornja Hessenbergova matrika.

Premikanje grbe B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 35 / 36 Poglejmo si korake na primeru matrike velikosti 5 5. Po prvem koraku dobimo R12A T k R 12 = +. Pri tem je na nepravem mestu nastal nov neničelni element, označen s +. Imenujemo ga grba in ga z naslednjimi rotacijami pomikamo navzdol. Drugi korak da 1 R23 T = c 1 s 1 s 1 c 1 1, RT 23R12A T k R 12 R 23 = +. 1

B. Plestenjak, J.Kozak: Uvod v numerične metode 2011-2012 36 / 36 Na tretjem koraku dobimo 1 1 R34 T = c 1 s 1 s 1 c 1, RT 34R23R T 12A T k R 12 R 23 R 34 =. 1 + Končno dobimo c 1 s 1 Q k = R 12 R 23 R 34 R 45 = s 2 s 3, s 4 A k+1 = Qk T A k Q k = R45R T 34R T 23R T 12A T k R 12 R 23 R 34 R 45 =.