Wyznaczanie wartości i wektorów własnych macierzy (problem własny)

Podobne dokumenty
Wartości i wektory własne

5. Rozwiązywanie układów równań liniowych

Zaawansowane metody numeryczne

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łanc Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

WEKTORY I WARTOŚCI WŁASNE MACIERZY. = λ c (*) problem przybliżonego rozwiązania zagadnienia własnego dla operatorów w mechanice kwantowej

Rozwiązywanie układów równań liniowych

Analiza numeryczna Kurs INP002009W. Wykłady 6 i 7 Rozwiązywanie układów równań liniowych. Karol Tarnowski A-1 p.

Wykład 5. Metoda eliminacji Gaussa

Układy równań liniowych. Krzysztof Patan

Macierze. Rozdział Działania na macierzach

Zaawansowane metody numeryczne

Metody numeryczne. Zagadnienia własne. Janusz Szwabiński.

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

φ(x 1,..., x n ) = a i x 2 i +

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Metody numeryczne I Równania nieliniowe

1 Macierze i wyznaczniki

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Analiza matematyczna i algebra liniowa Macierze

13 Układy równań liniowych

1 Macierz odwrotna metoda operacji elementarnych

Wykład 14. Elementy algebry macierzy

Zadania egzaminacyjne

Wektory i wartości własne

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

Komputerowa analiza zagadnień różniczkowych 3. Numeryczne zagadnienie własne

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

2. Układy równań liniowych

Wektory i wartości własne

3. Macierze i Układy Równań Liniowych

04 Układy równań i rozkłady macierzy - Ćwiczenia. Przykład 1 A =

O MACIERZACH I UKŁADACH RÓWNAŃ

MACIERZE I WYZNACZNIKI

1 Układy równań liniowych

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

Metoda eliminacji Gaussa. Autorzy: Michał Góra

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Metody numeryczne. materiały do wykładu dla studentów

Układy równań liniowych i metody ich rozwiązywania

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

D1. Algebra macierzy. D1.1. Definicje

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Wykład 6. Metoda eliminacji Gaussa: Eliminacja z wyborem częściowym Eliminacja z wyborem pełnym

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn a 1j a 2j R i = , C j =

Obliczenia naukowe Wykład nr 8

DB Algebra liniowa semestr zimowy 2018

Wstęp do metod numerycznych Faktoryzacja QR i SVD. P. F. Góra

Algebra liniowa z geometrią

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Przypomnij definicję grupy, które z podanych struktur są grupami:

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

MATEMATYKA I SEMESTR ALK (PwZ) 1. Sumy i sumy podwójne : Σ i ΣΣ

= i Ponieważ pierwiastkami stopnia 3 z 1 są (jak łatwo wyliczyć) liczby 1, 1+i 3

, A T = A + B = [a ij + b ij ].

Przestrzeń unitarna. Jacek Kłopotowski. 23 października Katedra Matematyki i Ekonomii Matematycznej SGH

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50

Analiza numeryczna Lista nr 3 (ćwiczenia) x x 2 n x.

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Definicja macierzy Typy i właściwości macierzy Działania na macierzach Wyznacznik macierzy Macierz odwrotna Normy macierzy RACHUNEK MACIERZOWY

RACHUNEK MACIERZOWY. METODY OBLICZENIOWE Budownictwo, studia I stopnia, semestr 6. Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska

Metody numeryczne. Równania nieliniowe. Janusz Szwabiński.

1 Zbiory i działania na zbiorach.

Wstęp do metod numerycznych 5. Numeryczne zagadnienie własne. P. F. Góra

1 Formy hermitowskie. GAL (Informatyka) Wykład - formy hermitowskie. Paweł Bechler

Matematyka stosowana i metody numeryczne

2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

Zadania z Algebry liniowej 4 Semestr letni 2009

5 Wyznaczniki. 5.1 Definicja i podstawowe własności. MIMUW 5. Wyznaczniki 25

Ekoenergetyka Matematyka 1. Wykład 3.

Własności wyznacznika

Postać Jordana macierzy

Układy równań i nierówności liniowych

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

3. Wykład Układy równań liniowych.

3. FUNKCJA LINIOWA. gdzie ; ół,.

Rozwiązywanie algebraicznych układów równań liniowych metodami bezpośrednimi

Wykład 12 i 13 Macierz w postaci kanonicznej Jordana , 0 A 2

Wyk lad 5 W lasności wyznaczników. Macierz odwrotna

Zaawansowane metody numeryczne

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

UKŁADY RÓWNAŃ LINIOWYCH

Macierze i Wyznaczniki

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

