Numerične metode 2 (finančna matematika)

Σχετικά έγγραφα
13. Jacobijeva metoda za računanje singularnega razcepa

Problem lastnih vrednosti 1 / 20

Problem lastnih vrednosti

8. Posplošeni problem lastnih vrednosti

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

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

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

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. 21. november Gregor Dolinar Matematika 1

11. Posplošeni problemi lastnih vrednosti

Tretja vaja iz matematike 1

Lastne vrednosti in lastni vektorji

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

Reševanje sistema linearnih

Splošno o interpolaciji

Funkcije. Matematika 1. Gregor Dolinar. Fakulteta za elektrotehniko Univerza v Ljubljani. 12. 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

Osnove linearne algebre

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

Navadne diferencialne enačbe

Dragi polinom, kje so tvoje ničle?

KODE ZA ODKRIVANJE IN ODPRAVLJANJE NAPAK

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

Analiza 2 Rešitve 14. sklopa nalog

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

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

3.1 Reševanje nelinearnih sistemov

Kvadratne forme. Poglavje XI. 1 Definicija in osnovne lastnosti

Uvod v numerične metode (matematika)

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

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

5.1 Predpogojevanje. K 1 Ax = K 1 b,

Oznake in osnovne definicije

8. Navadne diferencialne enačbe

11.5 Metoda karakteristik za hiperbolične PDE

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

IZPIT IZ ANALIZE II Maribor,

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

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

Funkcije več spremenljivk

Uvod v numerične metode

Poglavje 2. Sistemi linearnih enačb

Osnove matematične analize 2016/17

Reševanje sistemov linearnih enačb

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

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

Uvod v numerične metode

Kotne in krožne funkcije

Matematika 2. Diferencialne enačbe drugega reda

Inverzni problem lastnih vrednosti evklidsko razdaljnih matrik

Uporabna matematika za naravoslovce

diferencialne enačbe - nadaljevanje

Izpeljava Jensenove in Hölderjeve neenakosti ter neenakosti Minkowskega

Navadne diferencialne enačbe

DISKRETNA FOURIERJEVA TRANSFORMACIJA

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

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

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

Tema 1 Osnove navadnih diferencialnih enačb (NDE)

Delovna točka in napajalna vezja bipolarnih tranzistorjev

Booleova algebra. Izjave in Booleove spremenljivke

Vektorski prostori s skalarnim produktom

Poliedri Ines Pogačar 27. oktober 2009

vezani ekstremi funkcij

UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO MATEMATIKA II

Matematika. Funkcije in enačbe

Algebraične strukture

II. LIMITA IN ZVEZNOST FUNKCIJ

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

Lastne vrednosti in vektorji

VEKTORJI. Operacije z vektorji

1. Trikotniki hitrosti

Spoznajmo sedaj definicijo in nekaj osnovnih primerov zaporedij števil.

α i y n i + h β i f n i = 0, Splošni nastavek je k

Elementi spektralne teorije matrica

Zbirka rešenih izpitnih nalog iz numeričnih metod

1 Fibonaccijeva stevila

Iterativne numerične metode v linearni algebri

1. Definicijsko območje, zaloga vrednosti. 2. Naraščanje in padanje, ekstremi. 3. Ukrivljenost. 4. Trend na robu definicijskega območja

Na pregledni skici napišite/označite ustrezne točke in paraboli. A) 12 B) 8 C) 4 D) 4 E) 8 F) 12

INTEGRALI RACIONALNIH FUNKCIJ

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

Kotni funkciji sinus in kosinus

Interpolacija in aproksimacija funkcij

Gimnazija Krˇsko. vektorji - naloge

Funkcija je predpis, ki vsakemu elementu x iz definicijskega območja D R priredi neko število f (x) R.

ZBIRKA REŠENIH NALOG IZ MATEMATIKE II

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

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

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

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

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

1 Seštevanje vektorjev in množenje s skalarjem

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

INŽENIRSKA MATEMATIKA I

Afina in projektivna geometrija

UNIVERZA V MARIBORU FAKULTETA ZA KEMIJO IN KEMIJSKO TEHNOLOGIJO MATEMATIKA III

Transcript:

Bor Plestenjak Numerične metode 2 (finančna matematika) delovna verzija verzija:. februar 203

Kazalo Nesimetrični problem lastnih vrednosti 5. Uvod............................................ 5.2 Schurova forma...................................... 6.3 Teorija motenj....................................... 9.4 Potenčna metoda..................................... 4.5 Obratna napaka in izračunljive ocene......................... 7.6 Inverzna iteracija..................................... 8.7 Ortogonalna iteracija................................... 8.8 QR iteracija......................................... 20.8. Redukcija na Hessenbergovo obliko...................... 2.8.2 Premiki....................................... 23.9 Implicitna QR metoda.................................. 25 2 Simetrični problem lastnih vrednosti 29 2. Uvod............................................ 29 2.2 Rayleighova iteracija................................... 33 2.3 QR iteracija za simetrični lastni problem........................ 35 2.4 Sturmovo zaporedje................................... 37 2.5 Deli in vladaj........................................ 39 2.6 Jacobijeva metoda..................................... 44 2.7 Relativno robustne reprezentacije............................ 46 2.7. Zasukani razcep................................. 47 2.7.2 Relativno robustna reprezentacija matrike.................. 49 2.7.3 Večkratne relativno robustne reprezentacije.................. 50 3 Posplošitve problema lastnih vrednosti 52 3. Posplošeni problem lastnih vrednosti......................... 52 3.2 QZ algoritem....................................... 54 3.3 Definiten matrični šop.................................. 57 3.4 Nelinearni problem lastnih vrednosti.......................... 58 3.4. Newtonova metoda in inverzna iteracija................... 60 3.4.2 Zaporedne linearne aproksimacije....................... 6 3.5 Polinomski (kvadratni) problem lastnih vrednosti.................. 62 3.5. Hermitski kvadratni problem lastnih vrednosti................ 63 3.6 Računanje singularnega razcepa............................ 65 3.7 QR iteracija za računanje singularnega razcepa.................... 68 3.8 dqds metoda........................................ 69 3.9 Enostranska Jacobijeva metoda za singularni razcep................. 72 3.9. Lastni razcep simetrične pozitivno definitne matrike............ 77 2

4 Enakomerna aproksimacija 79 4. Aproksimacija....................................... 79 4.2 Enakomerna aproksimacija s polinomi......................... 80 4.3 Ekonomizacija Čebiševa................................. 82 5 Interpolacija 87 5. Uvod............................................ 87 5.2 Interpolacijski polinom.................................. 87 5.3 Deljene diference..................................... 9 5.4 Interpolacija s kosoma polinomskimi funkcijami................... 95 5.5 Beziérove krivulje..................................... 99 5.6 Numerično odvajanje................................... 02 5.7 Drugi načini izpeljave.................................. 03 5.8 Celotna napaka...................................... 04 6 Numerično odvajanje in integriranje 07 6. Numerično odvajanje................................... 07 6.2 Kvadraturne formule................................... 6.3 Newton Cotesova pravila................................ 2 6.4 Neodstranljiva napaka.................................. 4 6.5 Sestavljene formule.................................... 5 6.6 Peanov izrek........................................ 6 6.7 Richardsonova ekstrapolacija.............................. 8 6.8 Adaptivne metode.................................... 9 6.9 Rombergova metoda................................... 20 6.0 Gaussove kvadraturne formule............................. 23 6. Izlimitirani integrali.................................... 28 6.2 Večdimenzionalni integrali................................ 29 6.3 Metoda Monte Carlo................................... 30 6.4 Numerično integriranje v Matlabu........................... 3 6.5 Numerično seštevanje vrst................................ 32 7 Diferencialne enačbe 34 7. Uvod............................................ 34 7.2 Obstoj rešitve, občutljivost in stabilnost........................ 36 7.2. Občutljivost rešitve začetnega problema.................... 36 7.2.2 Stabilnost rešitve začetnega problema..................... 37 7.3 Enokoračne metode.................................... 37 7.3. Eulerjeva metoda................................. 37 7.3.2 Taylorjeva vrsta.................................. 39 7.3.3 Runge-Kutta metode............................... 4 7.3.4 Adaptivna ocena koraka............................. 42 7.4 Stabilnost in konvergenca enokoračnih metod.................... 44 7.5 Večkoračne metode.................................... 46 7.6 Inherentna in inducirana nestabilnost......................... 48 7.7 Začetni problemi drugega reda............................. 50 7.8 Reševanje začetnih diferencialnih enačb v Matlabu.................. 5 7.9 Implicitno podane diferencialne enačbe........................ 54 7.0 Metoda zveznega nadaljevanja............................. 54

