Metody numeryczne - laboratoria 8 (Rozwiązywanie układów równań liniowych - metody przybliżone)
Metody dokładne dają bardzo istotne błędy zaokrągleń dla większych macierzy (co czyni je mało użytecznymi dla macierzy większych niż 30, 40 równań) - dlatego wykorzystuje się metody iteracyjne. Czasami też wykorzystuje się iteracyjne poprawianie wyniku uzyskanego metodą Gaussa.
Problem - rozwiązać układ równań
Układ zapisany w postaci macierzowej:
Ax = b
Przypomnienie - metoda iteracyjna - poszukiwania zer funkcji
Równanie f(x) = 0 przekształcamy do x = g(x), i iterujemy aż do osiągnięcia zbieżności:
x(k+1) = g(x(k))
x(0) - punkt początkowy
Uwaga! Metoda zbieżna tylko w niektórych przypadkach (dodatkowe warunki na g - przekształcenie zwężające, spełniające warunek Lipschitza (stała z przedziału (0,1)).
Analogicznie - wykorzystanie iteracji prostej dla rozwiązania układu równań liniowych
Ax = b -> x = Bx + c
x(0) - przybliżenie początkowe
x(k+1) = Bx(k) + c
Metoda Richardsona (R)
Wyprowadzenie:
Ax = b / p≠0
pAx = pb, x +pAx = x + pb
x = x - pAx + pb, x = (I - pA)x + pb
Czyli
BR = I - pA, cr = pb
Dla k = 0, 1, 2....
Dla i = 1,...,n
Metoda Jacobiego
A = L + D + U (dolna, diagonalna, górna) D = diag(aii)
x = -D-1(L + U)x + D-1b
Dla k = 0, 1, 2....
Dla i = 1,...,n
Metoda Gaussa-Seidla
A = L + D + U (dolna, diagonalna, górna) D = diag(aii)
x = -(L + D)-1Ux + (L+D)-1b
Dla k = 0, 1, 2....
Dla i = 1,...,n
Metoda SOR (succesive over-relaxation)
A = L + D + U (dolna, diagonalna, górna) D = diag(aii)
x = (D+ωL)-1 ((1-ω)D- ωU)x + ω (D+ ωL)-1b
0 ≤ ω ≤ 2
dla ω = 1 - metoda Gaussa-Seidla
Dla k = 0, 1, 2....
Dla i = 1,...,n
Wartości własne macierzy:
Wartości x, λ dla niezerowego λ tworzą wartość własną i wektor własny macierzy A.
Ax = λx
Tw. Metoda iteracji prostej dla układu x = Bx + c jest zbieżna przy dowolnym x(0) wtedy i tylko wtedy, gdy ρ(B) < 1, gdzie
- promień spektralny macierzy
Szybkość zbieżności
dla dużych k - można przyjąć:
uwaga: szacowanie - „w przybliżeniu mniejsze-równe”
norma 2 wektora - pewna norma dla wektora (maksimum pierwiastków wartości własnych ze spektrum iloczynu macierzy sprzężonej do B i macierzy B)
Kryteria stopu
|| x(k+1) - x(k)|| < ε, może być mało dokładny w przypadku powolnej zbieżności
wtedy lepszy
Zadanie dla studentów:
Wygenerowanie układów równań (za pomocą mnożenia macierzy przez wektor)
Rozwiązanie układu równań metodami Richardsona i Jacobiego