det[a 1,..., A i,..., A j,..., A n ] + det[a 1,..., ka j,..., A j,..., A n ] Dowód Udowodniliśmy, że: det[a 1,..., A i + ka j,..., A j,...

Układy równań liniowych

spis treści 1 Zbiory i zdania... 5

"Bieda przeczy matematyce; gdy się ją podzieli na więcej ludzi, nie staje się mniejsza." Gabriel Laub

Przekształcanie równań stanu do postaci kanonicznej diagonalnej

ALGEBRA LINIOWA Z ELEMENTAMI GEOMETRII ANALITYCZNEJ

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

Algebra z Geometrią Analityczną. { x + 2y = 5 x y = 9. 4x + 5y 3z = 9, 2x + 4y 3z = 1. { 2x + 3y + z = 5 4x + 5y 3z = 9 7 1,

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

10. Metody obliczeniowe najmniejszych kwadratów

WYDAWNICTWO PAŃSTWOWEJ WYŻSZEJ SZKOŁY ZAWODOWEJ WE WŁOCŁAWKU

Układy równań i równania wyższych rzędów

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Zapisz za pomocą spójników logicznych i kwantyfikatorów: x jest większe niż 6 lub mniejsze niż 4

Transkrypt:

Wyznaczanie wartości i wektorów własnych macierzy (problem własny) Plan wykładu:. Pojęcia podstawowe, definicje. Metoda Kryłowa poszukiwania pierwiastków równania charakterystycznego. Lokalizacja (szacowanie) wartości własnych tw. Gerschgorina. Proste metody iteracyjne a) Metoda potęgowa dla wartości własnej o największym module b) przyśpieszanie zbieżności c) redukcja macierzy metodą Hottelinga d) redukcja macierzy metodą Wielandta. Sprowadzanie macierzy symetrycznych/hermitowskich do postaci trójdiagonalnej a) metoda Hauseholdera b) Metoda Lanczosa. Sprowadzanie macierzy symetrycznych/hermitowskich do postaci macierzy Hessenberga. Wyznaczanie wartości i wektorów własnych macierzy trójdiagonalnych i macierzy Hessenberga a) Metoda bisekcji b) Rozkład LR i QR, rozkład QR metodą Hauseholdera 8.Uogólniony problem własny

Pojęcia podstawowe Często przy tworzeniu modeli matematycznych wykorzystywanych do symulacji zjawisk fizycznych czy zachowania się układu, zachodzi potrzeba rozwiązania tzw. problemu własnego (np. rów. Schrodingera): Ax k = kx k - A jest macierzą kwadartową o nxn - x k jest wektorem własnym macierzy odpowiadającym wartości własnej k a ij ; k; x (k) m C Nie zawsze układ równań, którego chcemy znaleźć rozwiązanie, przyjmuje tak prostą postać. Nierzadko mamy do czynienia z tzw. uogólnionym problemem własnym: A x = B x Jeśli macierz B jest nieosobliwa to problem uogólniony można przekształcić do postaci: B Ax = x A = [a ii ] Liczbę nazywamy wartością własną macierzy jeśli istnieje taki niezerowy wektor x dla którego zachodzi: Ax = x Wektor x nazywamy (prawostronnym) wektorem własnym przynależnym do wartości własnej. Ciąg wszystkich wartości własnych nazywamy widmem macierzy A i oznaczamy: Sp(A). Z powyższej definicji wynika: (A I)x = 0 Macierz (A- I) jest osobliwa, więc: det(a I) = 0 Wyznacznik ten jest wielomianem stopnia n zmiennej : w( ) = det(a I) = = ( ) n ( n + a n n + : : : + a 0 ) Każda wartość własna k jest pierwiastkiem wielomianu charakterystycznego macierzy A.

Def. Wartości i wektory własne macierzy transponowanej A T nazywamy lewostronnymi wartościami i lewostronnymi wektorami własnymi macierzy A. Wyznacznik macierzy po jej transponowaniu nie ulega zmianie. Dlatego widmo macierzy A jest równe widmu lewostronnemu. Tw. Jeżeli p jest wartością własną macierzy, a l jest jej lewostronną wartością własną oraz gdy p = l Wówczas wektor własny x l jest ortogonalny do lewostronnego wektora własnego x p. x T l x p = 0 x T l Ax p = px T l x p x T l Ax p = A T x l T xp = lx T l x p ( l p)x l x p = 0 ( p = l) Dla macierzy symetrycznej A=A T wektory własne są zarazem wektorami lewostronnymi. Jeżeli więc wektory własne przynależą do różnych wartości własnych to są do siebie ortogonalne. Def. Macierze A i B są podobne jeśli istnieje nieosobliwa macierz podobieństwa P, że: P AP = B Tw. Jeżeli macierze A i B są podobne to mają identyczne widmo wartości własnych. Tw. Macierz Q mxn (m n) nazywamy ortogonalną jeśli: Q T Q = I n n Tw. Jeżeli macierz Q nxn jest ortogonalna to: QQ T = I n n Tw. Macierz symetryczna A jest ortogonalnie podobna do macierzy diagonalnej D: Q T AQ = D Tw. Wartości własne macierzy symetrycznej są rzeczywiste. Def. Macierz o elementach zespolonych i własności A = (A T ) ) a ii R nazywamy macierzą hermitowską. Wartości własne macierzy hermitowskiej są rzeczywiste a wektory własne są do siebie ortogonalne.