7. Robni problemi drugega reda.............................. 55 7.. Linearni robni problem............................. 56 7..2 Nelinearni robni problem............................ 58 7..3 Prevedba na variacijski problem........................ 59 7.2 Reševanje robnih problemov v Matlabu........................ 60

Poglavje Nesimetrični problem lastnih vrednosti. Uvod Dana je matrika A R n n. Če neničelen vektor x C n in skalar λ C zadoščata enačbi Ax = λx, potem je λ lastna vrednost, x pa (desni) lastni vektor matrike A. Neničelen vektor y C n, za katerega velja y H A = λy H, je levi lastni vektor matrike A. Levi in desni lastni vektorji, ki pripadajo različnim lastnim vrednostim, so med seboj ortogonalni, saj velja naslednja lema. Lema. Naj bosta λ in µ različni lastni vrednosti matrike A. Če je x desni lastni vektor, ki pripada λ, y pa levi lastni vektor, ki pripada µ, potem sta x in y ortogonalna. Dokaz. Enakost Ax = λx pomnožimo z leve z y H, enakost y H A = µy H pa z desne z x. Dobimo y H Ax = λy H x = µy H x, to pa je zaradi λ = µ lahko izpolnjeno le v primeru, ko je y H x = 0. V posebnem primeru, ko je matrika A simetrična, iz zgornje leme sledi, da so lastni vektorji, ki pripadajo različnim lastnim vrednostim, paroma ortogonalni. To je posledica tega, da so za simetrično matriko desni lastni vektorji enaki levim. Pri algoritmih za računanje lastnih vektorjev zadošča, da obravnavamo le desne lastne vektorje. Namreč, če je y levi lastni vektor matrike A za lastno vrednost λ, potem je y desni lastni vektor matrike A H za lastno vrednost λ. Pravimo, da se da matriko A diagonalizirati, če obstajata nesingularna matrika X = [x x n ] in diagonalna matrika Λ = diag(λ,..., λ n ), da je A = XΛX. V tem primeru je Ax i = λ i x i za i =,..., n, kar pomeni, da so stolpci matrike X lastni vektorji, na diagonali matrike Λ pa ležijo lastne vrednosti. Če je S nesingularna matrika, potem pravimo, da sta matriki A in B = S AS podobni. V tem primeru imata A in B iste lastne vrednosti. Velja, da je x desni lastni vektor za matriko A natanko tedaj, ko je S x desni lastni vektor za matriko B. Lastne vrednosti matrike A so ničle karakterističnega polinoma p(λ) = det(a λi). Vsaka n n matrika A ima tako n lastnih vrednosti λ,..., λ n, pri čemer večkratne ničle štejemo 5

