Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Justyna Szatkowska Nr albumu: 77931 Metoda dekompozycji przestrzeni i jej zastosowania Praca magisterska na kierunku MATEMATYKA w zakresie MATEMATYKI STOSOWANEJ Praca wykonana pod kierunkiem dra Piotra Krzyżanowskiego Instytut Matematyki Stosowanej i Mechaniki Grudzień 015
Oświadczenie kierującego pracą Potwierdzam, że niniejsza praca została przygotowana pod moim kierunkiem i kwalifikuje się do przedstawienia jej w postępowaniu o nadanie tytułu zawodowego. Data Podpis kierującego pracą Oświadczenie autora (autorów) pracy Świadom odpowiedzialności prawnej oświadczam, że niniejsza praca dyplomowa została napisana przeze mnie samodzielnie i nie zawiera treści uzyskanych w sposób niezgodny z obowiązującymi przepisami. Oświadczam również, że przedstawiona praca nie była wcześniej przedmiotem procedur związanych z uzyskaniem tytułu zawodowego w wyższej uczelni. Oświadczam ponadto, że niniejsza wersja pracy jest identyczna z załączoną wersją elektroniczną. Data Podpis autora (autorów) pracy
Streszczenie W pracy omówiono niektóre metody iteracyjne rozwiązywania układów równań liniowych. Przedstawiono metodę dekompozycji przestrzeni wraz z analizą zbieżności. Jako zastosowanie tej teorii omówiony został (\)-cykl podstawowy wariant metod wielosiatkowych na przykładzie równania Poissona. Słowa kluczowe metody wielosiatkowe, elementarne metody iteracyjne, (\)-cykl, sekwencyjna korekta na podprzestrzeniach, równanie Poissona 11.1 Matematyka Dziedzina pracy (kody wg programu Socrates-Erasmus) Klasyfikacja tematyczna 65N Solution of discretized equations 65F10 Iterative methods for linear systems 65N55 Multigrid methods; domain decomposition Tytuł pracy w języku angielskim Subspace correction method and its applications
Spis treści Wprowadzenie....................................... 5 1. Metody iteracyjne i ich własności......................... 7 1.1. Elementarne metody iteracyjne.......................... 7 1.. Symetryzacja.................................... 8 1.3. Metoda iteracyjna Richardsona.......................... 14 1.4. Metody Jacobiego i Gaussa-Seidela........................ 14. Metoda dekompozycji przestrzeni......................... 17.1. Podstawowe algorytmy............................... 18.1.1. Jednoczesna korekta na podprzestrzeniach (PSC)............ 18.1.. Sekwencyjna korekta na podprzestrzeniach (SSC)............ 19.. Analiza zbieżności................................. 1..1. Analiza zbieżności metody SSC...................... 3. Przykład zastosowania metoda wielosiatkowa dla równania Poissona. 7 3.1. Metoda wielosiatkowa (\)-cykl......................... 8 3.. Wybór operatorów wygładzających........................ 31 Podsumowanie....................................... 35 Bibliografia......................................... 37 3
Wprowadzenie Dyskretyzacja równań różniczkowych cząstkowych prowadzi do bardzo dużych układów równań liniowych. Jednak znalezienie rozwiązania takiego dużego układu za pomocą metod bezpośrednich jest kosztowne zarówno pod względem wykorzystywanej pamięci, jak i ilości obliczeń. Dlatego metody iteracyjne są głównym narzędziem stosowanym w celu znalezienia przybliżonego rozwiązania układu równań pochodzącego z dyskretyzacji równań różniczkowych. Celem niniejszej pracy jest omówienie wybranych fragmentów i przedstawienie szczegółowych dowodów teorii związanej z metodą dekompozycji przestrzeni z prac Jinchao Xu [3] oraz [4] i ich zastosowanie do analizy metody wielosiatkowej. Rozważania rozpoczynamy od omówienia niektórych podstawowych własności elementarnych metod iteracyjnych dla symetrycznego i dodatnio określonego operatora liniowego na przestrzeni liniowej o skończonym wymiarze, w tym własności symetryzacji operatora oraz własności wygładzania błędu, kluczowej w metodach wielosiatkowych. W drugiej części pracy wprowadzone zostały pojęcia i algorytmy związane z metodą dekompozycji przestrzeni. Analiza prowadzi do wyodrębnienia warunku zbieżności metody sekwencyjnej korekty na podprzestrzeniach (SSC). W ostatniej części przedstawiono metodę wielosiatkową w języku teorii dekompozycji przestrzeni i zastosowano wnioski z analizy zbieżności metody SSC. Pokazano założenia gwarantujące, że szybkość zbieżności szczególnego przypadku metod wielosiatkowych, (\)-cyklu, nie zależy od rozmiaru badanego zagadnienia. Na koniec zaprezentowano szczegółowo kolejne kroki (\)-cyklu na przykładzie równania Poissona w połączeniu z uwagami o praktycznych zastosowaniach. 5
Rozdział 1 Metody iteracyjne i ich własności Załóżmy, że V jest przestrzenią wektorową o skończonym wymiarze. Będziemy zajmować się następującym równaniem: Au = f, (1.1) gdzie A : V V jest symetrycznym i dodatnio określonym operatorem liniowym nad V, zaś f V jest dane. Rozdział ten oparty jest na rozdziale z pracy [3]. 1.1. Elementarne metody iteracyjne Na pojedynczy krok elementarnej metody iteracyjnej składają się trzy etapy: 1. Korzystając ze starej aproksymacji (u old ) rozwiązania równania (1.1), obliczamy residuum r old = f Au old.. Rozwiązujemy w przybliżeniu równanie Ae = r old (e spełnia równanie u old +e = u, czyli jest idealną poprawką ). Dla B będącego operatorem liniowym na V otrzymujemy ê = Br old. Operator B możemy traktować jako przybliżony operator odwrotny do A. Dodatkowo będziemy zawsze zakładać, że B jest odwracalne. 3. Na koniec aktualizujemy przybliżenie: u new = u old + ê. W rezultacie dostajemy następujący algorytm dla danego u 0 V : u k+1 = u k + B(f Au k ), k = 0, 1,,... (1.) Decydującym elementem powyższej metody iteracyjnej jest operator B będziemy go nazywać operatorem iteracji. Zwróćmy uwagę, że dla B = A 1 otrzymamy dokładne rozwiązanie równania (1.1) już po pierwszej iteracji. Definicja 1.1.1. Metoda iteracyjna (1.) jest zbieżna, jeżeli lim u k = A 1 f u 0 V. k Stwierdzenie 1.1.. Dla u i u k, spełniającymi odpowiednio (1.1) i (1.), zachodzi u u k = (I BA) k (u u 0 ). (1.3) Ponadto (1.) jest zbieżna wtedy i tylko wtedy, gdy ρ(i BA) < 1 dla ρ oznaczającego promień spektralny; w szczególności (1.) jest zbieżna, jeśli I BA < 1. 7
Dowód. u u k = u u k 1 B(f Au k 1 ) = u u k 1 Bf + BAu k 1 = = (I BA)u (I BA)u k 1 = (I BA)(u u k 1 ) =... = (I BA) k (u u 0 ). Pokażemy tylko szczególny przypadek drugiej części stwierdzenia. Z (1.3) łatwo wynika, że u u k I BA k u u 0, zatem gdy I BA < 1, mamy lim k u u k = 0. Warunek w pełni charakteryzujący kryterium zbieżności można znaleźć w [, tw. 4.6.7.]. 1.. Symetryzacja W tej części pokażemy, w jaki sposób można dokonać symetryzacji operatora B oraz pewne jej własności. Najpierw jednak potrzebne jest wprowadzenie pewnych oznaczeń. Przyjmijmy, że przestrzeń V jest wyposażona w iloczyny skalarne (v, w) oraz (v, w) A = (v, Aw), które indukują odpowiednio normy. oraz. A. Definicja 1..1. Dla danego operatora A operatorem sprzężonym ze względu na (.,.), oznaczanym A T, nazwiemy operator spełniający v, w V (Av, w) = (v, A T w), zaś operatorem sprzężonym ze względu na (.,.) A, oznaczanym A, nazwiemy operator spełniający v, w V (Av, w) A = (v, A w) A. Rozważmy następującą iterację u k+ 1 = u k + B(f Au k ) u k+1 = u k+ 1 Lemat 1... Błąd iteracji (1.4) spełnia Dowód. u u k+1 = u (u k+ 1 + B T (f Au k+ 1 ) (1.4) u u k+1 = (I B T A)(I BA)(u u k ). (1.5) + B T (f Au k+ 1 )) = u u k+ 1 B T Au + B T Au k+ 1 ) = = (I B T A)(u u k+ 1 = (I B T A)u (I B T A)u k+ 1 = (I B T A)(u (u k + B(f Au k ))) = (I B T A)(u u k B(Au Au k )) = = (I B T A)(I BA)(u u k ) = Iterację (1.4) można zapisać jako u k+1 = u k + B(f Au k ), (1.6) gdzie Ponadto zachodzi B = (I (I BA) (I BA))A 1 = B T + B B T AB. (1.7) I BA = (I BA) (I BA). 8
Dowód. Najpierw pokażemy, że dla B = B T +B B T AB zachodzi (1.6). Skorzystamy z (1.5). u u k+1 = (I B T A)(I BA)(u u k ) = (I B T A BA + B T ABA)(u u k ) = = (I (B T + B B T AB)A)(u u k ) = (I BA)(u u k ) u k+1 = u (I BA)(u u k ) = u (u u k BAu + BAu k ) = = u k + BAu BAu k = u k + B(f Au k ) Pozostało do wykazania, że B T + B B T AB = (I (I BA) (I BA))A 1. Zauważmy, że skoro operator A jest dodatnio określony, to w szczególności jest odwracalny. Wystarczy pokazać, że dla v, w V zachodzi ((I (I BA) (I BA))A 1 v, w) A = (B T +B B T ABv, w) A. ((I (I BA) (I BA))A 1 v, w) A = (A 1 v, w) A ((I BA) (I BA)A 1 v, w) A = = (v, w) ((I BA)A 1 v, (I BA)w) A = (v, w) (A(I BA)A 1 v, (I BA)w) = = (v, w) ((I AB)v, (I BA)w) = (v, w) (v, (I BA)w) + (ABv, (I BA)w) = = (v, w) (v, w) + (v, BAw) + (ABv, w) (ABv, BAw) = = (v, BAw) + (ABv, w) (ABv, BAw) = (B T v, Aw) + (Bv, w) A (B T ABv, Aw) = = (B T v, w) A + (Bv, w) A (B T ABv, w) A = (B T + B B T ABv, w) A Operator B dany wzorem (1.7), będziemy nazywać symetryzacją operatora B. Jest to operator symetryczny ze względu na (, ). Pokażemy teraz pewne proste własności symetryzacji. Stwierdzenie 1..3. Dowód. ( BAv, v) A = ((I BA)v, BAv) A v V (1.8) ( BAv, v) A = v A (I BA)v A v V, (1.9) ( BAv, v) A = ((I (I BA) (I BA))A 1 Av, v) A = = (v, v) A ((I BA) (I BA)v, v) A = = (v, v) A ((I BA)v, (I BA)v) A = (1.9) = (v, v) A (v, (I BA)v) A + (BAv, (I BA)v) A = = (v, v) A ((I BA)v, v) A + ((I BA)v, BAv) A = = (v, v) A (v, v) A + (BAv, v) A + (v, BAv) A (BAv, BAv) A = = (v, BAv) A (BAv, BAv) A = ((I BA)v, BAv) A = (1.8) Lemat 1..4. Niech λ max ( BA) będzie oznaczeniem największej wartości własnej BA. Wtedy λ max ( BA) 1. Dowód. Pierwszym krokiem dowodu będzie pokazanie, że BA jest symetryczne ze względu na (.,.) A. Stąd będzie wynikać, że jego wartości własne są rzeczywiste. Faktycznie, dla w, y V mamy ( BAw, y) A = ( BAw, Ay) = (Aw, BAy) = ( BAy, w) A = (w, BAy) A, 9
ponieważ B jest symetryczne ze względu na (.,.). Niech v będzie wektorem własnym, a λ wartością własną BA. Wówczas zachodzi Stąd wynika a to razem z (1.9) daje BAv = λv. ( BAv, v) A = (λv, v) A = λ(v, v) A = λ v A, v A (I BA)v A = λ v A (I BA)v A = (1 λ) v A. Zatem mamy 1 λ 0, a stąd λ 1 dla każdego λ. Twierdzenie 1..5. Następujące warunki są równoważne: 1. metoda iteracyjna (1.6) jest zbieżna,. B jest symetryczne ze względu na (, ) i dodatnio określone, 3. B T + B 1 A jest symetryczne ze względu na (, ) i dodatnio określone, 4. istnieje stała ω 1 (0, ) taka, że dowolna nierówność jest spełniona dla każdego v V : (BAv, BAv) A ω 1 (BAv, v) A (1.10) (Av, v) ω 1 (B 1 v, v) (1.11) ( ω 1 1)(Av, v) ((B T + B 1 A)v, v) (1.1) ( ω 1 )(Bv, v) ( Bv, v) (1.13) Dodatkowo metoda iteracyjna (1.) jest zbieżna wtedy (i tylko wtedy dla B symetrycznej), gdy (1.6) jest zbieżna. Dowód. 1.. Oczywiście, B jest symetryczne ze względu na (, ). Chcemy pokazać, że jest dodatnio określone wtedy i tylko wtedy, gdy metoda (1.6) jest zbieżna. Zauważmy, że na mocy stwierdzenia 1.1. metoda (1.6) jest zbieżna wtedy i tylko wtedy, gdy ρ(i BA) < 1. Zatem musimy zbadać wartości własne λ tego operatora (I BA)v = λv v BAv = λv BAv = (1 λ)v }{{} µ Czyli µ = 1 λ jest wartością własną BA wtedy i tylko wtedy, gdy λ jest wartością własną I BA. W dowodzie lematu 1..4 pokazaliśmy, że BA jest symetryczne ze względu na (.,.) A, stąd jego wartości własne µ są rzeczywiste. Z lematu 1..4 wynika, że µ 1, skąd mamy λ 0. Ponieważ λ jest nieujemna, metoda (1.6) jest zbieżna wtedy i tylko wtedy, gdy λ < 1. To jest równoważne temu, że µ > 0, czyli wartości własne BA są dodatnie. 10
Pozostaje pokazać, że BA jest dodatnio określone wtedy i tylko wtedy, gdy B jest dodatnio określone. Dla w 0 mamy (w, BAw) A = ( BAw, w) A = ( BAw, Aw) = (Aw }{{}, B }{{} Aw) = (y, By), y y prawdziwe dla każdego y 0, ponieważ A jest nieosobliwe. Powyższe rozumowanie implikuje ostatecznie, że metoda (1.6) jest zbieżna wtedy i tylko wtedy, gdy B jest dodatnio określone.. 3. Obie macierze B oraz B T +B 1 A są symetryczne ze względu na (, ). Pokażemy, że pierwsza jest dodatnio określona wtedy i tylko wtedy gdy druga taka jest. Rzeczywiście, dla v 0 (v, Bv) = ( Bv, v) = ((B T + B B T AB)v, v) = = (B T v, v) + (Bv, v) (B T ABv, v) = ( }{{} Bv, v) (ABv, Bv) = y = (y, B 1 y) (Ay, y) = (B T y, y) + (B 1 y, y) (Ay, y) = = ((B T + B 1 A)y, y) = (y, (B T + B 1 A)y). Stąd (v, Bv) > 0 (y, (B T + B 1 A)y) > 0. (1.1) 3. Dla v 0 ((B T + B 1 A)v, v) ( ω 1 1)(Av, v) = ( ω 1 1) v A > 0 dla ω 1 (0, ). 3. (1.11) Dla v = 0 nierówność jest prawdziwa. Weźmy zatem v 0, wtedy (1.10) (1.11) 0 < (v, (B T + B 1 A)v) 0 < (B 1 v, v) (Av, v) 0 < (Av, v) < (B 1 v, v) 0 < (B 1 v, v) 0 < ω 1 (B 1 v, v) dla ω 1 (0, ). Jeśli v = 0, to obie nierówności są prawdziwe. Załóżmy, że v 0, wówczas (BAv, BAv) A ω 1 (BAv, v) A y = BAv (y, y) A ω 1 (y, A 1 B 1 y) A (y, Ay) ω 1 (y, AA 1 B 1 y) (Ay, y) ω 1 (B 1 y, y) 11
(1.11) (1.1) Gdy v = 0, to obie nierówności są prawdziwe. Załóżmy więc, że v 0, wtedy mamy (1.11) (1.13) ( ω 1 1)(Av, v) (B 1 v, v) (Av, v) (Av, v) (Av, v) ω 1 (B 1 v, v) (Av, v) (Av, v) ω 1 (B 1 v, v) (Av, v) ω 1 (B 1 v, v) Dla v = 0 nierówności są prawdziwe. Zbadajmy przypadek, gdy v 0, wówczas ( ω 1 )(Bv, v) ( Bv, v) ( ω 1 )(Bv, v) (B T v, v) + (Bv, v) (B T ABv, v) (Bv, v) ω 1 (Bv, v) (Bv, v) (Bv, ABv) (Bv, ABv) ω 1 (Bv, v) y = Bv (Ay, y) ω 1 (B 1 y, y) Udowodnimy, że jeśli metoda iteracyjna (1.6) jest zbieżna, to również (1.) jest zbieżna. Ze stwierdzenia 1.1. wystarczy pokazać, że ρ(i BA) < 1. Załóżmy, że metoda iteracyjna (1.6) jest zbieżna. Wiemy już, że jest to równoznaczne z tym, że macierz B T + B 1 A jest symetryczna ze względu na (.,.) i dodatnio określona. W związku z tym dla v 0 zachodzi: 0 < ((B T + B 1 A)v, v) = (B T v, v) + (B 1 v, v) (Av, v) = = (v, B 1 v) + (B 1 v, v) (Av, v) = (B 1 v, v) (Av, v) = = (B }{{ 1 v}, v) (v, v) A = (y, By) (By, By) A = (y, By) By A y 0 < (y, By) By A 0 By A < (y, By) 0 < (y, By) = (By, y) y = Aw 0 < (BAw, w) A Dla λ oraz x 0 będących odpowiednio wartością własną i wektorem własnym I BA mamy (I BA)x = λx ((I BA)x, x) A = (λx, x) A (x, x) A (BAx, x) A = λ(x, x) A (1 λ)(x, x) A = (BAx, x) A > 0 (1 λ) x A > 0 1 λ > 0 1 λ < 1
Na koniec pokażemy, że I BA jest dodatnio określone, z czego będzie wynikać, że wszystkie jego wartości własne są dodatnie. Niech { v i } będą wektorami własnymi operatora BA, zaś { λ i } odpowiednimi wartościami własnymi, tzn. BA v i = λ i v i. Wówczas dla x V mamy x = α i v i BAx = α i λi v i λ max αi v i = λ max x ((I BA)x, x) = (x, x) (BAx, x) x λ max x = (1 λ max ) x. Zatem ρ(i BA) < 1, czyli metoda iteracyjna (1.) jest zbieżna. Pozostało pokazać, że jeśli metoda iteracyjna (1.) jest zbieżna, to również (1.6) jest zbieżna. Załóżmy, że metoda iteracyjna (1.) jest zbieżna, czyli ρ(i BA) < 1. Skorzystamy z równania (1.9). I BA A = sup v V = sup v V = sup v V (I BA)v A ((I v = sup BA)v, (I BA)v) A A v V v A (v, v) A ( BAv, v) A + ( BAv, BAv) A v = A v A ( v A (I BA)v A ) + ( BAv, BAv) A v A = = = sup v V (I BA)v A + BAv A v A v A = (I BA)v A = sup v V v + sup BAv A A v V v A = I BA A + BA A 1 1 = Weźmy infimum po wszystkich normach indukowanych przez te operatory. Wówczas za [, tw. 4.6.6.] można napisać ponieważ z lematu 1..4, ρ( BA) 1. ρ (I BA) = ρ (I BA) + ρ ( BA) 1 < 1, Wniosek 1..6. Łatwo można pokazać, że ω (0, ) v V (( ω 1 )Bv, v) ( Bv, v) (Bv, v). Dowód. Nierówność (( ω 1 )Bv, v) ( Bv, v) to nic innego jak nierówność (1.13). Wystarczy pokazać, że ( Bv, v) (Bv, v) dla każdego v V. ( Bv, v) = ((B T + B B T AB)v, v) = (B T v, v) + (Bv, v) (B T ABv, v) = = (v, Bv) + (Bv, v) (ABv, Bv) = (Bv, v) (Bv, ABv) }{{} Bv A 0 (Bv, v) 13
1.3. Metoda iteracyjna Richardsona Jedną z prostszych, choć niezbyt wydajnych metod iteracyjnych jest metoda Richardsona z B = ωi. Zajmiemy się szczególnym przypadkiem B = ω ρ(a) I, wówczas równanie (1.) przybiera postać u k+1 = u k + ω ρ(a) (f Au k), k = 0, 1,,... Metoda Richardsona ma własność wygładzania, ważną dla późniejszych rozważań. Niech {φ i } N i=1 będzie bazą ortogonalną V złożoną z wektorów własnych operatora A (istnieje, bo A jest symetryczny). Niech {λ i } będą odpowiednimi wartościami własnymi, tzn. Aφ i = λ i φ i, przy czym bez zmniejszenia ogólności możemy założyć, że 0 < λ 1 λ... λ n = ρ(a). Niech {α i } będą współczynnikami rozwinięcia u u 0 w bazie {φ i } N i=1, tzn. u u 0 = i α iφ i. Wówczas u u k = α i (1 ω λ i ) k φ i. λ i n Rzeczywiście, α i (1 ω λ i ) k φ i = λ i n i = i = i α i (1 ω λ n λ i )(1 ω λ n λ i ) k 1 φ i = α i (...) k 1 φ i ω λ n }{{} B α i (...) k 1 φ i BA i i α i λ i φ i }{{} Aφ i (...) k 1 = α i φ i (...) k 1 = = (I BA) i α i (...) k 1 φ i =... = (I BA) k i α i φ i = = (I BA) k (u u 0 ) (1.3) = u u k. Zauważmy, że dla ustalonego ω (0, ) jeśli λ i jest bliska λ n, to wyrażenie (1 ω λ n λ i ) k zbiega do zera przy k. Odpowiednio dobierając ω można tę zbieżność przyspieszyć, tak że mocno oscylujące składowe u u k, czyli błędu metody, ulegają wytłumieniu zaledwie po kilku iteracjach. 1.4. Metody Jacobiego i Gaussa-Seidela Załóżmy, że V = R n, zaś A R n n jest macierzą symetryczną i dodatnio określoną. Wówczas można zapisać A = D L U, gdzie D to przekątna macierzy A, zaś L i U to odpowiednio dolna i górna macierz trójkątna, będąca częścią macierzy A. Wybór postaci macierzy B skutkuje otrzymaniem określonej metody iteracyjnej: { D 1 metoda Jacobiego B = (D L) 1 metoda Gaussa-Seidela Dzięki twierdzeniu 1..5 można łatwo określić, kiedy powyższe metody są zbieżne. 14
Twierdzenie 1.4.1. Załóżmy, że A jest macierzą symetryczną i dodatnio określoną. Wtedy metoda Jacobiego jest zbieżna wtedy i tylko wtedy, gdy D A jest macierzą symetryczną i dodatnio określoną, metoda Gaussa-Seidela jest zawsze zbieżna, Dowód. Posłużymy się twierdzeniem 1..5; pokażemy, kiedy macierz B T + B 1 A jest symetryczna i dodatnio określona. Jest to równoważne temu, że metoda iteracyjna (1.6) jest zbieżna, a to z kolei jest równoważne zbieżności metody (1.), jeśli B jest symetryczna. Symetria macierzy B T + B 1 A jest oczywista, skoro macierz A jest symetryczna. metoda Jacobiego: ((B T + B 1 A)v, v) = ((D 1 ) T v, v) + ((D 1 ) 1 v, v) (Av, v) = = (v, (D 1 ) 1 v) + ((D 1 ) 1 v, v) (Av, v) = = (Dv, v) (Av, v) = ((D A)v, v) Macierz B jest symetryczna jako macierz diagonalna. Stąd macierz B T + B 1 A jest dodatnio określona wtedy i tylko wtedy, gdy macierz D A jest dodatnio określona. metoda Gaussa-Seidela: Najpierw pokażemy, że skoro A jest dodatnio określona, to D również. Oznaczmy przez a 1,..., a n elementy na przekątnej macierzy A, zaś e i niech oznacza wektory postaci (0,..., 0, }{{} 1, 0,..., 0) T. Wówczas i i {1,..., n} (e i ) T Ae i = a i Z definicji A jako macierz dodatnio określona spełnia warunek v V v T Av > 0, więc a i > 0 dla każdego i. Stąd wszystkie elementy diagonalnej macierzy D są dodatnie, zatem jest ona dodatnio określona. ((B T + B 1 A)v, v) = (((D L) 1 ) T v, v) + (((D L) 1 ) 1 v, v) (Av, v) = = (v, ((D L) 1 ) 1 v) + ((D L) v, v) (Av, v) = }{{} A+U = ((D L)v, v) + ((A + U)v, v) (Av, v) = = ((D L)v, v) + (Uv, v) U=LT = = ((D L)v, v) + (L T v, v) = = ((D L)v, v) + (Lv, v) = = (Dv, v) > 0 Zatem dla metody Gaussa-Seidela macierz B T + B 1 A jest dodatnio określona. 15
Rozdział Metoda dekompozycji przestrzeni W tym rozdziale omówimy metodę dekompozycji przestrzeni wektorowej V. Wprowadzimy dwa algorytmy, które stanowią podstawę dla konstrukcji wielu metod iteracyjnych. W dalszej części rozdziału zajmiemy się analizą ich zbieżności. Rozdział ten jest oparty na rodziale 3 z pracy [3] oraz na rozdziałach 3, 4 z [4]. Definicja.0.. Niech V będzie przestrzenią wektorową oraz niech V i V (0 i J) będą podprzestrzeniami przestrzeni V. Jeśli dla każdego v V istnieją v i V i, 0 i J, takie że v = J v i (przy czym taka reprezentacja v nie musi być jedyna), to mówimy, że {V i } tworzą dekompozycję V i zapisujemy V = V i, (.1) Dla każdego i definiujemy ortogonalne rzuty Q i, P i : V V i następująco: (Q i u, v i ) = (u, v i ) (P i u, v i ) A = (u, v i ) A, u V, v i V i. Natomiast A i : V i V i będzie (symetrycznym i dodatnio określonym) obcięciem A do V i, takim że (A i u i, v i ) = (Au i, v i ) u i, v i V i. Lemat.0.3. Dla i = 0,..., N zachodzi Dowód. Niech u V, v i V i. Wówczas mamy A i P i = Q i A. (.) (A i P i u, v i ) = (P i u, A i v i ) = (P i u, Av i ) = (P i u, v i ) A = (u, v i ) A = = (u, Av i ) = (Au, v i ) = (Q i Au, v i ). Lemat.0.4. Jeśli u jest rozwiązaniem (1.1), to A i u i = f i (.3) gdzie u i = P i u oraz f i = Q i f. Powyższe równanie możemy traktować jako obcięcie (1.1) do V i. 17
Dowód. W dowodzie skorzystamy z równania (.). Au = f Q i Au = Q i f A i P i u = f i A i u i = f i Przykład.0.5. Niech V = R n, rozważmy dekompozycję, w której V i := span{e i }, czyli n R n = span{e i }. (.4) i=1 Dodatkowo niech A = (a ij ) R n n będzie macierzą symetryczną i dodatnio określoną. Wówczas A i = a ii, Q i y = y i e i, gdzie y i jest i-tą składową wektora y R n..1. Podstawowe algorytmy Większość metod iteracyjnych postaci (1.) można sklasyfikować jako jeden z dwóch algorytmów, które zostaną teraz omówione: jednoczesnej korekty na podprzestrzeniach (ang. parallel subspace correction, PSC) oraz sekwencyjnej korekty na podprzestrzeniach (ang. successive subspace correction, SSC). Są one podobne odpowiednio do metody Jacobiego i Gaussa- Seidela..1.1. Jednoczesna korekta na podprzestrzeniach (PSC) Niech u old będzie danym przybliżeniem rozwiązania u równania (1.1). Residuum jest zdefiniowane równaniem r old = f Au old. Jeśli nie jest dostatecznie małe, rozważamy równanie residualne Ae = r old. Oczywiście u = u old + e jest rozwiązaniem równania (1.1), lecz wymaga to rozwiązania oryginalnego zadania. Zamiast tego rozwiążemy równanie obcięte do poszczególnych podprzestrzeni V i A i e i = Q i r old, i = 0,..., N. (.5) Wprowadźmy kolejny symetryczny ze względu na (, ) oraz dodatnio określony operator R i : V i V i, który będzie przybliżoną odwrotnością A i. Zatem przybliżone rozwiązanie (.3) można przedstawić jako û i = R i f i. Korzystając z operatora R i, równanie (.5) rozwiązujemy w sposób przybliżony i znajdujemy przybliżoną korektę ê i = R i Q i r old. i jako nowe przybliżenie rozwiązania u przyjmujemy: u new = u old + ê i. (.6) 18
Definiując możemy przepisać (.6) jako B = R i Q i, (.7) Dostajemy stąd następujący algorytm: u new = u old + B(f Au old ). Algorytm.1.1 (PSC). Dla danego u 0 V stosuje się schemat iteracyjny (1.) dla B danego przez (.7). Przykład.1.. Jeśli V = R n oraz dekompozycja jest taka, jak w przykładzie.0.5, to powyższy algorytm odpowiada metodzie Jacobiego. Z twierdzenia 1.4.1 wiemy, że metoda Jacobiego nie jest zbieżna dla każdego problemu z symetrycznym i dodatnio określonym operatorem A, więc w ogólności algorytm.1.1 również nie będzie zawsze zbieżny. Natomiast macierz B można wykorzystać w PCG jako macierz ściskającą dla równania (1.1). Stwierdzenie.1.3. Operator B dany przez (.7) jest symetryczny względem (, ) i dodatnio określony. Dowód. Dowód znajduje się w [4, str. 586]..1.. Sekwencyjna korekta na podprzestrzeniach (SSC) Algorytm PSC opiera się na równoległych poprawkach wyznaczonych na podstawie residuum z poprzednich iteracji. Nieco innym podejściem do zagadnienia jest algorytm SSC (sekwencyjnej korekty na podprzestrzeniach), wprowadzający korektę kolejno na każdej podprzestrzeni, uwzględniając najbardziej aktualne przybliżenie u. Zaczynamy od v 1 = u old i obliczamy poprawkę w podprzestrzeni V 0, otrzymując v 0 = v 1 + R 0 Q 0 (f Av 1 ). W następnym kroku poprawiamy najnowsze przybliżenie v 0 i obliczamy v 1 w przestrzeni V 1 v 1 = v 0 + R 1 Q 1 (f Av 0 ). Wykonujemy analogiczny proces kolejno dla wszystkich podprzestrzeni tworzących dekompozycję V ; w rezultacie dostajemy następujący algorytm: Algorytm.1.4 (SSC). Dane jest u k V. v 1 u k for i = 0 : J v i v i 1 + R i Q i (f Av i 1 ) endfor u k+1 v J Przykład.1.5. Dla dekompozycji takiej, jak w przykładzie.0.5, powyższy algorytm odpowiada metodzie Gaussa-Seidela. 19
Zdefiniujmy operatory T i : V V i jako T i = R i Q i A. Wówczas bezpośrednio z (.) zachodzi T i = R i A i P i. Dodatkowo niech T = BA = J T i, gdzie B jest operatorem zdefiniowanym jak w (.7). Stwierdzenie.1.6. Operatory T i są symetryczne ze względu na (, ) A, nieujemnie określone oraz jeżeli R i = A 1 i, to T i = P i. Dowód. Zaczniemy od pokazania, że T i są symetryczne. Wystarczy udowodnić, że dla dowolnych v, w V zachodzi (T i v, w) A = (v, T i w) A. Rzeczywiście, (T i v, w) A = (R i Q i Av, w) A = (R i Q i Av, P i w) A = (R i Q i Av, AP i w) = (R i Q i Av, A i P i w) = = (Q i Av, R T i A i P i w) = (Av, R i A i P i }{{} T i w) = (T i w, Av) = (T i w, v) A = (v, T i w) A. Aby T i były nieujemnie określone, wystarczy, że dla każdego niezerowego v V zachodzi (T i v, v) A 0. Faktycznie, (T i v, v) A = (T i v, P i v) A = (T i v, AP i v) = (T i v, A i P i v). Korzystamy z równości A i P i = Q i A i otrzymujemy (T i v, A i P i v) = (R i Q i Av, A i P i v) = (R i Q i Av, Q i Av) 0, ponieważ operatory R i oraz A są dodatnio określone, a Q i jest rzutem na V i. Na koniec pokażemy ostatnią część stwierdzenia. Załóżmy, że R i = A 1 i. Wówczas stąd T i = P i. (T i v, w) = (R i A i P i v, w) = (A 1 i A i P i v, w) = (P i v, w), Lemat.1.7. W algorytmie SSC zachodzi gdzie dla 0 i J u u k+1 = E J (u u k ), (.8) E i := (I T i )(I T i 1 )... (I T 1 )(I T 0 ). Dowód. Niech v i oznacza i-tą poditerację algorytmu.1.4, gdzie v 1 = u k. Najpierw pokażemy, że zachodzi u v i+1 = (I T i+1 )(u v i ), i = 0,..., J. (.9) Faktycznie, u v i+1 = u (v i + R i+1 Q i+1 (f Av i )) = u v i R i+1 Q i+1 (f Av i ) = = u v i R i+1 Q i+1 f + R i+1 Q i+1 Av i (1.1) = u v i R i+1 Q i+1 Au + T i+1 v i = = u v i T i+1 u + T i+1 v i = (I T i+1 )(u v i ). Przepisujemy prawą stronę równania (.8) pamiętając, że v 1 = u k następnie stosujemy wielokrotnie (.9) E J (u u k ) = E J (u v 1 ), E J (u v 1 ) = (I T J )... (I T 1 )(I T 0 )(u v 1 ) = = (I T J )... (I T 1 )(u v 0 ) =... = (I T J )(u v J 1 ) = = u v J = u u k+1. 0
.. Analiza zbieżności W tej części zajmiemy się zbieżnością algorytmów opisanych w poprzednim podrozdziale. Zaczeniemy od wprowadzenia pewnych parametrów potrzebnych do dalszej analizy zbieżności. Definicja..1. Przez ω 1 oznaczymy najmniejszą stałą, która spełnia bądź równoważnie (T i v, T i v) A ω 1 (T i v, v) A v V, 0 i J (.10) (v i, A i v i ) ω 1 (R 1 i v i, v i ) v i V i, 0 i J. (.11) Pokażemy równoważność nierówności (.10) i (.11). Dowód. (v i, A i v i ) ω 1 (Ri 1 v i, v i ) (v i, Av i ) ω 1 (Ri 1 v i, v i ) v i = R i Q i Av (T i v, AT i v) ω 1 (Q i Av, R i Q i Av) (T i v, T i ) A ω 1 (Av, T i v) (T i v, T i ) A ω 1 (T i v, v) A Ponieważ R i jest symetryczne i dodatnio określone, to ω 1 będzie dobrze określone i dodatkowo ω 1 = max ρ(r ia i ) = max ρ(t i). 0 i J 0 i J Definicja... Załóżmy, że dla każdego v V istnieje dekompozycja v = J v i, v i V i, taka że istnieje stała K 0, spełniająca (Ri 1 v i, v i ) K 0 (Av, v) (.1) oraz zachodzi ρ(a i )(v i, v i ) C 0 (v, v) A, (.13) gdzie C 0 jest zależna tylko od dekompozycji. Lemat..3. Nierówność (.1) zachodzi ze stałą gdzie ω 0 = min 0 i J (λ min (R i )ρ(a i )). K 0 C 0 ω 0, 1
(F v,v) Dowód. Znany jest fakt, że zachodzi λ max (F ) = max v V \{0} v dla F będącego operatorem symetrycznym i dodatnio określonym. Weźmy v i V. Wówczas mamy (Ri 1 v i, v i ) = i i v i (R 1 i v i, v i ) v i i = v i 1 i 1 min i (λ min (R i )ρ(a i )) v i λ max (R 1 i ) = λ min (R i ) = ρ(a i ) v i 1 λ i min (R i )ρ(a i ) ρ(a i )(v i, v i ) i C 0 min i (λ min (R i )ρ(a i )) (v, v) A = C 0 ω 0 (Av, v) Definicja..4. Niech K 1 będzie najmniejszą stałą spełniającą nierówność: i (T i u i, T j v j ) A ( J K 1 j=0 dla każdego u i, v i V, i = 1,,..., J. ) 1 ( J ) 1 (T i u i, u i ) A (T j v j, v j ) A. (.14) Przydatna będzie także nierówność Cauchy-Schwarza w następującej postaci j=0 (F u, v) (F u, u) 1 (F v, v) 1, u, v V gdzie F jest operatorem w V nieujemnie określonym i symetrycznym ze względu na (, )...1. Analiza zbieżności metody SSC Aby przedstawić warunki zbieżności metody SSC, na mocy stwierdzenia 1.1. wystarczy pokazać, że istnieje stała 0 δ < 1 taka, że E J A δ, (.15) gdzie E J jest zdefiniowane jak w lemacie.1.7. Analizę zbieżności dla algorytmu SSC zaczniemy od udowodnienia kilku lematów. Lemat..5. Oznaczmy E 1 = I, wówczas oraz i I E i = T j E j 1. (.16) j=0 v A E J v A ( ω 1 ) (T i E i 1 v, E i 1 v) A. (.17) Dowód. Najpierw pokażemy (.16). Zauważmy, że E i = (I T i )E i 1, skąd E i = (I T i )E i 1 E i 1 E i = T i E i 1 (E 1 E 0 ) + (E 0 E 1 ) +... + (E i 1 E i ) = T 0 E 1 + T 1 E 0 +... + T i E i 1 I E i = i T j E j 1 j=0
Nierówność (.17) również wynika z E i = (I T i )E i 1. Rzeczywiście, ponieważ T i jest symetryczny w (, ) A E i 1 v A E i v A = T i E i 1 v A + (T i E i 1 v, E i v) A = Zauważmy, że z definicji ω 1 zachodzi zatem ostatecznie mamy = (T i E i 1 v, T i E i 1 v) A + (T i (I T i )E i 1 v, E i 1 v) A = = ((I T i )T i E i 1 v, E i 1 v) A = = (T i E i 1 v, E i 1 v) A (T i E i 1 v, E i 1 v) A = = (T i E i 1 v, E i 1 v) A (T i E i 1 v, T i E i 1 v) A (T i E i 1 v, T i E i 1 v) A ω 1 (T i E i 1 v, E i 1 v) A, (T i E i 1 v, E i 1 v) A (T i E i 1 v, T i E i 1 v) A ( ω 1 )(T i E i 1 v, E i 1 v) A. Lemat..6. Niech ω 1 <, wówczas dla każdego v V (T i v, v) A (1 + K 1 ) J (T i E i 1 v, E i 1 v) A. (.18) Dowód. Z (.16) mamy (T i v, v) A = (T i v, E i 1 v) A + (T i v, (I E i 1 )v) A = = i (T i v, E i 1 v) A + (T i v, T j E j 1 v) A. (.19) j=0 Zsumujmy (.19) po i. Wówczas i (T i v, v) A = (T i v, E i 1 v) A + (T i v, T j E j 1 v) A. (.0) j=0 Stosując nierówność Cauchy-Schwarza, otrzymujemy ( J ) 1 ( J ) 1 (T i v, E i 1 v) A (T i v, v) A (T i E i 1 v, E i 1 v) A Po wykorzystaniu powyższej nierówności oraz (.14) dostajemy (T i v, v) A ( J ) 1 ( J ) 1 (T i v, v) A (T i E i 1 v, E i 1 v) A + ( J ) 1 ( J ) 1 + K 1 (T i v, v) A (T i E i 1 v, E i 1 v) A. = ( J ) 1 ( J ) 1 = (1 + K 1 ) (T i v, v) A (T i E i 1 v, E i 1 v) A 3.
Stąd ( J ) 1 (T i v, v) A ( J ) 1 (1 + K 1 ) (T i E i 1 v, E i 1 v) A J (T i v, v) A (1 + K 1 ) (T i E i 1 v, E i 1 v) A. Lemat..7. λ min (T ) K 1 0. Dowód. Niech v = J v i będzie dekompozycją, dla której zachodzi (.1). Wówczas zaś z nierówności Cauchy-Schwarza (v i, P i v) A = = = = = v A = (v, v) A = (v i, v) A = (v i, P i v) A, (v i, AP i v) = (v i, A i P i v) = (v i, Ri 1 R i A i P i v) = (A 1 Ri 1 v i, R i A i P i v) A = (AA 1 Ri 1 v i, R i A i P i v) = (Ri 1 v i, R i A i P i v) (Ri 1 v i, v i ) 1 (R 1 i R i A i P i v, R i A i P i v) 1 = (Ri 1 v i, v i ) 1 (APi v, R i A i P i v) 1 J = (Ri 1 v i, v i ) 1 (Pi v, R i A i P i v) 1 A = ( (Ri 1 v i, v i ) 1 (Ri A i P i v, v) 1 J ) 1 ( A (Ri 1 J ) 1 v i, v i ) (T i v, v) A K 0 v A (T v, v) 1 A. Ostatnia nierówność wynika z definicji K 0. Ostatecznie mamy skąd wynika, że λ min (T ) K 1 0. v A K 0 (T v, v) A, (.1) Twierdzenie..8. Załóżmy, że stała ω 1 zdefiniowana w (.10) spełnia ω 1 <. Wówczas E J spełnia dla algorytmu.1.4 E J A 1 Dowód. Zauważmy najpierw, że gdy ω 1 <, to ω 1 < 1. (.) K 0 (1 + K 1 ) ω 1 K 0 (1 + K 1 ) > 0. 4
Nierówność (.) wynika z nierówności Rzeczywiście, v A K 0(1 + K 1 ) ω 1 ( v A E J v A) v V. (.3) v A K 0(1 + K 1 ) ( v A E J v ω A) 1 K 0 (1 + K 1 ) ( E J v K0 (1 + K 1 ) ) A 1 v A ω 1 ω ( 1 ) E J v ω 1 A 1 K 0 (1 + K 1 ) v A sup v V E J v A v A E J A 1 ( sup 1 v V ) ω 1 K 0 (1 + K 1 ) ω 1 K 0 (1 + K 1 ). Wystarczy więc udowodnić (.3). Wykorzystamy kolejno nierówności (.18) oraz (.17). (T i v, v) A (1 + K 1 ) J (T i E i 1 v, E i 1 v) A = (1 + K 1) ( v A E J v ω A) 1 Ponieważ na mocy (.1) wiemy, że zachodzi v A K 0(T v, v) A, kończy to dowód (.). Wniosek..9. Jeżeli ω 1 <, to metoda SSC (algorytm.1.4) jest zbieżna. Zauważmy, że oszacowania w twierdzeniu..8 nie zależą od kolejności, w jakiej wykorzystujemy elementy dekompozycji w algorytmie.1.4. To oznacza, że dla dowolnej kolejności te oszacowania pozostają takie same. 5
Rozdział 3 Przykład zastosowania metoda wielosiatkowa dla równania Poissona Rozważmy następujące zagadnienie: { u = f w Ω R u = 0 na Ω (3.1) gdzie Ω jest wielokątem. Załóżmy, że chcemy dokonać aproksymacji jego rozwiązania metodą elementu skończonego z elementem liniowym trójkątnym. Szczegółową analizę tego zagadnienia przedstawił Braess w [1]. Wprowadźmy na Ω ciąg siatek T k = {τk i } dla k = 0,..., J. Siatki są zagnieżdżone w taki sposób, że każdy trójkąt τk 1 l można przedstawić jako sumę czterech mniejszych trójkątów podobnych z {τk i}. Dodatkowo dla każdego k trójkąty z {τ k i } są rozłączne, suma ich domknięć tworzy całą Ω, a wspólne części ich brzegów to wierzchołek, wspólna krawędź lub zbiór pusty. Rys. 1: Siatki T 0, T 1 oraz T dla Ω będącego kwadratem. Niech M k dla k = 0,..., J będą przestrzeniami elementu skończonego odpowiadającymi siatkom T k. Wybierzmy M i := {w C( Ω); w jest liniowe w każdym trójkącie oraz w = 0 na Ω} W każdym trójkącie w M i jest postaci w(x, y) = a + bx + cy oraz jest jednoznacznie zdefiniowana przez swoje wartości w wierzchołkach trójkąta. 7
Zauważmy, że zachodzi M 0 M 1... M J. Naszym celem jest znalezienie przybliżonego rozwiązania na najdrobniejszej siatce. Aproksymacją rozwiązania zagadnienia (3.1) jest u spełniające a(u, v) = (f, v), u, v M J, (3.) gdzie a(u, v) = Ω u v oraz (f, v) = Ω fv. Operator A J : M J M J definiujemy jako (A J u, v) = a(u, v) dla u, v M J. Szybkość zbieżności metody Jacobiego i Gaussa-Seidela jest zależna od rozmiaru zadania. W przypadku badanego zagadnienia te metody iteracyjne co prawda są zbieżne, ale dla małego parametru dyskretyzacji zbiegają bardzo wolno ze względu na złe uwarunkowanie. Rozwiązaniem tego problemu byłaby metoda, której szybkość zbieżności nie zależy od parametru dyskretyzacji, a tym samym, od rozmiaru zadania. Takie cechy posiada metoda wielosiatkowa, którą omówimy w tym rozdziale. 3.1. Metoda wielosiatkowa (\)-cykl Metody wielosiatkowe mają wiele wariantów, ale skupimy się na jednym z nich, najbardziej elementarnym, tzw. (\)-cyklu (ang. backslash cycle). W terminologii rozdziału ustalamy V = M J oraz V k = M J k, wówczas trywialnie V = i V i. Ponadto, jak poprzednio zakładaliśmy, R i : M i M i jest operatorem symetrycznym i dodatnio określonym, a Q i : M J M i jest ortogonalnym rzutem, takim że dla u M J oraz v i M i (Q i u, v i ) = (u, v i ) dla (, ) będącego standardowym iloczynem skalarnym. Przypomnijmy, że A k jest obcięciem A J do M k, takim że (A k u k, u k ) = (A J u k, u k ) dla u k M k. Metoda wielosiatkowa będzie się opierała na odpowiednim zdefiniowaniu ciągu operatorów B k jako przybliżonych odwrotności A k. Algorytm 3.1.1 ((\)-cykl). Dla k = 0 niech B 0 = A 1 0. Załóżmy, że znamy B k 1 : M k 1 M k 1. Zdefiniujemy teraz B k : M k M k, który jest operatorem iteracji dla równania postaci A k v = g. Dla danego g M k, wartość B k g zadana jest następującą sekwencją kroków: 1. Wygładzenie: Startując z v 0 = 0 wyznaczamy dla l = 1,,..., m v l = v l 1 + R k (g A k v l 1 ).. Gruba poprawka: Dla równania A k 1 e = Q k 1 (g A k v m ) niech e k 1 M k 1 będzie jego rozwiązaniem przybliżonym określonym przez operator iteracji B k 1 : Wówczas definiujemy e k 1 = B k 1 Q k 1 (g A k v m ). B k g = v m + e k 1. 8
Mając zdefiniowany ciąg B k, k = 0,..., J, rozważmy następującą elementarną metodę iteracyjną typu (1.): u i+1 = u i + B J (f A J u i ). (3.3) Zauważmy, że wtedy skąd nasuwa się następujący wniosek u i+1 = u i + B J A J (u u i ) u u i+1 = u u i B J A J (u u i ) u u i+1 = (I B J A J )(u u i ), Wniosek 3.1.. Dla algorytmu 3.1.1 z m = 1 mamy gdzie I B J A J = (I T 0 )(I T 1 )... (I T J ) = E J, T 0 = P 0, T k = R k A k P k, 1 k J. To znaczy, że gdy m = 1 iteracja (3.3) jest równoważna algorytmowi SSC (por. algorytm.1.4). Dowód. Dla m = 1 mamy v m = v 0 + R k (g A k v 0 ) = R k g e k 1 = B k 1 Q k 1 (g A k v m ) = B k 1 Q k 1 (g A k R k g) B k g = v m + e k 1 = R k g + B k 1 Q k 1 (I A k R k )g = = (R k + B k 1 Q k 1 B k 1 Q k 1 A k R k )g W dowodzie posłużymy się metodą indukcji. Sprawdzimy najpierw, czy równość zachodzi dla k = 1. I B 1 A 1 = I R 1 A 1 B 0 Q 0 A 1 + B 0 Q 0 A 1 R 1 A 1 = = I R 1 A 1 A 1 0 Q 0A 1 + A 1 0 Q 0A 1 R 1 A 1 = = I R 1 A 1 P 0 + P 0 R 1 A 1 = I R 1 A 1 P 1 P 0 + P 0 R 1 A 1 P 1 = = (I P 0 )(I R 1 A 1 P 1 ) = (I T 0 )(I T 1 ) W drugim kroku załóżmy, że zachodzi I B k 1 A k 1 = (I T 0 )... (I T k 1 ). Chcemy pokazać, że również I B k A k = (I T 0 )... (I T k 1 )(I T k ). I B k A k = I R k A k B k 1 Q k 1 A k + B k 1 Q k 1 A k R k A k = = I R k A k B k 1 A k 1 + B k 1 A k 1 R k A k = = I R k A k P k B k 1 A k 1 + B k 1 A k 1 R k A k P k = = (I B k 1 A k 1 )(I R k A k P k ) = (I B k 1 A k 1 )(I T k ) Poniżej zajmiemy się kwestią zbieżności (\)-cyklu. Pokażemy, że przy pewnych założeniach zbieżność metody wielosiatkowej nie zależy od rozmiaru zadania. Dla każdego k = 0, 1,..., J niech λ k oznacza promień spektralny A k. Będziemy zakładać, że: 9
(A1) dla każdego v M istnieje dekompozycja, taka że istnieje parametr K 0 zdefiniowany w (.1); (A) istnieją c 0, c 1 i ω 1 niezależne od J, takie że dla każdego k operatory R k spełniają (A3) dla stałych c 0, c 1 i ω 1 zachodzi również (R k v, v) ω 1 (A 1 k v, v) v M k; (3.4) c 0 λ k (v, v) (R k v, v) c 1 λ k (v, v) v M k ; (3.5) (A4) istnieje γ (0, 1) oraz C 3 > 0 niezależne od J, takie że dla każdego i j (T i v j, v j ) A C 3 γ i j (v j, v j ) A v j V j. (3.6) Lemat 3.1.3. Przy założeniach (A1)-(A4) istnieje stała C 0 niezależna od J, taka że parametr K 0 spełnia K 0 C 0. Dowód. Z lematu..3 wiemy, że K 0 C 0 min 0 i J (λ i λ min (R i )). (3.7) Na mocy (3.5) mamy λ min (R i ) c 0 λ i, skąd K 0 C 0 c 0. Lemat 3.1.4. Przy założeniach (A1)-(A4) istnieje stała C 1 niezależna od J, taka że parametr K 1 zdefiniowany w (.14) spełnia K 1 C 1. Dowód. Przyjmijmy ɛ ij := C 3 γ i j. Pokażemy, że K 1 1 + max 0 i J ɛ ij. (3.8) j=0 Korzystamy z nierówności Cauchy-Schwarza, a następnie z założenia (3.6) i otrzymujemy i (T i u i, T j v j ) A j=0 = i (T i u i, u i ) 1 A (T i T j v j, T j v j ) 1 A j=0 i (T i u i, u i ) 1 A (ɛ ij(t j v j, T j v j ) A ) 1 = j=0 i ɛ ij (T i u i, u i ) 1 A (T j v j, T j v j ) 1 A. j=0 30
Do otrzymanego wyrażenia zastosujmy dwukrotnie nierówność Höldera. i ɛ ij (T i u i, u i ) 1 A (T j v j, T j v j ) 1 A j=0 Ostatecznie mamy ( max i j=0 = max i ( max i J ) ɛ ij (T i u i, u i ) 1 A (T j v j, T j v j ) 1 A = i=j J ɛ ij (T i u i, u i ) 1 A (T j v j, T j v j ) 1 A j=0 i=j )( J ) 1 ( J ) 1 ɛ ij (T i u i, u i ) A (T j v j, T j v j ) A i ( )( J ) 1 ( J ) 1 (T i u i, T j v j ) A max ɛ ij (T i u i, u i ) A (T j v j, T j v j ) A i j=0 j=0 j=0 zatem z definicji K 1 rzeczywiście zachodzi (3.8). Pokażmy jeszcze, że jest niezależne od J. max 0 i J j=0 ɛ ij = C 3 max 0 i J 0 = C 3 max ( γ k + 0 i J j=0 j=0 i γ i j = C 3 max ( γ i j + γ i j ) = 0 i J j=0 j=0 j=i+1 k=i i = C 3 max ( 0 i J k=0 i J k= 1 J i γ k + s=1 i γ k ) = C 3 max ( 0 i J k=0 γ s ) C 3 γ k < k=0 J i γ k + s=1, γ s ) = Wykorzystaliśmy podstawienie k = i j oraz s = k i ostatecznie otrzymaliśmy zbieżny szereg geometryczny.. Jak zostało pokazane, oba parametry, K 0 i K 1, można oszacować z góry przez stałe niezależne od J. Następne twierdzenie wynika z twierdzenia..8. Twierdzenie 3.1.5. Załóżmy, że dla m = 1 operatory R k spełniają założenia (A1)-(A4) dla ω 1 <, wówczas dla pewnej stałej C niezależnej od J algorytm 3.1.1 ((\)-cykl) oraz algorytm SSC spełniają I B J A A 1 ω 1 < 1. C Zatem zbieżność (\)-cyklu jest niezależna od J, czyli od rozmiaru zadania. 3.. Wybór operatorów wygładzających W praktyce siatka T 0 jest na tyle rzadka, że A 1 0 g można obliczyć metodą bezpośrednią. Aby zdefiniować B J, należy najpierw zdefiniować R k. Jednym ze sposobów jest wykonanie kilku iteracji elementarnej metody iteracyjnej, np. Gaussa-Seidela lub Jacobiego z tłumieniem. W przypadku tego problemu nie należy używać do wygładzenia metody Jacobiego bez tłumienia ([3, str. 30]). Niech {ψ} N J 1 będzie bazą M J. Wtedy (3.) jest równoważne a(u, ψ i ) = (f, ψ i ) i = 1,..., N J. 31
Wektor u można zapisać w bazie {ψ} N J 1 jako Wówczas powstaje układ równań N J N J u = v k ψ k. k=1 a(ψ k, ψ i )v k = (f, ψ i ) i = 1,..., N J, k=1 który można zapisać w postaci A J v = g, gdzie A ik := a(ψ k, ψ i ) oraz g i := (f, ψ i ). Za [1, str. 56], dla zagadnienia (3.1) dla każdego węzła A k ma szablon 1 1 4 1 1 Macierz A k jest symetryczna i dodatnio określona. Aby przekonać się, że do poszukiwań aproksymacji rozwiązania zagadnienia (3.1) metoda Jacobiego jest niepraktyczna, rozważymy wartości własne macierzy A J oraz G := I BA J dla metody Jacobiego bez tłumienia (por. (1.3)). Za [1, str. 19, 6], wektory własne z t,l macierzy A J i G mają postać (z t,l ) i,j = sin itπ n. sin jlπ n, zaś wartości własne A J A J z t,l = (4 cos tπ n cos lπ n )zt,l. (3.9) Z kolei wartości własne G mają postać Gz t,l = ( 1 cos tπ n + 1 cos lπ n )zt,l, gdzie 1 i, j, t, l n 1. Zauważmy, że największa wartość własna G odpowiada t = l = 1, wówczas ρ(g) = 1 (1 + cos π n ) = 1 π 4n + O(n 4 ). Dla dużych n ρ(g) zbiega do 1; to oznacza, że dla gęstej siatki metoda Jacobiego daje bardzo wolną zbieżność. Jednak zarówno metoda Jacobiego (z tłumieniem), jak i Gaussa-Seidela, mają własność wygładzania, omawianą już na przykładzie metody iteracyjnej Richardsona w rozdziale 1.3. Dla v 0 = 0 oraz l = 1,..., m mamy v l = v l 1 + R k (g A k v l 1 ) Macierz wygładzania R i dla metody Jacobiego z tłumieniem miałaby postać R i = ωd 1 i, gdzie D i oznacza przekątną macierzy A i, natomiast optymalna ω dla tego zagadnienia ma wartość 4/5 (patrz [3, str. 30]). Macierz R i jest symetryczna i dodatnio określona. Pokażmy jeszcze, że założenia (A) i (A3) są spełnione. 3
Dowód. Dla ω = 4/5 macierz R k przyjmuje postać 1 5 I k. Stąd (R k v, v) = 1 5 (v, v) = 1 5 λ 1 k (v, v) max λ (1 k k 5 λ k) 1 (v, v) = c 1 (v, v), λ k λ k ponieważ z postaci (3.9) wnioskujemy, że dla każdego k promień spektralny λ k 8. Podobnie można pokazać, że zachodzi oszacowanie z dołu: (R k v, v) = 1 5 (v, v) = 1 5 λ 1 k (v, v) min( 1 λ k k 5 λ k) 1 (v, v) = c 0 (v, v), λ k λ k ponieważ dla każdego k promień spektralny λ k 4. W (3.9) wystarczy wybrać t = l = n 1. Prawdziwość założenia (A) wynika z założenia (A3). Rzeczywiście, (R k v, v) c 1 (v, v) = c 1 λ min (A 1 k λ )(v, v) = c 1 min k v = c 1 min v (A 1 k v, v) ω 1(A 1 v, v). k (A 1 k v, v) v (v, v) = Kolejnym krokiem jest Gruba poprawka. Najpierw obliczamy residuum r = g A k v m, a następnie, wykorzystując macierz restrykcji Q k 1, otrzymujemy b = Q k 1 r. Niech e k 1 będzie przybliżonym rozwiązaniem równania A k 1 e = b, otrzymanym przez wykorzystanie macierzy B k 1, czyli Definiujemy e k 1 = B k 1 b. B k g = v m + P k 1 e k 1, gdzie P k 1 jest macierzą przedłużenia. Macierz P k 1 pojawia się w tym równaniu, ponieważ wektory mają różne wymiary. W pracy [1, str. 3-34] Braess zakłada, że zachodzi Q k 1 = Pk 1 T. Przedstawia również postać szablonu dla macierzy przedłużenia: 1 1 1 1 1 1 1 W niniejszej pracy skupiamy się na (\)-cyklu, jako na najbardziej podstawowej wersji metod wielosiatkowych. W innej wersji, V-cyklu, wykonuje się na koniec kilka iteracji elementarnej metody iteracyjnej, najlepiej tyle samo, ile w pierwszym kroku ([1, str. 31]).. 33
Podsumowanie W pracy omówiono fragmenty przeglądowej pracy Xu [3] dotyczącej metody dekompozycji przestrzeni i jej zastosowania do analizy metody wielosiatkowej dla zagadnienia Poissona. Przedstawiono szczegółowe dowody omawianych twierdzeń. W [3] rozważane są także operatory R i przybliżonego rozwiązania na podprzestrzeni, które dopuszczają pewien poziom asymetrii co jest przydatne w analizie przypadku, gdy R i odpowiadają metodom typu Gaussa-Seidela jednak w niniejszej pracy ograniczono się tylko do prostszego przypadku, gdy operatory R i są symetryczne i dodatnio określone. 35
Bibliografia [1] Dietrich Braess, Finite elements. Theory, fast solvers and applications in elasticity theory, Cambridge University Press, Nowy Jork 007. [] David Kincaid, Ward Cheney, Analiza numeryczna, Wydawnictwa Naukowo-Techniczne, Warszawa, 006. [3] Jinchao Xu, An introduction to multigrid convergence theory, notatki wykładowe dla Winter School on Iterative Methods in Scientific Computing and Their Applications, Springer, 1995. [4] Jinchao Xu, Iterative methods by space decomposition and subspace correction, SIAM Review, Vol. 34, No. 4, 199. 37