Tw. Dla dowolnej macierzy A istnieje macierz nieosobliwa P, która może mieć elementy zespolone i zachodzi pomiędzy nimi związek P AP = Powyższa macierz definiuje postać kanoniczną Jordana k = ; ; : : : ; K n J k jest macierzą zdefiniowaną następująco J k = J 0 : : : 0 0 J : : : 0 : : : : : : : : : : : : 0 0 : : : J k i 0 : : : 0 0 0 i : : : 0 0 : : : : : : : : : : : : : : : : : : 0 0 0 : : : i 0 0 0 : : : 0 i i jest wartością własną macierzy A i może wystąpić w wielu macierzach J k. Wyznaczniki det(j k I) = ( i ) m są dzielnikami elementarnymi macierzy A. Liczba m jest stopniem macierzy J k. Dla m= macierz J k stanowi dzielnik liniowy. Jeśli wszystkie wartości własne macierzy A są różne to wszystkie dzielniki elementarne są liniowe. Iloczyn skalarny (wewnętrzny) ha; bi = a T b = [ ; ; : : : ; n ] Iloczyn zewnętrzny = aihb = ab T =.. n : : : n : : : n : : : : : : : : : : : : n n : : : n n.. n [ ; ; : : : ; n]

Tw. (Schura) Suma kwadratów modułów wartości własnych jest ograniczona od góry przez kwadrat normy euklidesowej: Tw. Widmo macierzy ulega przesunięciu po dodaniu do niej macierzy jednostkowej pomnożonej przez liczbę: widmo: zostaje zastąpione przez: Tw. (Cayleya-Hamiltona) Jeśli nx j j kak E i= Sp(A + ci) = Sp(A) + c Sp(A) = f ; ; : : :g Sp(A + ci) = f + c; + c; : : :g w( ) = det(a I) = 0 jest równaniem charakterystycznym macierzy A to w(a) = 0 Metoda Kryłowa poszukiwania zer równania charakterystycznego w( ) = n + Korzystając z tw. CH w(a) = A n + Co dla dowolnego wektora y daje A n y + n X i=0 n X i=0 n X i=0 b i A i y = 0 b i i = 0 b i A i = 0 układ n równań na n niewiadomych b 0 ; b ; b ; : : : ; b n Do jego utworzenia potrzeba jednak n obliczeń, oraz n / aby go rozwiązać. Uwaga: Wyznaczenie zer wielomianu charakterystycznego może być źle uwarunkowane.