Bor Plestenjak - Numerične metode (verzija:. februar 203) 6 večkrat. Če je λ lastna vrednost matrike A, potem je njena algebraična večkratnost enaka večkratnosti λ kot ničle karakterističnega polinoma matrike A, geometrijska večkratnost pa je enaka dimenziji podprostora ker(a λi) in je vedno manjša ali enaka algebraični večkratnosti. Če je algebraična večkratnost lastne vrednosti ena, potem pravimo, da je lastna vrednost enostavna. Ker se ničel splošnega polinoma stopnje pet ali več ne da izračunati drugače kot numerično, to velja tudi za lastne vrednosti in direktne metode za računanje lastnih vrednosti ne obstajajo. Lastne vrednosti tako vedno računamo z iterativnimi postopki. Računanje lastnih vrednosti preko ničel eksplicitno izračunanega karakterističnega polinoma v splošnem ni priporočljivo. Algoritmi za računanje koeficientov karakterističnega polinoma namreč niso stabilni, vemo pa, da so ničle polinoma lahko zelo občutljive na motnje koeficientov, kot kaže npr. Wilkinsonov primer iz zgleda??. Zgled. Pri eksplicitni uporabi karakterističnega polinoma lahko izgubimo natančnost. Naj bo [ ] ǫ A = ǫ za ǫ = u/2, kjer je u osnovna zaokrožitvena napaka. Če izračunamo karakteristični polinom, potem zaradi zaokroževanja dobimo det(a λi) = λ 2 2λ +. Na ta način bi izračunali dvojno lastno vrednost, pravi lastni vrednosti matrike A pa sta ǫ in + ǫ. Računanje lastnih vrednosti preko eksplicitno izračunanega karakterističnega polinoma torej ni numerično stabilno. V nadaljevanju bomo spoznali več različnih stabilnih algoritmov za izračun lastnih vrednosti in vektorjev..2 Schurova forma Vemo, da za vsako n n matriko A obstajata taka nesingularna matrika X in bločno diagonalna matrika J = diag(j,..., J k ), ki ji pravimo Jordanova forma, da je X AX = J, kjer je λ i. λ.. J i = i... λi Jordanova kletka velikosti m i m i za i =,..., k in n = m + + m k. Jordanova forma pove veliko o matriki A. Iz nje lahko npr. preberemo vse lastne vrednosti matrike in njihove algebraične in geometrijske večkratnosti. Zelo pomembna je tudi za računanje vrednosti funkcij matrik. Tako ima npr. rešitev sistema diferencialnih enačb s konstantnimi koeficienti y (t) = Ay(t) obliko y(t) = y(t 0 )e A(t t 0). Za rešitev je potrebno znati izračunati matriko e A, ki je definirana z razvojem v vrsto e A = j! Aj. j=0 Francoski matematik Marie Ennemond Camille Jordan (838 922) jo je objavil leta 870.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 7 Če je funkcija f definirana in dovoljkrat zvezno odvedljiva v lastnih vrednostih matrike A, potem s pomočjo Jordanove forme A = XJX velja enakost f(a) = X f(j)x, kjer je f(j) = diag( f(j ),..., f(j k )) in za i =,..., k. f(λ i ) f (λ i ). f(j i ) = f(λ i )...... f (λ i ) f(λ i ) f (m i ) (λ i ) (m i )! Na žalost je Jordanova forma zelo občutljiva in neprimerna za numerično računanje. Ker ni zvezna funkcija elementov matrike A, jo lahko v primeru večkratnih lastnih vrednosti majhne motnje popolnoma spremenijo. Zato računanje funkcij matrik preko Jordanove forme ni stabilno. Zgled.2 Matrika 0...... A =... 0 je že kar v Jordanovi formi z eno samo kletko n n, za poljuben ǫ > 0 pa ima Jordanova forma matrike 0...... A(ǫ) =... ǫ 0 n kletk velikosti z lastnimi vrednostmi n ǫ. Računanje Jordanove forme tudi ni obratno stabilno. Denimo, da smo za matriko A numerično izračunali X in J. Sedaj nas zanima, ali je X (A + δa) X = J za neko matriko δa, ki je blizu 0. Pri tem predpostavimo, da je X točna, za J pa velja J = J + δj. Iz X (A + δa)x = J + δj sledi X δax = δj, od tod pa lahko ocenimo δa X X δj = κ(x) δj. Ker je v splošnem občutljivost κ(x) lahko poljubno velika, računanje Jordanove forme ni obratno stabilno. Za stabilnost bi bilo bolje, če bi bila prehodna matrika X kar unitarna. Izkaže se, da z unitarno podobnostno transformacijo lahko matriko na stabilen način transformiramo v zgornjo trikotno matriko. Izrek.2 (Schur) 2 Za vsako matriko A obstajata unitarna matrika U in zgornja trikotna matrika T, da je U H AU = T. 2 Izrek je leta 909 zapisal nemški matematik Issai Schur (875 94), ki je znan tudi po svojih rezultatih iz teorije grup. S svojim mentorjem Frobeniusom sta bila med prvimi, ki so se ukvarjali s teorijo matrik.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 8 Razcep A = UTU H iz zgornjega izreka imenujemo Schurov razcep, samo zgornjo trikotno matriko T pa Schurova forma. Vemo, da ima realna matrika lahko kompleksne lastne vrednosti in vektorje, ki nastopajo v konjugiranih parih. Zaradi tega sta matriki T in U iz Schurovega razcepa tudi za realno matriko lahko kompleksni. Dokaz. Naredimo indukcijo po n. Za n = izrek očitno velja, saj vzamemo U = [] in T = A. Predpostavimo, da izrek velja za n in ga dokažimo za n. Naj bo λ lastna vrednost matrike A in x njen normiran lastni vektor. Obstaja taka unitarna matrika U, da je U e = x (skonstruiramo jo lahko npr. kar s kompleksnim Householderjevim zrcaljenjem). Matrika B = U HAU ima obliko [ n ] B = λ, n 0 C saj je Be = U HAU e = U HAx = UH λx = λe. Po indukcijski predpostavki obstaja Schurova forma za (n ) (n ) matriko C. Torej obstaja taka unitarna matrika V, da je V HCV = T zgornja trikotna matrika. Sedaj je [ ] [ ] [ ] 0 0 λ 0 V H B = 0 V 0 T }{{}}{{} V H V zgornja trikotna matrika in V H U H }{{} U H A U V je Schurova forma matrike A. }{{} U Tako kot Jordanova tudi Schurova forma ni enolična, saj je npr. vrstni red diagonalnih elementov λ i lahko poljuben. V primeru realne matrike se lahko izognemo kompleksnim matrikam, če dopustimo, da v Schurovem razcepu namesto zgornje trikotne matrike dobimo kvazi zgornjo trikotno matriko. Ta ima na diagonali lahko bloke 2 2, v katerih so skriti konjugirani pari kompleksnih lastnih vrednosti. Izrek.3 Za vsako realno matriko A obstajata ortogonalna matrika Q in kvazi zgornja trikotna matrika T, da je Q T AQ = T (realna Schurova forma). Dokaz. Spet uporabimo indukcijo. Če je λ R, lahko nadaljujemo tako kot pri dokazu izreka.2, zato predpostavimo, da velja λ R. Potem imamo poleg lastnega para (λ, x) tudi lastni par (λ, x). Če definiramo realna vektorja x R = (x + x), 2 x I = (x x), 2i potem obstaja taka ortogonalna matrika U = 2 n 2 [ U U 2 ],

Bor Plestenjak - Numerične metode (verzija:. februar 203) 9 da je Lin(U ) = Lin({x R, x I }) = Lin({x, x}). Ker je Lin(U ) invarianten podprostor za A, velja U T AU = [ 2 n 2 ] 2 B, n 2 0 C kjer sta λ in λ lastni vrednosti 2 2 matrike B, preostale lastne vrednosti pa so v matriki C. Nadaljujemo podobno kot pri dokazu izreka.2..3 Teorija motenj Kot pri ostalih problemih, bi tudi tu radi vedeli, koliko so občutljive lastne vrednosti in lastni vektorji. Zanima nas, kaj se z njimi dogaja, ko matriko zmotimo. Vemo, da so lastne vrednosti zvezne funkcije elementov matrike, saj so ničle karakterističnega polinoma, ničle polinoma pa so zvezne funkcije koeficientov polinoma. Če se da matriko diagonalizirati, potem naslednji izrek pove, da je sprememba lastnih vrednosti omejena z občutljivostjo matrike lastnih vektorjev. Izrek.4 (Bauer Fike) 3 Predpostavimo, da se da matriko A diagonalizirati kot A = XΛX, kjer je Λ = diag(λ,..., λ n ) diagonalna matrika lastnih vrednosti. Potem vse lastne vrednosti matrike A + ǫe ležijo v uniji n krogov K i = {z C : z λ i ǫκ(x) E }, i =,..., n, kjer za normo lahko vzamemo katerokoli izmed norm.,. 2 ali.. Dokaz. Naj bo λ(ǫ) lastna vrednost matrike A + ǫe. Predpostavimo lahko, da se λ(ǫ) razlikuje od vseh lastnih vrednosti λ,..., λ n, saj sicer izrek očitno drži. Matrika A + ǫe λ(ǫ)i je singularna. Zapišemo lahko X (A + ǫe λ(ǫ)i)x = Λ λ(ǫ)i + ( ǫx EX ) = (Λ λ(ǫ)i) I + ǫ(λ λ(ǫ)i) X EX. Ker je matrika Λ λ(ǫ)i nesingularna, mora biti I + ǫ(λ λ(ǫ)i) X EX singularna matrika. To pomeni (uporabimo lemo??), da je Iz sledi ǫ(λ λ(ǫ)i) X EX ǫ (Λ λ(ǫ)i) X E X. (Λ λ(ǫ)i) = min i=,...,n λ i λ(ǫ) min λ i λ(ǫ) ǫκ(x) E. i=,...,n 3 Rezultat sta leta 960 objavila nemški matematik Friedrich Ludwig Bauer (r. 924) in Charles Theodore Fike. Bauer je znan predvsem po svojem delu na področju računalništva, kjer je vpeljal podatkovno strukturo sklad, pomembno pa je tudi sodeloval pri razvoju prvih programskih jezikov v 60. letih prejšnjega stoletja.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 0 Opomba. Če unija krogov razpade na povezane komponente, potem iz zveznosti lastnih vrednosti sledi, da vsaka komponenta vsebuje natanko toliko lastnih vrednosti, kolikor krogov jo sestavlja. V primeru, ko je matrika simetrična, lahko lastne vektorje izberemo tako, da tvorijo ortonormirano bazo. Spektralna občutljivost matrike lastnih vektorjev je potem in iz Bauer Fikeovega izreka dobimo naslednjo posledico. Posledica.5 Če sta matriki A in E simetrični, potem pri predpostavkah izreka.4 za vsako lastno vrednost λ(ǫ) matrike A + ǫe velja min λ(ǫ) λ i ǫ E 2. i=,...,n Bauer Fikeov izrek je ponavadi preveč splošen, saj za motnje vseh lastnih vrednosti uporabi isto zgornjo mejo. V resnici so lahko posamezne lastne vrednosti bolj občutljive od ostalih. Naslednji izrek pove, od česa je odvisna občutljivost enostavne lastne vrednosti. Izrek.6 Naj bo λ i enostavna lastna vrednost matrike A z normiranima levim in desnim lastnim vektorjem y i in x i. Če je λ i + δλ i ustrezna lastna vrednost zmotene matrike A + δa, potem velja λ i + δλ i = λ i + yh i δax i y H i x i + O( δa 2 ). Izraz ustrezna lastna vrednost v zgornjem izreku pomeni, da si izberemo tisto lastno vrednost zmotene matrike, za katero velja lim δa 0 (δλ i ) = 0. Dokaz. Velja Ax i = λ i x i in (A + δa)(x i + δx i ) = (λ i + δλ i )(x i + δx i ), kjer smo z x i + δx i označili lastni vektor zmotene matrike. Če zanemarimo člene (od tod na koncu dobimo O( δa 2 )), ki vsebujejo produkte dveh majhnih popravkov in pomnožimo enačbo z leve z yi H, dobimo δλ i = yh i δax i y H i x i. Definicija.7 Naj bo λ i enostavna lastna vrednost, x i in y i pa pripadajoča desni in levi lastni vektor. Če definiramo yi H x i s i :=, x i 2 y i 2 potem je s i občutljivost enostavne lastne vrednosti λ i. Če je λ i večkratna lastna vrednost, je njena občutljivost neskončna. Če je matrika A simetrična, potem imajo vse enostavne lastne vrednosti najmanjšo možno občutljivost, saj so levi lastni vektorji enaki desnim. Zgled.3 Matrika A = 49 50 54 537 80 546 27 9 25

Bor Plestenjak - Numerične metode (verzija:. februar 203) ima eksaktne lastne vrednosti, 2, 3. V Matlabu z ukazom µ, ki uporablja obratno stabilen algoritem, ter z računanjem v dvojni natančnosti, dobimo λ =.00000000000722 λ 2 =.99999999999790 λ 3 = 2.999999999997399. Matrika Godunova 4 A 2 = 289 2064 336 28 80 32 6 52 30 32 52 288 28 32 29 2000 756 384 008 224 48 52 28 640 0 640 52 28 053 2256 504 384 756 800 208 287 6 72 28 968 30 2032 276 287 565 52 54 52 289 ima eksaktne lastne vrednosti 4, 2,, 0,, 2, 4. V tem primeru Matlab izračuna naslednje približke za lastne vrednosti: λ = 5.0968 +.8932i λ 2 = 5.0968.8932i λ 3 =.257 + 4.3784i λ 4 =.257 4.3784i λ 5 = 5.6738 λ 6 = 3.4756 + 3.4463i λ 7 = 3.4756 3.4463i. V obeh primerih so izračunane lastne vrednosti točne lastne vrednosti malo zmotene matrike, saj Matlab uporablja obratno stabilen algoritem. Medtem, ko so lastne vrednosti matrike A izračunane zelo natančno, so med izračunanimi in točnimi lastnimi vrednostmi matrike A 2 zelo velike razlike. Te so posledica tega, da so občutljivosti lastnih vrednosti matrike A 2 velikostnega reda 0 3. Če to primerjamo z matriko A, kjer imajo lastne vrednosti občutljivosti velikostnega reda 0 2, je očitno, da občutljivost lastne vrednosti pomembno vpliva na natančnost izračunanih približkov. V primeru, ko se da matriko diagonalizirati, lahko kaj povemo tudi o občutljivosti lastnih vektorjev. Izrek.8 Naj bo A = XΛX = Y H ΛY H, kjer je X = [x x n ] matrika normiranih desnih lastnih vektorjev, Y = [y y n ] matrika normiranih levih lastnih vektorjev in Λ = diag(λ,..., λ n ) diagonalna matrika lastnih vrednosti. Če je λ i enostavna lastna vrednost in λ i + δλ i ustrezna lastna vrednost zmotene matrike A + δa s pripadajočim lastnim vektorjem x i + δx i, potem velja x i + δx i = x i + n j= j =i y H j δax i (λ i λ j )s j x j + O( δa 2 ). 4 Po ruskem matematiku Sergeju Konstantinoviču Godunovu (r. 929).

Bor Plestenjak - Numerične metode (verzija:. februar 203) 2 Dokaz. Zmoteni lastni vektor lahko izrazimo v bazi lastnih vektorjev matrike A kot x i + δx i = x i + V enakost (A + δa)(x i + δx i ) = (λ i + δλ i )(x i + δx i ) vstavimo zgornji razvoj, jo pomnožimo z leve z yk H, kjer je k = i, nato pa tako kot prej zanemarimo člene, ki vsebujejo produkte dveh majhnih popravkov. Dobimo α k = n j= j =i yh k δax i (λ i λ k )s k, pri čemer smo upoštevali, da je levi lastni vektor y k ortogonalen na vse desne lastne vektorje x j, kjer je k = j. α j x j. Lema.9 Če je λ i enostavna lastna vrednost, potem je s i = 0. Dokaz. Brez škode za splošnost lahko privzamemo, da je i =. Naj bo sedaj s = 0, x 2 = y 2 = pa naj bosta ustrezni levi in desni lastni vektor. U naj bo taka unitarna matrika, da je Ue = x. Potem je matrika B = U H AU oblike (glej dokaz izreka.2) B = [ n ] λ. n 0 C Iz enakosti Ax = λ x, y H A = λ y H in s = y H x = 0 dobimo U H AUe = U H λ x = λ e, (y H U)UH AU = λ (y H U), (.) y H Ue = 0. (.2) Iz (.2) sledi, da je y H U oblike [0 zh ], ko pa to vstavimo v (.), dobimo [0 zh ]B = λ [0 z H ] oziroma z H C = λ z H. Ker je λ lastna vrednost matrike C, ima matrika A vsaj dvojno lastno vrednost λ. V primeru večkratne lastne vrednosti lahko vektorja x i in y i določimo tako, da bosta ortogonalna, ni pa to nujno res za poljubno izbrana lastna vektorja večkratne lastne vrednosti. Izrek.0 Naj bo A = XΛX = Y H ΛY H, kjer je X = [x x n ] matrika normiranih desnih lastnih vektorjev, Y = [y y n ] matrika normiranih levih lastnih vektorjev in Λ = diag(λ,..., λ n ) diagonalna matrika lastnih vrednosti. Potem velja X = s y H. s n y H n.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 3 Dokaz. Y H A = ΛY H, po drugi strani pa X A = ΛX. Od tod sledi, da so stolpci matrike X T levi lastni vektorji. Torej je c y H X =. c n yn H za neke konstante c,..., c n. Zaradi XX = I mora veljati c i = s i. Lema. Matrika ne more imeti natanko ene zelo občutljive lastne vrednosti. Dokaz. Predpostavimo lahko, da so vse lastne vrednosti enostavne, saj v nasprotnem primeru že imamo zelo občutljiv par. Naj bo A = XΛX = Y H ΛY H, kjer je X = [x x n ] matrika normiranih desnih lastnih vektorjev, Y = [y y n ] matrika normiranih levih lastnih vektorjev in Λ = diag(λ,..., λ n ) diagonalna matrika lastnih vrednosti. Po izreku.0 je oziroma X s y H. s n y H n = I n x i yi H = I. s i= i Denimo, da je s največja občutljivost. Ocenimo lahko n s + s j=2 j, od tod pa je očitno, da mora biti vsaj ena izmed preostalih občutljivosti tudi zelo velika. Zgornjo lemo si lahko razlagamo tudi tako, da velika občutljivost lastne vrednosti pomeni, da je blizu večkratne lastne vrednosti, to pa seveda pomeni, da obstaja vsaj še ena taka lastna vrednost. Pri občutljivosti linearnega sistema smo videli, da je recipročna vrednost občutljivosti matrike enaka oddaljenosti od najbližjega singularnega sistema. Podobno tudi sedaj velja, da je občutljivost enostavne lastne vrednosti povezana z oddaljenostjo od najbližje matrike z večkratno lastno vrednostjo. Dokaz naslednjega izreka lahko najdete npr. v [8]. Izrek.2 Naj bo λ enostavna lastna vrednost matrike A z normiranima levim in desnim lastnim vektorjem y in x in naj bo s <, kjer je s = y H x. Potem obstaja matrika A + δa z večkratno lastno vrednostjo λ in δa 2 s A. 2 s 2 Kaj se zgodi z občutljivostjo lastne vrednosti pri podobnostnih transformacijah? Naj bo λ enostavna lastna vrednost matrike A z normiranima levim in desnim lastnim vektorjem y in x.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 4 Naj bo B = S AS, kjer je S nesingularna matrika. Če je s občutljivost λ kot lastne vrednosti matrike B, potem lahko izpeljemo zvezo in ocenimo s s = SH y S x y x s s κ(s) s. κ(s) Občutljivost lastne vrednosti se torej v najboljšem primeru zmanjša za κ(s), v najslabšem primeru pa se za isti faktor poveča. Če je S ortogonalna matrika, potem se občutljivost ne spremeni, zato so tovrstne transformacije stabilne..4 Potenčna metoda Pri prvem algoritmu za računanje lastnih vrednosti in vektorjev ne potrebujemo drugega kot množenje z matriko A. Denimo, da izberemo normiran začetni vektor z 0 in nato za k = 0,,... generiramo vektorje po naslednjem predpisu: y k+ = Az k, z k+ = y k+ y k+. (.3) Dobimo zaporedje normiranih vektorjev z k, za katere se izkaže, da ko gre k proti neskončno, skonvergirajo proti lastnemu vektorju matrike A. Izrek.3 Naj bo λ dominantna lastna vrednost matrike A, kar pomeni λ > λ 2 λ 3 λ n. Potem, za splošen začetni vektor z 0, ko gre k proti neskončnosti, vektorji z k, izračunani po predpisu (.3), po smeri konvergirajo proti lastnemu vektorju za λ. Dokaz. Izrek sicer velja za splošno matriko, dokazali pa ga bomo le za primer, ko se da matriko diagonalizirati. Naj velja A = XΛX, kjer je X = [x x n ] in Λ = diag(λ,..., λ n ). Začetni vektor z 0 lahko razvijemo po lastnih vektorjih kot Potem pri pogoju α = 0 velja z 0 = n α i x i. i= z k = Ak z 0 = α x + α 2 ( λ2 λ ) k x 2 + + α n ( λ n λ ) k x n A k z 0 α x + α 2 ( λ 2 λ ) k x 2 + + α n ( λ n λ ) k x n in z k konvergira v smeri proti x, ko gre k proti neskončnosti. Vidimo, da se da vektor z k izraziti s produktom k-te potence matrike A z vektorjem z 0. Zaradi tega metodo, ki generira vektorje po predpisu (.3), imenujemo potenčna metoda 5. V zadnjem dokazu smo predpostavili: 5 Metodo je vpeljal avstrijski matematik Richard von Mises (883 953) leta 929.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 5 a) α = 0, b) A ima enostavno dominantno lastno vrednost. Pri numeričnem računanju je predpostavka a) v praksi vedno izpolnjena, saj zaokrožitvene napake povzročijo, da je α = 0. Če nimamo na voljo dobrega začetnega približka, je najbolj priporočljivo, da začetni vektor generiramo iz naključnih vrednosti. Pri točki b) se da pokazati, da izrek velja tudi, ko je λ večkratna lastna vrednost. Metoda se da ustrezno predelati (če si zapomnimo in hkrati gledamo zadnje tri približke) tudi za primera: λ = λ 2 > λ 3 in λ = λ 2, λ = λ 2 > λ 3 in λ = λ 2. Vektor z k po smeri konvergira proti lastnemu vektorju za λ. Zaradi tega normiranje vektorja v vsakem koraku v bistvu ni potrebno, izvajamo ga le zato, da pri numeričnem računanju ne pride do prekoračitve (v primeru λ > ) ali podkoračitve (v primeru λ < ). Kako ugotovimo, kdaj je postopek že skonvergiral dovolj blizu rešitve? Ker vektor konvergira po smeri, ne pa tudi po komponentah, pogoj z k+ z k ǫ ni dober. Potrebujemo kriterij, ki nam za dani približek za lastni vektor pove, kako dober približek je to. Tega pa se ne da ugotoviti drugače kot da za približek za lastni vektor poiščemo še približek za lastno vrednost in potem skupaj pogledamo kako dober približek za lastni par imamo. Denimo, da imamo približek x za lastni vektor in iščemo lastno vrednost. Najboljši približek je λ, ki minimizira Ax λx 2, rešitev pa je (uporabimo normalni sistem za predoločeni sistem xλ = Ax) Rayleighov 6 kvocient ki je definiran za x = 0. ρ(x, A) = xh Ax x H x, Za Rayleighov kvocient velja ρ(x, A) = ρ(αx, A) za α = 0. Rayleighov kvocient je torej odvisen le od smeri, ne pa tudi od norme vektorja. Očitno je tudi, da iz Ax = λx sledi ρ(x, A) = λ. Pravilen zaustavitveni kriterij za potenčno metodo je, da za vsak vektor z k izračunamo Rayleighov kvocient ρ k = ρ(z k, A), potem pa pogledamo normo ostanka Az k ρ k z k 2. Če je norma dovolj majhna, je (ρ k, z k ) dober približek za lastni par. Vidimo, da računanje Rayleighovega kvocienta in preverjanje konvergence ne vplivata bistveno na časovno zahtevnost. Glavna operacija, ki jo v vsakem koraku algoritma izvedemo enkrat, je množenje z matriko A. Ta ima v primeru splošne matrike zahtevnost O(n 2 ), ostale operacije pa imajo zahtevnost O(n). Iz dokaza izreka.3 sledi, da je konvergenca potenčne metode linearna. Hitrost konvergence je odvisna od razmerja λ 2. λ Če je razmerje blizu, bo konvergenca počasna, blizu 0 pa hitrejša. 6 John William Strutt (842 99), tretji baron Rayleigha oziroma lord Rayleigh, je bil znani angleški fizik. Leta 904 je za raziskave plinov in odkritje argona prejel Nobelovo nagrado za fiziko. Kvocient je uporabljal pri raziskavah o termoakustiki.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 6 Algoritem. Osnovna varianta potenčne metode. Začetni podatki so matrika A (zadošča funkcija, ki zna za dani vektor x izračunati produkt Ax), normiran vektor z 0 in toleranca ǫ. y = Az 0, ρ 0 = z0 Hy, k = 0 dokler y k+ ρ k z k 2 ǫ k = k + z k = y k 2 y k y k+ = Az k ρ k = zk Hy k+ Tako dobimo dominantno lastno vrednost λ. Naj bo x pripadajoči normiran lastni vektor. Za ostale lastne pare lahko naredimo redukcijo: a) Hotellingova 7 redukcija za A = A T. Definiramo B = A λ x x T. Hitro lahko preverimo, da velja Bx = 0 in Bx k = λ k x k za k =. Če uporabimo potenčno metodo na matriki B, bomo tako dobili drugo dominantno lastno vrednost matrike A. Matrike B nam ni potrebno eksplicitno izračunati. Iz enakosti Bz = Az λ (x T z)x namreč sledi, da potrebujemo le množenje z matriko A in izračun skalarnega produkta z vektorjem x. Na ta način tudi za izračun naslednje lastne vrednosti še vedno zadošča, da poznamo le funkcijo, ki izračuna produkt matrike A z danim vektorjem. b) Householderjeva redukcija za splošno matriko. Poiščemo unitarno matriko U, da je Ux = e, pri čemer lahko seveda uporabimo Householderjeva zrcaljenja. Potem ima matrika B = UAU H obliko (glej dokaz izreka.2) [ λ b B = T ]. 0 C Preostale lastne vrednosti matrike A se ujemajo z lastnimi vrednostmi matrike C. Tudi v primeru Householderjeve redukcije ekspliciten izračun matrike C ni potreben. Pri potenčni metodi moramo znati izračunati produkt Cw za vektor w C n. Pri tem si pomagamo z zvezo [ ] [ UAU H 0 λ b = T w 0 C ] [ ] 0 = w [ b T ] w. Cw Potrebujemo torej množenje z matriko A in dve množenji z ortogonalno matriko Q, ki ju lahko v primeru Householderjevega zrcaljenja izvedemo z zahtevnostjo O(n). Če iščemo lastno vrednost nesingularne matrike A, ki je najmanjša po absolutni vrednosti, delamo potenčno metodo za A, saj ima A lastne vrednosti λ,..., λ n. V algoritmu namesto množenja y k+ = A z k rešujemo sistem Ay k+ = z k. 7 Ameriški ekonomist in statistik Harold Hotelling (895 973) je potenčno metodo uporabljal pri kanonični korelacijski analizi.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 7.5 Obratna napaka in izračunljive ocene Denimo, da smo numerično, npr. s potenčno metodo, izračunali približek ( λ, x) za lastni par matrike A. Radi bi ocenili, za koliko se λ razlikuje od prave lastne vrednosti. Definicija.4 Po normi relativna obratna napaka približka ( λ, x) za lastni par je η( λ, x) = min {ǫ > 0 : (A + δa) x = λ x, } δa 2 ǫ A 2. Če gledamo samo približek za lastno vrednost λ, definiramo obratno napako kot η( λ) = min x =0 η( λ, x), podobno za obratno napako približka za lastni vektor vzamemo η( x) = min λ η( λ, x). Lema.5 Velja ) η( λ, x) = A x λ x 2 A 2 x 2, 2) η( λ) = σ min(a λi) A 2, 3) η( x) = A x ρ( x, A) x 2 A 2 x 2. Dokaz. Za točko ) označimo r = A x λ x. Iz (A + δa) x = λ x sledi δa x = r, od tod pa r 2 δa 2 x 2. Če vzamemo δa = r x H / x 2 2, potem je (A + δa λi) x = 0 in δa 2 = r 2 / x 2, kar pomeni, da je minimum res dosežen in točka ) drži. Pri točki 2) upoštevamo dejstvo, da je min x =0 Mx 2 = σ min (M), pri točki 3) pa lastnost Rayleighovega kvocienta, da je minimum Ax τx 2 dosežen pri τ = ρ(x, A). Iz zgornje leme sledi, da je potenčna metoda obratno stabilna, saj vrne tak približek ( λ, x) za lastni par, za katerega velja A x λ x 2 ǫ. Če bi radi ocenili, za koliko se približek λ razlikuje od točne lastne vrednosti, potrebujemo poleg ocene za obratno napako še oceno za občutljivost lastne vrednosti. Za oceno potrebujemo tudi približek za levi lastni vektor. Tega bodisi izračunamo v algoritmu ali pa uporabimo npr. inverzno iteracijo, ki jo bomo spoznali v naslednjem razdelku. Naj bosta torej x in ŷ približka za desni in levi lastni vektor, ki pripadata λ. Potem velja ocena λ λ r 2 ŝ, kjer je ŝ = ŷh x ŷ 2 x 2.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 8.6 Inverzna iteracija Rayleighov kvocient vrne najboljši približek za lastno vrednost, ki ustreza danemu vektorju. Kaj pa obratno? Denimo, da smo izračunali približek za lastno vrednost σ, sedaj pa potrebujemo še lastni vektor. Tu si lahko pomagamo z inverzno iteracijo 8, ki je v grobem predstavljena v algoritmu.2. Algoritem.2 Osnovna verzija inverzne iteracije. Začetni podatki so matrika A, približek za lastno vrednost σ in normiran vektor z 0. k = 0,,... reši sistem (A σi)y k+ = z k z k+ = y k+ y k+ Naj za približek σ velja, da mu je najbližja lastna vrednost λ i in velja λ i σ λ j σ za j = i. Inverzna iteracija v bistvu ni nič drugega kot potenčna metoda za matriko (A σi), zato jo imenujemo tudi inverzna potenčna metoda. Od tod vemo, da vektor z k po smeri konvergira proti lastnemu vektorju, ki pripada dominantni lastni vrednosti matrike (A σi). Lastne vrednosti matrike (A σi) so (λ j σ) za j =,..., n. Ker velja λ i σ λ j σ za j = i, je (λ i σ) (λ j σ) za j = i. Boljši, ko je približek σ, dominantnejša je lastna vrednost (λ i σ) in hitrejša je konvergenca. Inverzno iteracijo ponavadi uporabljamo zato, da dobimo lastni vektor za numerično izračunano lastno vrednost. V tem primeru je σ kar lastna vrednost matrike A, izračunana z natančnostjo O(u). V praksi zato potrebujemo le en do dva koraka inverzne iteracije, da iz poljubnega začetnega vektorja izračunamo pripadajoči lastni vektor. Če je σ res lastna vrednost matrike A, potem je matrika A σi singularna in v algoritmu lahko pričakujemo težave pri reševanju sistema s to matriko. Izkaže se, da nam zaokrožitvene napake pomagajo do tega, da v praksi ne pride do deljenja z nič, zato je inverzna iteracija zelo učinkovita metoda za računanje lastnih vektorjev za lastne vrednosti..7 Ortogonalna iteracija Pravimo, da je podprostor N invarianten za matriko A, če velja AN N. Naj ima matrika S p linearno neodvisnih stolpcev. Če jo dopolnimo do nesingularne matrike S = [ S S 2 ] in je [ ] B = S B B AS = 2, B 2 B 22 potem lahko hitro preverimo, da stolpci S razpenjajo invariantni podprostor natanko takrat, ko je B 2 = 0. V tem primeru so lastne vrednosti matrike A unija lastnih vrednosti matrik B in B 22. Če lastne vrednosti matrike A lahko uredimo po absolutni vrednosti tako, da velja λ λ p > λ p+ λ n, potem stolpci matrike S razpenjajo dominantni invariantni podprostor natanko takrat, ko so lastne vrednosti matrike B enake λ,..., λ p. 8 Metodo je leta 944 vpeljal nemški matematik Helmut Wielandt (90 200).

