Metody Obliczeniowe w Nauce i Technice

Podobne dokumenty
Zaawansowane metody numeryczne

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

Układy równań liniowych. Krzysztof Patan

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

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

Metody Obliczeniowe w Nauce i Technice

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi. Plan wykładu:

Numeryczna algebra liniowa. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

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

Plan wykładu. Obliczenia równoległe w zagadnieniach inżynierskich. Wykład 6 p. Rozwiazywanie układów równań. metody bezpośrednie,

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

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Zaawansowane metody numeryczne

Metody Obliczeniowe w Nauce i Technice

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

Numeryczna algebra liniowa

Matematyka stosowana i metody numeryczne

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

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

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

Obliczenia równoległe w zagadnieniach inżynierskich. Wykład 6

Metody Obliczeniowe w Nauce i Technice

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

Zagadnienia brzegowe dla równań eliptycznych

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

Wykład III Układy równań liniowych i dekompozycje macierzy

Wprowadzenie Metoda bisekcji Metoda regula falsi Metoda siecznych Metoda stycznych RÓWNANIA NIELINIOWE

Równania różniczkowe cząstkowe (RRCz) równanie eliptyczne równanie Poissona

Metody numeryczne Wykład 4

Metody Obliczeniowe w Nauce i Technice

1 Równania nieliniowe

Wykład 5. Metoda eliminacji Gaussa

Metody Obliczeniowe w Nauce i Technice

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

Lista nr 1 - Liczby zespolone

ALGEBRA LINIOWA. ĆWICZENIA Układy Równań Liniowych

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

13 Układy równań liniowych

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

x y

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

Metody numeryczne I Równania nieliniowe

Układy równań liniowych

Rozwiązywanie równań nieliniowych

Wstęp do metod numerycznych Metody iteracyjne i metoda gradientów. P. F. Góra

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

1 Macierz odwrotna metoda operacji elementarnych

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

Metody rozwiązywania równań nieliniowych

Obliczenia iteracyjne

Elementy metod numerycznych

Zagdanienia do egzaminu z Inżynierskich Metod Numerycznych - semestr zimowy 2017/2018

Optymalizacja ciągła

Metody numeryczne. Sformułowanie zagadnienia interpolacji

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

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

1. PODSTAWY TEORETYCZNE

INTERPOLACJA I APROKSYMACJA FUNKCJI

y i b) metoda różnic skończonych nadal problem nieliniowy 2 go rzędu z warunkiem Dirichleta

Metoda dekompozycji przestrzeni i jej zastosowania

UKŁADY RÓWNAŃ LINIOWYCH - Metody dokładne

D. Miszczyńska, M.Miszczyński KBO UŁ 1 GRY KONFLIKTOWE GRY 2-OSOBOWE O SUMIE WYPŁAT ZERO

Zagdanienia do egzaminu z Inżynierskich Metod Numerycznych - semestr 1

Własności wyznacznika

1.1 Przegląd wybranych równań i modeli fizycznych. , u x1 x 2

Wartości i wektory własne

Egzamin z Metod Numerycznych ZSI, Grupa: A

Wstęp do metod numerycznych SVD, metody iteracyjne i metoda gradientów. P. F. Góra

Równania różniczkowe cząstkowe. Wojciech Szewczuk

Bardzo łatwa lista powtórkowa

19 marzec, Łańcuchy Markowa z czasem dyskretnym. Procesy Stochastyczne, wykład 6, T. Byczkowski, Procesy Stochastyczne, PPT, Matematyka MAP1136

Projekt 6: Równanie Poissona - rozwiązanie metodą algebraiczną.

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Funkcje charakterystyczne zmiennych losowych, linie regresji 1-go i 2-go rodzaju

Przekształcenia liniowe

Modyfikacja schematu SCPF obliczeń energii polaryzacji

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 26 czerwca 2017 roku

Inżynierskie metody analizy numerycznej i planowanie eksperymentu / Ireneusz Czajka, Andrzej Gołaś. Kraków, Spis treści

Metody Lagrange a i Hamiltona w Mechanice

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