Lokalizacja wartości własnych Tw. (Gershgorina) Niech C i oznaczają koła domknięte na płaszczyźnie zespolonej o środkach w punktach a ii (elementy diagonalne macierzy A) i promieniach równych sumie modułów elementów z danego (i-tego) wiersza: Wartości własne macierzy A leżą na płaszczyźnie zespolonej i zawarte są w kole o środku w 0 i promieniu równym promieniowi spektralnemu tej macierzy. Ponieważ: ½(A) kak p ; p = ; ; ; E C i = fz : jz a ii j nx ja ij jg j= j=i więc można przyjać że: i fz : jzj kak p g Wówczas: Sp(A) ½ Jeżeli k kół C i tworzy zbiór rozłączny z pozostałymi kołami, to w zbiorze tym leży dokładnie k wartości wlasnych macierzy A. Wnioski:. Jeżeli macierz jest symetryczna i diagonalnie dominująca o nieujemnych elementach na diagonali, to jest nieujemnie określona, a jeśli jest ona dodatkowo nieosobliwa to jest dodatnio określona. Macierz symetryczna silnie diagonalnie dominująca jest dodatnio określona wtedy i tylko wtedy gdy elementy na diagonali są dodatnie.. W każdym kole rozłącznym z pozostałymi leży dokładnie jedna wartość własna. n[ i= C i Widma wartości własnych i lewostronnych wartości własnych są identyczne. Aby otrzymać lepsze oszacowanie położenia wartości własnych można więc zastosować twierdzenie Geshgorina dla A T. Koła zawierające wartości własne mają środki w a ii i promienie równe sumie modułów pozostałych elementów w i-tych kulmnach. Przykład. Podać lokalizację wartości własnych macierzy A = 0 0 0 0 0

a) najgorsze oszacowanie lokalizacja w kole o promieniu b) tw. Gershgorina lokalizacja w kole o promieniu c) tw. Gershgorina dla A T jedno z kół jest odseparowane (C' ) i zdegenerowane znajduje się w nim dokładnie jedna wartość własna ( =) - najlepsze oszacowanie

Metody wyznaczania wartości i wektorów własnych macierzy Macierze o elementach I wartościach własnych rzeczywistych Macierze symetryczne (w tym hermitowskie) Macierze niesymetryczne Proste metody iteracyjne Redukcja macierzy do postaci trójdiagonalnej Redukcja macierzy do postaci Hessenberga Metoda potęgowa I jej modyfikacje Metoda Hauseholdera Metoda Givensa Rozkład QR Metoda Lanczosa (macierze rzadkie) Redukcja do postaci diagonalnej metodą Jacobiego Wartości i wektory własne 8

Metoda potęgowa wyznaczania pojedynczych wartości własnych i wektorów własnych. Załóżmy że istnieje n liniowo niezależnych wektorów własnych macierzy A, stanowią bazę przestrzeni liniowej Wówczas dla dowolnego wektora v 0 v 0 = Jeśli i stanowią wartości własne macierzy Zakładamy że wartości własne tworzą ciąg Jeśli jest dominującą wartością własną, oraz wektor v 0 ma składową w kierunku x to wówczas zachodzi x ; x ; x ; : : : ; x n Av 0 = nx a i x i i= nx a i ix i i= v m = A m v 0 = nx a i mi x i i= j j j j j j : : : j nj lim m! A m v 0 m = a x Z czego można wysnuć wniosek że wartość własną można obliczyć następująco Dla dowolnego wektora y nieortogonalnego do x. Zazwyczaj y ma na pozycji elementu o największym module w v m+ a na pozostałych 0. Jaka jest zbieżność metody? " nx µ i v m = m Zależy od ( i / ) m ale również od współczynników a i czyli od wyboru v 0. Jeśli wartość własna o największym module jest zespolona to ciąg nie jest zbieżny. Jak wyznaczyć wektor własny x? Ponieważ = lim m! a x + i= y T v m+ y T v m v m ¼ m a x więc unormowany wektor własny będzie miał postać x = v m jv m j m a i x i # 9

Jeśli wartość własna jest pierwiastkiem wielokrotnym rówanania charakterystycznego to metoda jest zbieżna bo składnik z dominuje v m = A m v 0 = m Uwaga: problem pojawia się gdy =- j tj. identyczne moduły generują oscylacje (wtedy wybieramy ciąg wektorów v k ) Przyśpieszanie zbieżności - iloraz Rayleigha Jeśli macierz jest symetryczna to jej wektory własne są ortogonalne. Załóżmy, że są również ortonormalne Wtedy Oraz kx a i x i + i= x T i x j = ± ij v T mav m = v T mv m+ = v T mv m = nx i= a i m i nx i= nx i=k+ a i m+ i mi a i x i co daje lepszą zbieżność niż wariant podstawowy metody v T mv m+ v T m v m " µ m # i = + O Wyznaczanie pozostałych wartości własnych a) metoda redukcji wektora Jeśli znamy wartość własną o największym module to możemy wykorzystać ten fakt przy wyznaczaniu kolejnej największej co do modułu wartości własnej tj. w m = v m+ v m nx = a i ( i ) mi x i i= Ponieważ wektory v m+ oraz v m są bliskie więc metoda może być w pewnych przypadkach nieużyteczna. b) metoda zerowania składowej Znając możemy zdefiniować wektor w 0 = (A I)v 0 Czyli z v 0 usuwamy składową w kierunku x. Wektor w 0 nie ma składowej w kierunku x więc ciąg w m powinien być zbieżny do oraz x. Ze względu na błędy zaokrągleń jednak usuwa się co pewną ilość iteracji składową x tj. z m = (A I)w m 0

Aby wyznaczyć kolejne wartości własne korzystamy z wektora Taki proces staje się mało wydajny dla kolejnych wartości własnych. c) redukcja macierzy Tw. Jeśli jest wartością własną macierzy A i x odpowiadającym jej wektorem własnym oraz dla dowolnego wektora v o własności Macierz zredukowana w 0 = (A I)(A I)v 0 v T x = W = A x v T przykład: redukcja Hotellinga Za wektor v przyjmujemy lewy wektor własny przynależny do wartości własnej. Ale na ogół nie znamy lewych wektorów. Metoda jest więc skutecza tylko w przypadku macierzy symetrycznych, wtedy lewe wektory są identyczne z prawymi lub rekurencyjnie v = x W = A x x T W 0 = A W i = W i x i x T i i = ; ; : : : ; n Ma te same wartości co macierz A oprócz która jest zerem.

Redukcja macierzy gęstej do prostszej postaci - macierzy trójdiagonalnej lub macierzy Hessenberga Macierz pierwotną przekształcamy iteracyjnie A = A 0! A! A! : : :! A m A i = P i A i P i ; i = ; ; : : : ; m tak aby końcowa macierz B była macierzą podobną do A 0 B = A m = P AP P = P P : : : P m b) algorytm numerycznego rozwiązania problemu własnego macierzy B nie może być gorzej uwarunkowany niż dla A B = P AP B + B = P (A + A)P A = P BP jbj jp j jaj jp j = cond(p )jaj j Aj cond(p )j Bj a następnie w łatwy sposób wyznaczamy wartości i wektory własne macierzy B Uwagi: By = y x = P y = P : : : P m y Ax = x a) nakład obliczeń potrzebnych do wyznaczenia x i oraz i macierzy B powinien być jak najmniejszy Dla j Aj jaj (cond(p )) j Bj jbj cond(p ) >> problem własny B będzie gorzej uwarunkowany niż dla A. Ale ponieważ cond(p ) = cond(p : : : P m ) cond(p ) : : : cond(p m ) więc uwarunkowanie algorytmu zależy od postaci P i

Redukcja macierzy hermitowskiej do postaci trójdiagonalnej metodą Hauseholdera Pierwotna macierz hermitowska A H = A = A 0 A H = (A T ) Transformujemy A i = P i A i P i Przy pomocy macierzy Hauseholdera P i = P H i = P i Dokonujemy transformacji A i- do A i. A i- ma postać A i = = [ jk ] = I iu i u H i J i c 0 c H ± a H i 0 a i ~A i J i c c H ± i = a i = ± ¹ 0 0.............................. ¹ i 0 0 i ± i ¹ i 0 0 i ± i i+;i ni Zauważmy że w kolejnym kroku należy dokonać transformacji a) (n-i) elementowego wektora a i b) macierzy kwadratowej ~A i stopnia (n-i)