Bor Plestenjak - Numerične metode (verzija:. februar 203) 9 Če se da matriko diagonalizirati, potem bazo za dominantni invariantni podprostor dimenzije p lahko sestavimo iz p lastnih vektorjev, ki pripadajo po absolutni vrednosti p največjim lastnim vrednostim. Za izračun baze za dominantni invariantni podprostor imamo na voljo ortogonalno iteracijo. Algoritem.3 Osnovna verzija ortogonalne iteracije. Začetni podatki so matrika A velikosti n n in matrika Z 0 velikosti n p, p n, z ortonormiranimi stolpci. k = 0,,... Y k+ = AZ k izračunaj QR razcep Y k+ = QR in vzemi Z k+ = Q Opazimo lahko, da je pri p = to kar potenčna metoda. Vemo, da potenčna metoda skonvergira proti dominantnemu lastnemu vektorju, linearni podprostor, ki ga razpenja ta lastni vektor, pa je očitno dominanten invarianten podprostor dimenzije. Izrek.6 Naj velja A = XΛX, kjer je X = [x x n ] in Λ = diag(λ,..., λ n ). Lastne vrednosti naj bodo urejene po absolutni vrednosti in naj velja λ p > λ p+. Potem, za splošno izbrano začetno matriko Z 0, matrika Z k iz ortogonalne iteracije konvergira proti ortonormirani bazi za invariantni podprostor Lin({x,..., x p }). Dokaz. Očitno je Lin(Z k+ ) = Lin(Y k+ ) = Lin(AZ k ), od tod pa sledi Lin(Z k ) = Lin(A k Z 0 ). Ker je A k = XΛ k X, velja (λ /λ p ) k... A k Z 0 = XΛ k X Z 0 = λ k px X Z. 0... (λn/λp) k Ko gre k proti neskončno, gre A k Z 0 proti X proti Lin({x,..., x p }). ( p ) p, to pa pomeni, da Lin(Z n p 0 k ) konvergira Podobno v primeru, ko je λ r > λ r+, za prvih r < p stolpcev velja, da Lin(Z k (:, : r)) konvergira proti Lin({x,..., 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 (to hkrati pomeni, da so vse realne), lahko pokažemo, da matrika A k := Z T k AZ k konvergira proti Schurovi formi, ko gre k proti neskončno. A k in Zk T AZ k sta podobni matriki, saj je matrika Z k ortogonalna. Naj bo Z k = [Z k Z k2 ], kjer ima Z k p stolpcev. Potem je [ Z T Zk T AZ k AZ k Zk T k = AZ ] k2 Zk2 T AZ k Zk2 T AZ. k2 Ker Lin(Z k ) konvergira proti invariantnemu podprostoru Lin({x,..., x p }), enako velja tudi za Lin(AZ k ), to pa pomeni, da Z T k2 AZ k konvergira proti 0, saj je Z T k2 Z k = 0. Ker to velja za

Bor Plestenjak - Numerične metode (verzija:. februar 203) 20 vsak p =,..., n, sledi, da matrika Z T k AZ k res konvergira proti zgornji trikotni matriki, torej proti Schurovi formi. Poddiagonalni elementi matrike A k konvergirajo proti 0 z linearno konvergenco, hitrost konvergence (i, j)-tega elementa, kjer je i > j, pa je odvisna od razmerja λ j / λ i..8 QR iteracija V prejšnjem razdelku smo videli, da z ortogonalno iteracijo lahko izračunamo Schurovo formo in s tem vse lastne vrednosti matrike. V tem razdelku pa bomo spoznali algoritem, ki zna to narediti na ekonomičnejši način. Gre za QR iteracijo 9, ki je trenutno najboljša numerična metoda za izračun vseh lastnih vrednosti splošne nesimetrične matrike. Osnovna verzija je zapisana v algoritmu.4. Algoritem.4 Osnovna verzija QR iteracije. Začetni podatek je matrika A. A 0 = A k = 0,,... A k = Q k R k (izračunaj QR razcep) A k+ = R k Q k V vsakem koraku izračunamo QR razcep matrike in faktorja v zamenjanem vrstnem redu zmnožimo v novo matriko. Iz A k+ = R k Q k = Q T k A kq k sledi, da sta si matriki A k+ in A k ortogonalno podobni, torej je A k+ ortogonalno podobna začetni matriki A in velja A k+ = Q T k QT 0 AQ 0 Q k. Izkaže se, da je QR iteracija povezana z ortogonalno iteracijo, od tod pa sledi, da A k konvergira proti Schurovi formi. Lema.7 Za matriko A k iz QR iteracije velja A k = Z T k AZ k, kjer je Z k matrika, ki jo dobimo pri ortogonalni iteraciji iz Z 0 = I. V primeru, ko imajo lastne vrednosti paroma različne absolutne vrednosti, A k konvergira proti Schurovi formi. Dokaz. Uporabimo indukcijo po k. Na začetku je A 0 = Z0 T AZ 0, saj je Z 0 = I. Denimo, da je A k = Zk T AZ k. Potem je A k = Zk T AZ k = Zk T ( Z k+ }{{} ort. S k+ }{{} zg. trik. }{{} QR razcep AZ k ) = Zk T Z k+ }{{} ort. S k+ }{{} zg. trik. = Q k R k. Ker je QR razcep matrike enoličen, to pomeni S k+ = R k in Z T k Z k+ = Q k. Sledi A k+ = R k Q k = S k+ Zk T Z k+ = Zk+ T AZ k }{{} S k+ T Zk Z k+ = Zk+ T AZ k+. 9 Metodo sta neodvisno leta 96 odkrila angleški računalnikar John G. F. Francis (r. 934) in ruska matematičarka Vera N. Kublanovskaja (r. 920). Francis se je leta 962 nehal ukvarjati z numerično matematiko in se nato do leta 2007 sploh ni zavedal, kakšen vpliv ima njegov algoritem na numerično matematiko. Po oceni, ki sta jo naredila Jack Dongarra in Francis Sullivan leta 2000, spada QR iteracija med 0 algoritmov iz 20. stoletja, ki so najbolj vplivali na razvoj znanosti in tehnike [0].

Bor Plestenjak - Numerične metode (verzija:. februar 203) 2 V primeru, ko ima matrika A tudi kompleksne lastne vrednosti, matrika A k skonvergira proti realni Schurovi formi. Če pogledamo zahtevnost enega koraka QR iteracije, vidimo, da ima časovno zahtevnost O(n 3 ), saj moramo v vsakem koraku izračunati QR razcep matrike. Hitrost konvergence je odvisna od razmerja med lastnimi vrednostmi. Če se dve lastni vrednosti le malo razlikujeta, potem lahko pričakujemo, da bo metoda potrebovala veliko korakov, preden bo skonvergirala do Schurove forme. Da pridemo do uporabne verzije QR iteracije, moramo vpeljati še nekaj izboljšav..8. Redukcija na Hessenbergovo obliko En korak osnovne QR iteracije porabi O(n 3 ) operacij, kar ni najbolj ekonomično. Zahtevnost enega koraka lahko močno zmanjšamo, če matriko A predhodno reduciramo na zgornjo Hessenbergovo 0 obliko. Definicija.8 Pravimo, da je matrika A zgornja Hessenbergova, če je a ij = 0 za i > j +. Zgornja Hessenbergova matrika ima torej le zgornji trikotnik in eno poddiagonalo. Od Schurove forme jo loči le poddiagonala. Izkaže se, da se zgornja Hessenbergova oblika ohranja med QR iteracijo. Trditev.9 Če je A zgornja Hessenbergova, se oblika med QR iteracijo ohranja. Dokaz. Pri QR razcepu matrike A = [ a a n ] dobimo zgornjo Hessenbergovo matriko Q in zgornjo trikotno matriko R. Pri Q = [ q q n ] je oblika razvidna iz dejstva, da je q i linearna kombinacija stolpcev a,..., a i. Hitro lahko preverimo, da je produkt zgornje trikotne in zgornje Hessenbergove matrike spet zgornja Hessenbergova matrika. Vsako realno matriko A lahko z ortogonalno podobnostno transformacijo spremenimo v zgornjo Hessenbergovo matriko. Za splošno matriko uporabimo Householderjeva zrcaljenja, če pa ima matrika A v spodnjem trikotniku že veliko ničel, so lahko Givensove rotacije še bolj učinkovite. Zgled.4 Na zgledu matrike velikosti 5 5 poglejmo, kako matriko z ortogonalnimi podobnostnimi transformacijami spremenimo v zgornjo Hessenbergovo matriko. Naj bo ( ) A = ( ) ( ). ( ) Elementi v oklepajih označujejo elemente vektorja, ki določa Householderjevo zrcaljenje v naslednjem koraku. Zrcaljenje določimo tako, da se označeni vektor prezrcali v smer prvega enotskega vektorja. 0 Nemški matematik Karl Adolf Hessenberg (904 959).

Bor Plestenjak - Numerične metode (verzija:. februar 203) 22 Najprej poiščemo tako ortogonalno matriko Q, da je Q A = 0 0, A = Q AQ T = 0 ( ) 0 ( ). 0 0 ( ) Nato poiščemo ortogonalno matriko Q 2, da je Q 2 A = 0 0 0, A 2 = Q 2 A Q2 T = 0 0 0 ( ), 0 0 0 0 ( ) na koncu pa še ortogonalno matriko Q 3, da je Q 3 A 2 = 0 0 0, H = Q 3A 2 Q3 T = 0 0 0. 0 0 0 0 0 0 Tako dobimo zgornjo Hessenbergovo matriko H = Q 3 Q 2 Q A(Q 3 Q 2 Q ) T. Algoritem za splošno matriko ima naslednjo obliko. Algoritem.5 Redukcija na zgornjo Hessenbergovo obliko preko Householderjevih zrcaljenj. Začetni podatek je n n matrika A. Algoritem vrne zgornjo Hessenbergovo matriko H in po potrebi tudi ortogonalno matriko Q, da je A = Q T HQ. Q = I (*) i =,..., n 2 določi w i R n i za Householderjevo zrcaljenje P i, ki prezrcali A(i + : n, i) v ±ke A(i + : n, i : n) = P i A(i + : n, i : n) A( : n, i + : n) = A( : n, i + : n)p i Q(i + : n, i : n) = P i Q(i + : n, i : n) (*) Korake označene z (*) izvedemo le v primeru, če potrebujemo tudi prehodno matriko Q. Število operacij je 0 3 n3 + O(n 2 ) oziroma 4 3 n3 + O(n 2 ) če potrebujemo tudi matriko Q. Če na začetku matriko A reduciramo na Hessenbergovo obliko, porabimo potem za en korak QR iteracije le še O(n 2 ) namesto O(n 3 ) operacij. Matrika Q k iz QR razcepa zgornje Hessenbergove matrike A k je namreč produkt n Givensovih rotacij, za eno množenje matrike z Givensovo rotacijo pa vemo, da ima zahtevnost O(n). Definicija.20 Hessenbergova matrika H je nerazcepna, če so vsi njeni subdiagonalni elementi h i+,i neničelni.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 23 Če je H razcepna, kot je npr. H = 0 0 0 0, 0 0 0 potem problem lastnih vrednosti razpade na dva ločena problema. Zaradi tega lahko vedno predpostavimo, da je H nerazcepna. Pri numeričnem računanju subdiagonalni element a (k) i+,i matrike A k postavimo na 0, kadar je dovolj majhen v primerjavi s sosednjima diagonalnima elementoma. To pomeni, da zadošča kriteriju a (k) i+,i < ǫ( a(k) ii + a (k) i+,i+ ), kjer je ǫ = O(u) izbrana toleranca..8.2 Premiki Z redukcijo na Hessenbergovo obliko smo zmanjšali zahtevnost posameznega koraka QR iteracije, samo število potrebnih korakov pa se ni zmanjšalo, saj je hitrost konvergence odvisna od razmerja med lastnimi vrednostmi. Konvergenco lahko pospešimo z vpeljavo premikov, kot je predstavljeno v algoritmu.6. Algoritem.6 QR iteracija s premiki. Začetni podatek je matrika A. A 0 = A k = 0,,... izberi premik σ k A k σ k I = Q k R k (izračunaj QR razcep) A k+ = R k Q k + σ k I Naslednja lema nam zagotavlja, da je tudi po vpeljavi premika matrika A k še vedno ortogonalno podobna začetni matriki A. Lema.2 Matriki A k in A k+ pri QR iteraciji s premiki sta ortogonalno podobni. Dokaz. A k+ = R k Q k + σ k I = Q T k (Q kr k + σ k I)Q k = Q T k A kq k. 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.22 Naj bo σ lastna vrednost nerazcepne zgornje Hessenbergove matrike A. Če je QR razcep A σi = QR in B = RQ + σi, potem je b n,n = 0 in b nn = σ.

Bor Plestenjak - Numerične metode (verzija:. februar 203) 24 Dokaz. Ker je A nerazcepna, je prvih n stolpcev matrike A σi linearno neodvisnih. V razcepu A σi = QR zato velja r ii = 0 za i =,..., n. Ker je A σi singularna, mora biti r nn = 0. To pomeni, da je zadnja vrstica v matriki RQ enaka 0, torej v matriki B = RQ + σi velja b n,n = 0 in b nn = σ. Preostale lastne vrednosti lahko potem izračunamo iz matrike B( : n, : n ). Za premik potrebujemo čim boljši približek za lastno vrednost matrike A. Uporabljata se naslednji izbiri: a) Enojni premik: za σ k izberemo a (k) nn. Motivacija, da za premik izberemo element v spodnjem desnem kotu je, da naj bi bil to dober približek za po absolutni vrednosti najmanjšo lastno vrednost λ n matrike A. Naj bo y n levi lastni vektor za λ n. Z malce računanja lahko pokažemo, da pri QR algoritmu brez premikov velja A k = Q k R k, kjer je Q k = Q 0 Q k in R k = R k R 0. Od tod sledi A k = R Q k k T. Iz zadnje enakosti vidimo, da je zadnja vrstica matrike Q k T proporcionalna et n A k, to je zadnji vrstici matrike A k. Razen v izjemnem in pri numeričnem računanju malo verjetnem primeru, ko e n nima nobene komponente v smeri y n, bo vrstica en T A k po smeri konvergirala proti yn T. Od tod sledi, da zadnji stolpec matrike Q k konvergira proti levemu lastnemu vektorju y n. Iz zveze A k = Q k T A Q k je tako razvidno, da a (k) nn = en T A k e n = ( Q k e n ) T A Q k e n konvergira proti lastni vrednosti λ n. Pri tej izbiri imamo kvadratično konvergenco v bližini enostavne realne lastne vrednosti, za matrike, ki imajo tudi kompleksne lastne vrednosti, pa premik ni dober. b) Dvojni oz. Francisov premik: vzamemo podmatriko A k (n : n, n : n) = [ a (k) n,n a (k) n,n a (k) n,n a (k) nn ], ki ima lastni vrednosti σ (k), σ (k) 2 (lahko sta tudi kompleksni). Sedaj naredimo dva premika v enem koraku: A k σ (k) I = Q k R k (izračunaj QR razcep) A k = R kq k + σ (k) I A k σ(k) 2 I = Q k R k (izračunaj QR razcep) A k+ = R k Q k + σ(k) 2 I. Izkaže se, da lahko en korak QR z dvojnim premikom izvedemo brez kompleksne aritmetike, saj velja: Q k Q k R k R k = Q k (A k σ(k) 2 I)R k = Q k Qk H (A k σ (k) 2 I)Q k R k = (A k σ (k) 2 I)Q k R k = (A k σ (k) 2 I)(A k σ (k) I)