2. Układy równań liniowych

Wstęp do metod numerycznych Metody iteracyjne Algebraiczna metoda gradientów sprzężonych. P. F. Góra

Zadania egzaminacyjne

Metody dekompozycji macierzy stosowane w automatyce

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

ALGEBRA z GEOMETRIA, ANALITYCZNA,

Modelowanie rynków finansowych z wykorzystaniem pakietu R

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

ELEMENTY ANALIZY NUMERYCZNEJ ELEMENTY ANALIZY NUMERYCZNEJ. Egzamin pisemny zestaw 1 24 czerwca 2019 roku

Laboratorium 5 Przybliżone metody rozwiązywania równań nieliniowych

Prawdopodobieństwo i statystyka

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

Matematyka stosowana i metody numeryczne

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

Metody Obliczeniowe w Nauce i Technice

Przykładowe zadania na egzamin z matematyki - dr Anita Tlałka - 1

Iteracyjne rozwiązywanie równań

III. Układy liniowe równań różniczkowych. 1. Pojęcie stabilności rozwiązań.

Statystyka i eksploracja danych

Transkrypt:

12. Iteracyjne rozwiązywanie Ax=B Marian Bubak Department of Computer Science AGH University of Science and Technology Krakow, Poland bubak@agh.edu.pl dice.cyfronet.pl Contributors Anna Marciniec Radosław Kazior Łukasz Janeczko

Plan wykładu 1 12.1 Wady metod bezpośrednich 2 12.2 Podział metod iteracyjnych 3 12.3 Istota metod iteracyjnych dla Ax=b 4 12.4 Zbieżność procesu iteracyjnego rozwiązywania Ax=b 5 12.5 Sens procedury iteracyjnej dla Ax=b 6 12.6 Metoda Jacobiego 7 12.7 Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) 8 12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) 9 12.9 Sposoby przeglądania węzłów siatki 10 12.10 Metoda Czybyszewa 11 12.11 Porównywanie jakości wybranych metod iteracyjnych

12.1 Wady metod bezpośrednich Wady metod bezpośrednich Złożoność obliczeniowa N 3 M = 1 3 n3 + n 2 1 3 n (,/) D = 1 3 n3 + 1 2 n2 5 6 n (+) Np. 10 4 punktów siatki przestrzennej (mesh points) 100 x 100 (2 D) 20 x 20 x 20 (3 D) metoda eliminacji Gaussa to 10 12 operacji 1 operacja trwa 10 8 s. 10 4 czyli 3 godziny

12.1 Wady metod bezpośrednich Zwykle czas symulacji 1h, liczba kroków czasowych 1000, cały krok - to rozwiązywanie układu równań, 1 operacja 10 8 s, liczba punktów siatki 10 4 ( liczba równań)

12.1 Wady metod bezpośrednich Potrzebne są metody o znacznie mniejszej złożoności Metody takie powinny być oparte na własnościach równań różniczkowych cząstkowych (zwykle - źródła równań liniowych): liniowość, wymiar, możliwość separacji zmiennych, zakres zmian współczynników, kształt geometryczny obszaru, warunki brzegowe - postać.

12.1 Wady metod bezpośrednich Metody bezpośrednie zaburzają strukturę macierzy rzadkich 2 - D operator pięciopunktowy

12.1 Wady metod bezpośrednich Metody bezpośrednie zaburzają strukturę macierzy rzadkich 5 N 2 współczynników 0 ale: po zastosowaniu metody eliminacji Gaussa znikają zera z wstęg (*) trzeba wtedy pamiętać 2 N 3 współczynników Macierz wstęgowa: m ij = 0 dla i j > k W metodach polegających na mnożeniu A x (t) w kroku t zamiast n 2 k n mnożeń wtedy łatwo o: s k n < n 3 gdzie s - liczba kroków, a n 3 - złożoność metod bezpośrednich.

12.2 Podział metod iteracyjnych Podział metod iteracyjnych Metody stacjonarne (stationary) stałe współczynniki macierzy iteracyjnej, starsze, proste w zrozumieniu i implementacji, na przykład metody Jacobiego, G S (SR), SOR, SSOR.