Trzeba utworzyć macierz Hauseholdera stopnia (n-i) taką aby transformowała wektor a i Macierz Hauseholdera konstruujemy następująco = 8 < : ~P i ~P i a i = k e ~P i = I uu H ¾ = ka i k = ¾(¾+j i+;i j) ¾ = 0 0 ¾ = 0 v u t nx j=i+ j ji j k = ¾e i' () i+;i = e i' j i+;i j e i' (¾ + j i+;i j) i+;i u =. n;i Dokonujemy transformacji P P i = i A i P i = P i A i P i = J i c 0 = c H ± i a H i ~P i 0 Pi ~ a i Pi ~ Ai ~ Pi ~ ± ¹ 0 0....... 0...... ¹ i 0 0 i ± i ¹ i = 0 : : : 0 i ± i ~ i+ 0 : : : 0 i+ 0 0. ~P i ~A i ~P i 0 I 0 0 0 0 0 0 ~ Pi gi

Jak dokonać efektywnego mnożenia macierzy (zwykłe jest nieekonomiczne)? Definiujemy dwa wektory pomocnicze ponieważ i+ = k ~P i = I uu H ~P i Ai ~ Pi ~ = (I uu H ) A ~ i (I uu H ) = A ~ i ~A i uu H uu H Ai ~ + uu H Ai ~ uu H p = ~A i u q = p (ph u)u 0 oraz z faktu, że A i- jest hermitowska wynika p H u = u H ~A i u = (p H u) H ~P i Ai ~ Pi ~ = A ~ i pu H up H + up H uu H µ = A ~ i u p H (ph u)u µ p (ph u)u u H = ~A i uq H qu H Przeprowadzając proces przekształcania macierzy do końca dostaniemy macierz B B = A n = ± ~ 0.............. ~ n 0 n ± n Metoda Hauseholdera jest stabilna numerycznie.

Redukcja macierzy (rzadkiej) hermitowskiej do postaci trójdiagonalnej metodą Lanczosa Naszym zadaniem jest znalezienie wartości i wektorów własnych macierzy stopnia n ; ; : : : ; n R x ; x ; : : : ; x n C n Jeśli jednak n jest bardzo duże (np.rzędu ~0 ) a nas interesuje jedynie mały wycinek widma wartości (wektorów) własnych (np. m=0) to wtedy należy zredukować macierz do postaci trójdiagonalnej stopnia m. W metodzie Lanczosa wykorzystujemy do tego celu podprzestrzeń Kryłowa q C n K m (q; A) = span[q; Aq; : : : ; A m q] m K 0 (q; A) = f0g dimk m = m Zakładamy że wektory rozpinające podprzestrzeń K m = span[q ; q ; : : : ; q m ] ½ q H i = j i q j = ± ij = 0 i = j są ortonormalne Metoda Lanczosa jest metodą iteracyjną w każdej iteracji poszukujemy nowego wektora bazowego (wymiar podprzestrzeni zwiększa się o ) Sposób postępowania. Wybieramy dowolny wektor startowy zakładamy taże q C n ; q = 0 q 0 = 0 a następnie wykonujemy rekurencyjnie ciąg obliczeń korzystając z relacji: Aq i = i q i + ± i q i + i+ q i+ i ± i = q H i Aq i i+ = kr i k r i = Aq i ± i q i i q i q i+ = r i i+, i+ = 0 ± i ; i R Procedura zatrzyma się gdy i+ = 0 Wówczas wymiar wygenerowanej podprzestrzeni m = max i dim K i (q; A)

Schemat rekurencyjny można zapisać macierzowo Q i = [q ; : : : ; q i ] Q H i Q i = I Wartości własne J m są wartościami własnymi A J m z = z; z = 0 J i = ± 0. ±........ i 0 i ± i x = Q m z = 0 Ax = AQ m z = Q m J m z = Q m z = x W skrajnym przypadku metoda nie zatrzyma się sama i wówczas m = n AQ i = Q i J i + [0; : : : ; 0; i+ q i+ ] = Q i J i + i+ q i+ e T i i = ; ; : : : ; m Gdy warunek e i = [0; 0; : : : ; ] T R i i+ = 0 jest spełniony wówczas zachodzi Macierz Q n jest macierzą unitarną, a macierz J n jest macierzą trójdiagonalną podobną do A. Uwagi praktyczne: )można zredukować liczbę operacji wprowadzając wektor pomocniczy wtedy u i = Aq i i q i r i = u i ± i q i ± i = q H i Aq i = q H i u i AQ m = Q m J m ponieważ q H i q i = 0