Bor Plestenjak - Numerične metode (verzija:. februar 203) 25 = A 2 k (σ(k) + σ (k) 2 )A k + σ (k) σ (k) 2 I =: N k in (Q k Q k )(R k R k) je QR razcep realne matrike N k. Ker po lemi.2 velja tudi A k+ = Q k H A k Q k = Q H k QH k A kq k Q k, potrebujemo le realni QR razcep realne matrike N k. Na prvi pogled nam zgornja ugotovitev ne pomaga dosti, saj v formuli za N k nastopa matrika A 2 k, za izračun le te pa potrebujemo O(n3 ) operacij. Kot bomo videli v naslednjem razdelku, pa se izkaže, da v resnici potrebujemo le prvi stolpec matrike N k..9 Implicitna QR metoda Izrek.23 (Implicitni Q) Če je Q = [q q n ] taka ortogonalna matrika, da je Q T AQ = H nerazcepna Hessenbergova matrika, potem so stolpci q 2,..., q n do predznaka natančno določeni s q. Dokaz. Denimo, da je V T AV = G, kjer je V = [v v n ] ortogonalna matrika, G nerazcepna zgornja Hessenbergova matrika in q = v. Potem je W = V T Q ortogonalna matrika. Če zapišemo W = [w w n ], potem je w = e. Velja GW = GV T Q = V T AQ = V T QH = WH. Iz te zveze sledi Gw i = i+ j= h jiw j oziroma h i+,i w i+ = Gw i i h ji w j. j= Ker je w = e in ima Gw i en neničelni element več od w i, sledi w i Lin({e,..., e i }). To pomeni, da je W zgornja trikotna matrika. Ker pa je W hkrati ortogonalna, je edina možnost W = diag(, ±,..., ±), torej v i = ±q i za i = 2,..., n. Posledica je, da če v QR algoritmu A k = Q k R k, A k+ = R k Q k = Q T k A kq k, poznamo prvi stolpec matrike Q k, potem lahko matriko A k+ izračunamo brez računanja celotnega QR razcepa matrike A k. Tako dobimo implicitno QR iteracijo. Najprej poglejmo implicitno QR iteracijo z enojnim premikom. Vemo, da je prvi stolpec Q k enak normiranemu prvemu stolpcu A k σ k I. Če uspemo poiskati tako ortogonalno matriko Q k, da bo njen prvi stolpec normiran prvi stolpec matrike A k σ k I in bo Q T k A kq k zgornja Hessenbergova matrika, potem je po izreku o implicitnem Q matrika Q T k A kq k enaka matriki iz naslednjega koraka QR metode. Matriko Q k poiščemo kot produkt Givensovih rotacij Q k = R 2 R 23 R n,n. Prva rotacija R 2 je že določena s prvim stolpcem A k σ k I, ostale pa določimo tako, da bo Qk T A kq k zgornja Hessenbergova matrika. Če je namreč c s s c R 2 =,...