12.2 Podział metod iteracyjnych Metody niestacjonarne (nonstationary) współczynniki macierzy iteracyjnej zmieniają się w kolejnych krokach iteracji, oparte na idei ciągu wektorów ortogonalnych (CG, MINRES...), wielomianów ortogonalnych (metoda Czybyszewa), stosunkowo nowe, trudniejsze w zrozumieniu i implementacji, szybciej zbieżne.

12.2 Podział metod iteracyjnych iterate przybliżenie rozwiązania w kolejnej iteracji, residual r = Ay b, preconditioner, preconditioning matrix: macierz transformująca układ równań do postaci o lepszych własnościach spektralnych

12.3 Istota metod iteracyjnych dla Ax=b Istota metod iteracynych dla Ax = b A x = b gdzie A jest macierzą n x n, x wektor n niewiadomych, b wektor danych (źródeł).

12.3 Istota metod iteracyjnych dla Ax=b Rozkład: A = B + R B macierz dla, której łatwo stworzyć B 1 R pozostałość A x = (B + R) x = b B x = R x + b B x = (A B) x + b

12.3 Istota metod iteracyjnych dla Ax=b Metody iteracyjne dla Ax = b (mesh relaxation methods) polegają na: odgadnięciu wektora początkowego x (0) generowaniu ciągu iteracyjnego x (t) według postulowanego wzoru: B x (t+1) = (A B) x (t) + b x (t+1) = B 1 (A B) x (t) + B }{{}} 1 {{ b} I B 1 A=M M - iteration matrix W x (t+1) = M x (t) + B 1 b

12.3 Istota metod iteracyjnych dla Ax=b Różne B rodzina metod iteracyjnych: x (t+1) = M x (t) + B 1 b ( ) Warunek zgodności formuły iteracyjnej z szukanym rozwiązaniem lim t x (t+1) = lim t (M x (t) + B 1 b)

12.4 Zbieżność procesu iteracyjnego rozwiązywania Ax=b Zbieżność procesu iteracyjnego rozwiązywania Ax=b Twierdzenie: Zbieżność procesu iteracyjnego Teza: Ciąg ( ) z dowolnym wektorem startowym x (0) jest zbieżny do jedynego granicznego x (inf) wtedy i tylko wtedy, gdy promień spektralny (spectral radius) macierzy iteracji jest mniejszy od 1 ρ(m) < 1

12.4 Zbieżność procesu iteracyjnego rozwiązywania Ax=b Dowód ε (t) = x (t) x; wektor błędu w iteracji t x = M x + W oraz x }{{ (t+1) = M x } (t) + W ε (t+1) =M ε (t) ε (t) =Mt ε (0) (7) ε (0) - initial error vector gdy M zmienia się w procesie iteracji - to: ε (t) = M t ε (0) (8) Dla określenia zbieżności - potrzebny jest skalar ε (t). Chcemy, by dla pewnego t: ε (t+1) < ε (t)

12.4 Zbieżność procesu iteracyjnego rozwiązywania Ax=b Dowód M macierz iteracji ma n różnych wartości i wektorów własnych Ms i = ρ i s i (12.3) Rozkładamy (rzuty na inne osie): n ε (t) = M t α i s i, α i - amplituda kierunku s i i=1 (12.4) ε (t) = M t n α i s i = i=1 ε (t) = n i=1 α i M t 1 (Ms i }{{} ρ i s i ) =... = n α i ρ t i s i (12.5) i=1 n α i ρ t i s i i=1

12.4 Zbieżność procesu iteracyjnego rozwiązywania Ax=b Dowód lim t ε(t) = α m ρ t ms m gdzie: ρ m = max i ρ i = ρ promień spektralny macierzy iteracji ρ < 1 - warunek zbieżności ε (t) ε (0) M(t) - zadana dokładność ρ M (t ) = 10 p λ asymptotic convergence factor λ t = 10 p t = p ln10 lnλ - liczba iteracji

12.5 Sens procedury iteracyjnej dla Ax=b Sens procedury iteracyjnej dla Ax=b W każdym kroku następuje poprawianie rozwiązania. Przypadek, gdy źródłem Ax=b jest rozkład Poissona: 2 u(x, y) = ρ(x, y) ρ(x, y) funkcja rozkładu źródeł szybkość propagacji informacji 2 Operator Laplace a

12.5 Sens procedury iteracyjnej dla Ax=b Ale rozkład Poissona to graniczny (stacjonarny) przypadek równania dyfuzji: u t 2 u = ρ którego jawne sformułowanie różnicowe ma postać: siatka t : t p, u (p+1) = u (p) + t y (p) + ρ t }{{}}{{} t + t p + 1 Mu (p) W =B 1 b Procedura iteracyjna - jawne rozwiązanie zagadnienia opisującego zbieżność w wyimaginowanym czasie iteracji (pseudoczas)

12.6 Metoda Jacobiego Metoda Jacobiego A = D + (L + U) { M = I D 1 A W = D 1 b gdzie: L poddiagonalna; U naddiagonalna; D = B diagonalna, z diagonalnych elementów macierzy A. Ax = (D + (L + U))x = b = Dx = (L + U)x + b Korzystając z zależności otrzymujemy wzór roboczy: x (t+1) i Dx (t+1) = (L + U)x (t) + b = 1 a ii [b i n j=1,j i a ij x (t) j ] ; a ii 0, i 1,.., n

12.6 Metoda Jacobiego Procedura przestawiania wierszy 1) spośród kolumn z a ii = 0 wybieramy tę, która ma najwięcej zer, 2) w tej kolumnie wybieramy element o max a ji i przestawiamy wiersze tak, aby znalazł się on na diagonali, 3) powtarzamy 1) i 2).