. Jeśli nie interesują nas wektory własne A to można nie przechowywać wektorów q i W każdej iteracji (i->i+) procedura wymaga obliczenia iloczynów skalarnych oraz przemnożenia wektora przez macierz A.. Jeśli interesuje nas jedynie m << n Wartości (wektorów) własnych macierzy A to wówczas nie czekamy aż i+ =0 ale przerywamy procedurę wcześniej. Wykorzystujemy tu fakt, że zbieżność metody dla skrajnych wartości własnych jest bardzo szybka.. Ze względu na błędy zaokrągleń wektory rozpinające podprzestrzeń Kryłowa przestają być ortogonalne (gdy rośnie wymiar podprzestrzeni). Konieczne staje się przeprowadzenie tzw. ortogonalizacji nowego wektora bazy ~q i+ do już wyznaczonych q i+ = ~q i+ ix (q H j ~q i+ )q j j= Przeprowadzenie reortogonalizacji jest kosztowne. 8

Redukcja macierzy do postaci macierzy Hessenberga (górnej) metodą eliminacji Gaussa Naszym zadaniem jest przekształcenie w sposób rekurencyjny macierzy A A = A 0! A! : : :! A n = B H A i = P i A i P i do postaci Hessenberga B H = 0 0 0 0 0 0 T macierz trójdiagonalna U macierz trójkątna górna Uwagi: ) każda macierz kwadratowa jest ortogonalnie podobna do macierzy Hessenberga ) ponieważ macierz A jest przekształcana przez podobieństwo więc przekształcenie macierzy hermitowskiej do postaci Hessenberga prowadzi do uzyskania macierzy trójdiagonalnej ze względu na symetrię A. Macierz trójdiagonalna jest hermitowska. = T + U W każdej iteracji macierz przekształcenia P i konstruujemy z dwóch macierzy: a) macierzy permutacji ¼ rs = 0... macierz do niej odwrotna 0... 0 ¼ rs = ¼ rs... à r à s 9

b) macierzy eliminacji G j = z warunkiem... l j+;j.... l nj l ij Jakie są skutki mnożenia macierzy G j oraz rs z A?. ¼ rs A - zamienia wiersze r i s w A. A¼ rs - zamienia kolumny r i s w A. G - odejmuje wiersz j-ty j A przemnożony przez l rj od wiersza r w A AG j. - przemnaża kolumnę r-tą przez l rj a następnie dodaje do kolumny j-tej w A Macierz odwrotna G j - G j =... l j+;j.... l nj 0

Załóżmy, że w macierzy A i- (i-) pierwszych kolumn posiada postać Hessenberga A i = 0 0 0 0 = B i d b Ai c ± i b 0 a ~A i a = i+;i. ni

Dokonujemy przekształcenia A i = P i A i P i macierz przekształcenia jest zdefiniowana w poniższy sposób Aby określić które wiersze należy zamienić wierszami, najpierw trzeba określić element o największym module w a j ri j = max i+ j n j jij; r i + P i = ¼ r;i+ G i+ P i = G i+ ¼ r;i+ r i + Macierz przekształcenia P i nie zmienia postaci Hessenberga w (i-) pierwszych kolumnach. Zmienia natomiast kolumnę i-tą tj. zeruje elementy w tej kolumnie od i+ do n. P i d ± i a = d ± i ¹a ¹a = 0. 0 Po wyznaczeniu wartości r zamieniamy miejscami wiersze (r i+) oraz kolumny (r i+) w A i- A 0 = ¼ r;i+ A i ¼ r;i+ = [ 0 jk] Dzięki temu element o największym module w wektorze a znajduje się teraz na jego pierwszym miejscu. Jak określić G j+? Warunek: trzeba wyzerować wszystkie elementy w a poza jego pierwszym elementem l j;i+ = 8 < : 0 ji 0 i+;i i+;i = 0 0 i+;i = 0 j = i + ; i + ; : : : ; n Przeprowadzając drugi etap przekształcenia A i = G i+ G A0 i+ = P i A P i Dostajemy macierz Hessenberga w i kolumnach macierzy A i.

Uwagi: ) Po n- iteracjach macierz A zostaje przekształcona do postaci Hessenberga (górnej). ) Metoda eliminacji Gaussa jest stabilna numerycznie i wymaga wykonania M = n + O(n ) operacji mnożenia ) Redukcję macierzy do postaci Hessenberga można przeprowadzić także przy użyciu metody Hauseholdera lub Givensa W metodzie Givensa trzeba wykonać M = 0 n + O(n ) a w metodzie Hausholdera M = n + O(n ) operacji mnożenia Ze względu na błędy numeryczne, w obu metodach macierz Hessenberga jest macierzą podobną do A+E ke Givens k k "n = kak; k» ke Hauseholder k k "n kak; k»

Wyznaczanie wartości własnych macierzy Wyznaczanie wartości własnych macierzy trójdiagonalnej hermitowskiej metodą bisekcji Po zredukowaniu macierzy A do postaci J = ± ¹ 0............ ¹ n 0 n ± n chcemy znaleźć sposób na wyznaczenie wartości własnych J. Jeśli warunek i = 0; i = ; : : : ; n to macierz jest nieredukowalna. W przeciwnym wypadku można ją zapisać w postaci J = J 0 J... Macierze J i ; k = ; : : : ; k są nieredukowalne. Ponadto widmo wartości własnych J pokrywa się z widmem macierzy nieredukowalnych J i, można więc badać je osobno. Szukamy wielomianu charakterystycznego J i : W( ) rozwijając wyznacznik względem kolejnych kolumn macierzy! 0 ( ) =! ( ) = ± : : : : : : : : :! i ( ) = det(j i I)! i ( ) = (± i )! i ( ) j i j! i ( ) i = ; ; : : : ; n W ( ) =! n ( ) Macierz jest hermitowska więc ± i ; j i j R Do znalezienia wartości własnych można wykorzystać metodę bisekcji. 0 J k