Bor Plestenjak - Numerične metode (verzija:. februar 203) 26 potem je c s Q k = R 2 R 23 R n,n =...... Algoritem lahko označimo kot premikanje grbe. Poglejmo si ga na primeru matrike velikosti 5 5. Po prvem koraku dobimo R2 T A kr 2 = +. Novi neničelni element, označen s +, je grba, ki jo z naslednjimi rotacijami pomikamo navzdol ob diagonali. Tako po vrsti poiščemo R 23, R 34 in R 45, da je R23 T RT 2 A kr 2 R 23 = +, R34 T RT 23R2 T A kr 2 R 23 R 34 = + in R45 T RT 34 RT 23 RT 2 A kr 2 R 23 R 34 R 45 =. Dobimo zgornjo Hessenbergovo matriko, ki je po izreku o implicitnem Q enaka matriki A k+. Še bolj kot pri enojnem premiku nam izrek o implicitnem Q pride prav pri dvojnem premiku. Vemo, da je A k+ = Uk T A ku k, kjer je U k ortogonalna matrika iz QR razcepa matrike N k = A 2 k (σ(k) + σ (k) 2 )A k + σ (k) σ (k) 2 I. Dovolj je poznati le prvi stolpec matrike N k. Le ta ima obliko kjer sta a 2 + a 2a 2 sa + t a 2 (a + a 22 s) a 2 a 32 0. 0, s = a n,n + a nn

Bor Plestenjak - Numerične metode (verzija:. februar 203) 27 t = a n,n a nn a n,n a n,n. Sedaj najprej poiščemo Householderjevo zrcaljenje oblike P =,... ki ima prvi stolpec enak normiranemu prvemu stolpcu matrike N k. Po množenju s P dobimo grbo velikosti 2 2, ki jo premikamo navzdol s Householderjevimi zrcaljenji. Poglejmo si, kako to naredimo v primeru matrike velikosti 6 6. P A k P = + + +, P 2 = P 3 = P 4 = P 5 =, P 2 P A k P P 2 = +, + +, P 3 P 2 P A k P P 2 P 3 =, + + +, P 4 P 3 P 2 P A k P P 2 P 3 P 4 =, +, P 5 P A k P P 5 =. V vsakem koraku grbo velikosti 2 2 premaknemo za eno mesto navzdol, dokler je v zadnjem koraku ne izločimo iz matrike in nam ostane A k+. S pomočjo izreka o implicitnem Q lahko