12.6 Metoda Jacobiego Modelowe zadanie równanie Poissona 2-D w.b. φ 0 siatka przestrzenna N x N Dla modelowego zadania met. Jacobiego: ρ cos π N 10 π2 N 2, λ J = ρ

12.6 Metoda Jacobiego Charakterystyka metody Jacobiego prosta, ma znaczenie dydaktyczne, wolnozbieżna, nie wykorzystuje całej, dostępnej w danym kroku informacji, pamiętane x (t) i x (t+1), zbieżna dla A silnie diagonalnie dominujących, wierszowo : a ii > kolumnowo : a ii > n j=1,j i n j=1,j i a ij, a ji,

12.7 Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) A = (L + D) +U }{{} B M = I B 1 A = I B 1 (B + U) = B 1 U, ( ) (*) Pamiętamy, że x (t+1) = B 1 Ux (t) + B 1 b (D + L)x (t+1) = Ux t + b Dx (t+1) = Lx (t+1) Ux (t) + b x (t+1) = Mx (t) + W, M = I B 1 A, W = B 1 b

12.7 Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) Wzór roboczy: x (t+1) i i 1 = 1 [b i a ii a ij x (t+1) j j=1 } {{ } ( ) n a ij x (t) ] j j=i+1 }{{} ( ) gdzie: ( ) - otrzymujemy z rozwiązania poprzednich równań w bieżącej (t + 1) iteracji i w tym tkwi przewaga nad metodą Jacobiego i źródło wzrostu efektywności, ( ) - z poprzedniej iteracji (t).

12.7 Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) Charakterystyka metody G-S elementy diagonali powinny być 0 przestawianie wystarczy pamiętać aktualne przybliżenie x (t+1) zbieżna dla A: * silnie diagonalnie dominujących wierszowo, kolumnowo, * symetrycznych, * dodatnio określonych (xax > O x 0).