Sposób postępowania: ) wybieramy dowolną liczbę i obliczamy wartość wielomianu charakterystycznego rekurencyjnie ) następnie korzystamy z poniższych twierdzeń: Tw. Jeżeli elementy,,..., n (pozadiagonalne) są niezerowe, to wartości własne macierzy J są pojedyncze. Tw. Jeżeli elementy,,..., n (pozadiagonalne) są niezerowe, to ciąg wartości n spełnia warunki: a) jeżeli i dla pewnego i<n, to i- i+ b) jeżeli n jest różne od 0, to liczba zmian znaków sąsiednich liczb 0 n jest równa liczbie wartości własnych macierzy J mniejszych od c) Jeżeli n, to jest wartością własną macierzy J, a ponadto jest tyle wartości własnych mniejszych niż ile nastąpiło zmian znaków w ciągu 0 n- Metoda bisekcji jest bardzo dokładna. Wadą jest uzyskiwanie dużych wartości ciągu: 0 n jeśli znacznie różni się od wartości własnych J. Zaletą natomiast możliwość obliczenia wartości własnej o określonym indeksie k. Liczba iteracji potrzebna do wyznaczenia k wynosi: przedział poszukiwań wartości własnej dokładność wyznaczenia wartości własnej Wektory własne Znając wartość własną macierzy J wektor własny wyznaczamy według wzorów: x = x = ± IT = log 0 0 ½ x i+ = ( ± i)x i i x i i+ ; i = ; ; : : : ; n gdzie: i elementy diagonalne J i elementy pozadiagonalne J

Wyznaczanie wartości własnych metodą LR W metodzie tej iteracyjnie przekształcamy macierz A uzyskując ciąg A = A! A! A! : : :! A m W którym ostatni element stanowi macierz trójkątna górna (Hessenberga). Elementy diagonalne macierzy A m stanowią natomiast ciąg wartości własnych macierzy A czyli lim i! a(i) jj W każdej iteracji wyznaczamy rozkład A i na iloczyn macierzy trójkątnej dolnej L z jedynkami na diagonali oraz macierzy trójkątnej górnej R: A i = L i R i = j Przekształcamy macierz w następujący sposób A i+ = L i+ R i+ = R i L i Wadą jest to że rozkład L i R i może nie istnieć lub może istnieć ale jego znalezienie jest źle uwarunkowane. W obu przypadkach algorytm przerywa działanie. Wyznaczanie wartości własnych metodą QR Metoda wywodzi się z metody LR, przy czym macierz L zastąpiono macierzą ortogonalną Q przez co metoda jest stabilna numerycznie. A = A A i = Q i R i A i+ = R i Q i Q H Q = I gdzie: R i jest macierzą trójkątna górną, a Q i jest macierzą ortogonalną W metodzie QR otrzymujemy ciąg macierzy A = A! A! A! : : :! A m Macierze te są do siebie podobne więc mają te same wartości własne. Jeśli m jest duże wówczas spodziewamy się że na diagonali A m będą znajdować się wartości własne A. Macierze A i oraz A i+ są podobne A i = L i R i ; L i A i = R i ; A i R i = L i Tw. Jeżeli macierz A jest symetryczna i dodatnio określona, to algorytm QR generuje ciąg macierzy A (),A (),... zbieżny do macierzy diagonalnej. A i+ = R i L i = L i AL i = R i AR i Wadą metody QR jest wolna zbieżność dla macierzy pełnych. Metoda jest szybkozbieżna dla macierzy trójdiagonalnych i macierzy Hessenberga.

Algorytm QR dla macierzy Hessenberga. Macierzą (górną) Hessenberga jest macierz, którą można zapisać w postaci: H = T + U Każda macierz kwadratowa jest ortogonalnie podobna do macierzy Hessenberga, więc ma ona to samo widmo wartości własnych co macierz H. Wyznaczamy ciąg macierzy: H i = Q i R i H i+ = R i Q i ; i = ; ; ; : : : Wszystkie H i są macierzami Hessenberga H i+ = Q T i H i Q i wobec czego wszystkie macierze H i, i=,,,.. są podobne. Elementy na diagonali kolejnych H i dążą do wartości własnych macierzy H =H. Jeżeli macierz H ma pojedyncze wartości własne takie, że są pomiędzy nimi pary sprzężone o identycznych modułach, to nie wszystkie elementy poddiagonalne dążą do 0. W granicy otrzymuje się macierz: H = 0 0 0 0 0 0 0 0 gwiazdki - elementy ustalone kropki elementy, których wartości mogą się zmieniać. Wartości własne leżą wtedy bezpośrednio na diagonali lub są wartościami własnymi macierzy x leżących na diagonali. Wadą metody może być powolna zbieżność. Zwiększenie wydajności uzyskuje się dokonując przesunięcia widma wartości własnych H i k i I = Q i R i H i+ = R i Q i + k i I Wartość k i wybiera się jako równe otrzymanym już wartościom własnym k i = a i nn lub wartości k i oraz k i+ jako równe wartościom własnym macierzy x znajdujących się w prawym dolnym rogu macierzy H i.

Metoda Hauseholdera rozkładu QR Definiujemy macierz Hauseholdera w postaci H = I uuh u = z kzk e = = sign(z ) z = [z ; z ; : : : ; z n ] T e = [; 0; : : : ; 0] T = kzk (kzk ) która ma własność Hz = kzk [; 0; 0; : : : ; 0] T Macierz Hausholdera posłuży do znalezienia rozkładu QR. Określamy ciąg macierzy P (),P (),P (),...P (n-) przy pomocy których definiujemy macierz R (górną trójkatną): P (n ) P (n ) : : : P () A = R Zakładamy Macierz H () jest macierzą Hauseholdera sprowadzającą pierwsza kolumnę macierzy A (a () )do postaci: Przez P () oznaczamy P () = H () () ka () k [; 0; 0; : : : ; 0] T n P () =. 0 : : : : : : : : : 0. H () Macierz H () sprowadza pierwszą kolumnę macierzy o wymiarze (n-)x(n-) utworzonej z wierszy i kolumn o numerach,,,...,n macierzy P () A (a () ) do postaci Postępujemy w ten sposób otrzymując kolejno P (),P (), itd. ka () k [; 0; 0; : : : ; 0] T (n ) 8

Macierz P (n-) ma postać P (n ) = A macierz H (n-) ma wymiar x. Po wyznaczeniu wszystkich macierzy P (i), rozkład A=QR wyznaczamy według wzorów Liczba operacji potrzebnych do uzyskania rozkładu Hauseholdera wynosi a) mnożenie b) dodawanie c) pierwiastkowanie H (n ) Q = P () P () P () : : : P (n ) R = Q T A M = n + n n D = n + 0 n p = n Uwagi: ) inne metody pozwalające uzyskać rozkład QR to metoda Grama-Schmidta i Givensa ) jeśli macierz A jest symetryczna to rozkład QR zachowuje jej symetrię natomiast rozkład LR nie ) jeśli macierz A jest symetryczna i dodatniookreślona to można stosować rozkład LL T wówczas algorytm LR zachowuje symetrię macierzy A ) metoda szybka dla macierzy Hessenberga i trójdiagonalnej Wyznaczanie wektorów własnych dla rozkładu QR Uwaga: nie zakładamy postaci macierzy pierwotnej A W metodzie QR dostajemy ciąg przekształceń A i = Q i R i! Q i A i = R i A i+ = R i Q i = Q i AQ i = Q i+ R i+ co można uogólnić Q i+ Q i AQ i = R i+ A i+ = R i+ Q i+ = Q i+ Q i AQ i Q i+ A k+ = Q k Q k : : : Q AQ Q : : : Q k 9

Oznaczmy P = P k = Q Q : : : Q k P = P k = Q k Q k : : : Q Mając wyznaczone wektory własne macierzy H możemy obliczyć wektory własne macierzy pierwotnej A P AP = H Hx = x Wówczas można bezpośrednio pokazać że P AP = A k+ = H Macierz A k+ jest macierzą trójkątną górną z wartościami własnymi na diagonali. Wektor własny x (i) tej macierzy (H) przynależny do wartości własnej P AP x = Hx = x A(P x) = Px y = P x Ay = y i = h ii wyznacza się według poniższych wzorów x (i) j = 0; j = n; n ; : : : ; i + x (i) i = x (i) j = P i k=j+ h jkx (i) k h jj h ii ; j = i ; i ; : : : ; 0

Uogólniony problem własny Uogólniony problem własny definiujemy następująco Ax = Bx gdzie: A i B są macierzami kwadratowymi. Najprościej byłoby przekształcić powyższe równanie tak aby przeprowadzić je do zwykłego problemu własnego tj. B Ax = Cx = x Problemem pozostaje jednak jak znaleźć B -? W przypadku, gdy B oraz A są macierzami symetrycznymi możemy posłużyć się rozkładem LL T (w ogólnym przypadku można skorzystać z rozkładu LU) B = LL T BB = I = LL T (L T ) L B = (L T ) L wówczas wykorzystując rozkład LL T można znaleźć macierz podobną do B - A Dzięki temu przekształceniu, macierz G jest symetryczna jak A i posiada identyczne widmo wartości własnych (ale inne wektory własne). Gy = y Jak znaleźć G? Najpierw należy znaleźć macierz F F = A(L T ) rozwiązując układ równań F L T = A =) LF T = A T = A a następnie wyznaczamy G G = L F rozwiązując układ równań LG = F Rozkład LL T wymaga wykonania n / mnożeń a wyznaczenie macierzy G (/)n. Macierz G jest symetryczna więc w celu wyznaczenia jej wartości i wektorów własnych korzystamy z metod przeznaczonych dla tej klasy macierzy. L T (B A)(L T ) = L T (L T ) L A(L T ) = L A(L T ) = G Wektory własne macierzy A wyznaczamy przekształcając wektory macierzy G lub rozwiązując układ L T x = y