12.7 Metoda Gaussa-Seidla (G-S i S-R -successive relaxation) Dla modelowego zadania: λ GS = ρ 2 λ GS = cos 2 ( π N 1 ( π2 N 2 ) t = ln10 π 2 (pn2 )...

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Inaczej zapisany wzór roboczy SR(G-S): x (t+1) i = x (t) i Przyspieszenie zbieżności: x (t+1) i i 1 + 1 [b i a ii a ij x (t+1) j n a ij x (t) j ] j=1 j=i }{{} r (t) i - poprawka do starego rozwiązania x (t) i = x (t) i + ωr (t) i, ω - pewna liczba

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Wzór roboczy a ii x (t+1) i = a ii }{{} x (t) i w zapisie macierzowym i 1 +ω[b i j=1 a ij x (t+1) j n j=i+1 a ij x (t) j ] ω a ii Dx (t+1) = (1 ω)dx (t) + ω[b Lx (t+1) Ux (t) ] po uporządkowaniu: }{{} x (t+1) = (D + ωl) 1 [D ω(d + U)] x (t) + ω(d + ωl) 1 b }{{}}{{} M W (=B 1 b) x (t) i

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Twierdzenie Założenia Dla dowolnej nieosobliwej macierzy A i dowolnej liczby ω zachodzi: Teza ρ(m) ω 1 Stąd: { ω (0, 1] - podrelaksacja ω (0, 2) ω (1, 2) - nadrelaksacja

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Interpretacja: Dla ważnych praktycznie klas macierzy znana jest optymalna wartość ω

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Twierdzenie Założenia Dla A - symetrycznej, dodatnio określonej o postacji blokowo - trójprzekątniowej: D 1 U 1 A = L 2 D 2 U 2...... L n 1 D n 1 U n 1 L n D n

12.8 Metoda kolejnych nadrelaksacji - SOR (successive over-relaxation) Teza ω opt = Dla równania modelowego ρ(m GS ) = ρ 2 (M J ) 2 1 + 1 ρ(m GS ) λ SOR = ω opt 1 ρ = cos 2 ( π N ), ω opt 2(1 π N, λ SOR = 1 2π N )

12.9 Sposoby przeglądania węzłów siatki Sposoby przeglądania węzłów siatki

12.10 Metoda Czybyszewa Metoda Czybyszewa B 1 = W (A) - wielomian macierzowy M = 1 W (A)A. Znaleźć W (U) taki, by: min!max 1 W (U)U U Jest to klasyczny problem aproksymacji wielomiany Czybyszewa

12.10 Metoda Czybyszewa Przyspieszenie Czybyszewa metody SOR; odd-even ordering ρ = ρ(m J ) ω (0) = 1 ω 1 1 2 = 1 1 2 ρ2 ω (t+ 1 2 ) 1 = 1 1 4 ρ2 ω (t), dla t=1 2, 1, 11 2,... ω ( ) = ω opt

12.10 Metoda Czybyszewa 1 ω=1.0 DO 2 t = 1, MAXIT ( 100, 1000) 3 Norm = 0. 0 DO 1 p= 1, n 5 DO 1 p= 1, n IF ( MOD( p+q, 2 ).EQ. MOD( t, 2 ) ) THEN 7 R e s i d u a l = a p,qφ p,q 1 + b p,1φ p,q+1 + c p,qφ p 1,q+ d p,qφ p+1,q + e p,qφ p,q f p,q 9 Norm = Norm + ( R e s i d u a l ) 2 φ p,q = φ pq ω R e s i d u a l /e p,q 11 ENDIF 1 CONTINUE 13 ( ) ω = 1.0/(1.0 0.25ρ 2 ω) ( ) IF ( t.eq. 1) ω = 1.0/(1.0 0.5ρ 2 ) 15 IF (Norm. LT. EPS f s o l u t i o n o b t a i n e d 2 CONTINUE Zadanie: Przećwiczyć na lab.

12.10 Metoda Czybyszewa Uwagi do algorytmu EPS 10 6, f obliczona wcześniej norma prawej strony, gdy usuniemy instrukcje (*) otrzymamy metodę G-S, jeżeli dodatkowo zastąpimy ω = 1 przez ω = ω opt - metodę SOR, (Dla r. Poissona: a = b = c = d = 1, e = 4)

12.11 Porównywanie jakości wybranych metod iteracyjnych Porównywanie jakości wybranych metod iteracyjnych A { r. Poissona, 2-D siatka 128 x 128