Iterativne metode - vježbe

Σχετικά έγγραφα
Linearna algebra 2 prvi kolokvij,

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

Iterativne metode - vježbe

Operacije s matricama

1 Promjena baze vektora

Linearna algebra 2 prvi kolokvij,

Numerička matematika 2. kolokvij (1. srpnja 2009.)

7 Algebarske jednadžbe

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

Matematička analiza 1 dodatni zadaci

Dijagonalizacija operatora

Elementi spektralne teorije matrica

ELEKTROTEHNIČKI ODJEL

SISTEMI NELINEARNIH JEDNAČINA

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

TRIGONOMETRIJSKE FUNKCIJE I I.1.

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

Neka je a 3 x 3 + a 2 x 2 + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka.

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

Riješeni zadaci: Limes funkcije. Neprekidnost

18. listopada listopada / 13

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

LINEARNA ALGEBRA 1, ZIMSKI SEMESTAR 2007/2008 PREDAVANJA: NENAD BAKIĆ, VJEŽBE: LUKA GRUBIŠIĆ I MAJA STARČEVIĆ

1.4 Tangenta i normala

1. Rješavanje diskretne Poissonove jednadžbe

radni nerecenzirani materijal za predavanja

Matematičke metode u marketingumultidimenzionalno skaliranje. Lavoslav ČaklovićPMF-MO

Determinante. a11 a. a 21 a 22. Definicija 1. (Determinanta prvog reda) Determinanta matrice A = [a] je broj a.

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

FAKULTET STROJARSTVA I BRODOGRADNJE. Sanja Singer. Matematika 9. Predavanja na FSB. Zagreb, 2007/8.

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

SOPSTVENE VREDNOSTI I SOPSTVENI VEKTORI LINEARNOG OPERATORA I KVADRATNE MATRICE

MJERA I INTEGRAL 2. kolokvij 30. lipnja (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!)

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

Funkcije dviju varjabli (zadaci za vježbu)

KONVEKSNI SKUPOVI. Definicije: potprostor, afin skup, konveksan skup, konveksan konus. 1/5. Back FullScr

Praktikum iz numeričkih metoda u statistici. Tina Bosner. Rješavanje nelinearnih sustava. Tina Bosner

Uvod u teoriju brojeva

Riješeni zadaci: Nizovi realnih brojeva

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

4 Multigrid metode Osnove multigrid metoda Spektralna i algebarska slika multigrid metoda

Linearna algebra Materijali za nastavu iz Matematike 1

3.1 Granična vrednost funkcije u tački

RIJEŠENI ZADACI I TEORIJA IZ

6 Polinomi Funkcija p : R R zadana formulom

POVRŠINA TANGENCIJALNO-TETIVNOG ČETVEROKUTA

APROKSIMACIJA FUNKCIJA

1 Afina geometrija. 1.1 Afini prostor. Definicija 1.1. Pod afinim prostorom nad poljem K podrazumevamo. A - skup taqaka

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

16 Lokalni ekstremi. Definicija 16.1 Neka je A R n otvoren, f : A R i c A. Ako postoji okolina U(c) od c na kojoj je f(c) minimum

MATEMATIKA 1 8. domaća zadaća: RADIJVEKTORI. ALGEBARSKE OPERACIJE S RADIJVEKTORIMA. LINEARNA (NE)ZAVISNOST SKUPA RADIJVEKTORA.

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

Linearna algebra I, zimski semestar 2007/2008

( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)

VJEROJATNOST I STATISTIKA Popravni kolokvij - 1. rujna 2016.

2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos

Funkcija gustoće neprekidne slučajne varijable ima dva bitna svojstva: 1. Nenegativnost: f(x) 0, x R, 2. Normiranost: f(x)dx = 1.

Linearna algebra za fizičare, zimski semestar Mirko Primc

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

TRIGONOMETRIJA TROKUTA

Poglavlje 1 GRAM-SCHMIDTOV POSTUPAK ORTOGONALIZACIJE. 1.1 Ortonormirani skupovi

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4

Kaskadna kompenzacija SAU

1 / 79 MATEMATIČKA ANALIZA II REDOVI

4 Numeričko diferenciranje

Osnovne teoreme diferencijalnog računa

LINEARNI PROSTORI

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)

Slučajni procesi Prvi kolokvij travnja 2015.

Zavrxni ispit iz Matematiqke analize 1

1 Diferencijabilnost Motivacija. Kažemo da je funkcija f : a, b R derivabilna u točki c a, b ako postoji limes f f(x) f(c) (c) = lim.

2 Jordanova forma. 2.1 Nilpotentni operatori

1. zadatak , 3 Dakle, sva kompleksna re{ewa date jedna~ine su x 1 = x 2 = 1 (dvostruko re{ewe), x 3 = 1 + i

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

4.1 Elementarne funkcije

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

41. Jednačine koje se svode na kvadratne

Teorijske osnove informatike 1

RADIJVEKTORI. ALGEBARSKE OPERACIJE S RADIJVEKTORIMA. LINEARNA (NE)ZAVISNOST SKUPA RADIJVEKTORA.

Sveučilište J. J. Strossmayera u Osijeku Odjel za matematiku Preddiplomski studij matematike. Monika Jović. Skalarni produkt.

( x) ( ) ( ) ( x) ( ) ( x) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

6. Nelinearne jednadžbe i sustavi

Redovi funkcija. Redovi potencija. Franka Miriam Brückler

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri

PID: Domen P je glavnoidealski [PID] akko svaki ideal u P je glavni (generisan jednim elementom; oblika ap := {ab b P }, za neko a P ).

Zadaci iz Osnova matematike

( , 2. kolokvij)

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

k a k = a. Kao i u slučaju dimenzije n = 1 samo je jedan mogući limes niza u R n :

Više dokaza jedne poznate trigonometrijske nejednakosti u trokutu

Matrice linearnih operatora i množenje matrica. Franka Miriam Brückler

Numerička analiza 26. predavanje

4 Unitarni prostori. 4.1 Definicija i svojstva unitarnih prostora. K polje R ili C, V je vektorski prostor nad K

Transcript:

Iterativne metode - vježbe 3. Iterativne metode za linearne sustave Nela Bosner, Zvonimir Bujanović Prirodoslovno-matematički fakultet - Matematički odjel 20. listopada 2010.

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Gaussove eliminacije vs iterativne metode Nedostaci Gaussovih eliminacija: Prespore za matrice velikih dimenzija: O(n 3 ) za A R n n. Matrice u praksi su sparse i ne čuvaju se kao 2D-polje, već se spremaju samo elementi koji nisu jednaki 0. LU-faktorizacija uništava strukturu nula u sparse matricama. Zato takve sustave rješavamo iterativno: Algoritam (Općenita iterativna metoda) x (0) zadan; k=0; while ~uvjet_zaustavljanja k=k+1; x (k) = f(x (k 1) ); end x x (k) 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Gaussove eliminacije vs iterativne metode Nedostaci Gaussovih eliminacija: Prespore za matrice velikih dimenzija: O(n 3 ) za A R n n. Matrice u praksi su sparse i ne čuvaju se kao 2D-polje, već se spremaju samo elementi koji nisu jednaki 0. LU-faktorizacija uništava strukturu nula u sparse matricama. Zato takve sustave rješavamo iterativno: Algoritam (Općenita iterativna metoda) x (0) zadan; k=0; while ~uvjet_zaustavljanja k=k+1; x (k) = f(x (k 1) ); end x x (k) 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Općenita iterativna metoda Algoritam (Općenita iterativna metoda) x (0) zadan; k=0; while ~uvjet_zaustavljanja k=k+1; x (k) = f(x (k 1) ); end x x (k) Ciljevi: Efikasno računanje x (k) pomoću x (k 1) (jednostavna f ) x (k) k x, gdje je Ax = b. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Općenita iterativna metoda Proučavat ćemo metode oblika x (k+1) = T x (k) + c, k = 0,1,2,... Ovdje: T R n n je matrica iteracije, c R n. Tipičan način konstrukcije metode: A = M N, M regularna. Ax = b (M N)x = b Mx = Nx + b Odavde dobivamo iterativnu metodu: x = M 1 Nx + M 1 b x (k+1) = M}{{ 1 N} x (k) + M }{{ 1 b } T c 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Općenita iterativna metoda Proučavat ćemo metode oblika x (k+1) = T x (k) + c, k = 0,1,2,... Ovdje: T R n n je matrica iteracije, c R n. Tipičan način konstrukcije metode: A = M N, M regularna. Ax = b (M N)x = b Mx = Nx + b Odavde dobivamo iterativnu metodu: x = M 1 Nx + M 1 b x (k+1) = M}{{ 1 N} x (k) + M }{{ 1 b } T c 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Općenita iterativna metoda Proučavat ćemo metode oblika x (k+1) = T x (k) + c, k = 0,1,2,... Ovdje: T R n n je matrica iteracije, c R n. Tipičan način konstrukcije metode: A = M N, M regularna. Ax = b (M N)x = b Mx = Nx + b Odavde dobivamo iterativnu metodu: x = M 1 Nx + M 1 b x (k+1) = M}{{ 1 N} x (k) + M }{{ 1 b } T c 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Konvergencija općenite iterativne metode Teorem Neka je A = M N R n n regularna matrica i b R n. Niz iteracija x (0),x (1),...,x (k),... definiran sa x (k+1) = M 1 N x (k) + M 1 b konvergira prema x = A 1 b za svaku početnu iteraciju x (0) ako i samo ako je M regularna matrica, ρ(m 1 N) < 1 (spektralni radijus), Tvrdnja teorema vrijedi i kada drugi uvijet zamijenimo sa M 1 N < 1 za neku konzistentnu matričnu normu. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Spektralni radijus, konzistentne norme Spektralni radijus: za A C n n je ρ(a) := max{ λ : λ Λ(A)} Matrična norma je konzistentna ako za sve A,B C n n vrijedi: Na primjer: 2, 1,, F. AB A B. Teorem Za svaku konzistentnu normu na C n n i svaku matricu A C n n vrijedi: ρ(a) A. Za svaku A C n n i svaki ε > 0 postoji konzistentna matrična norma A,ε takva da vrijedi: A A,ε ρ(a) + ε. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Spektralni radijus, konzistentne norme Spektralni radijus: za A C n n je ρ(a) := max{ λ : λ Λ(A)} Matrična norma je konzistentna ako za sve A,B C n n vrijedi: Na primjer: 2, 1,, F. AB A B. Teorem Za svaku konzistentnu normu na C n n i svaku matricu A C n n vrijedi: ρ(a) A. Za svaku A C n n i svaki ε > 0 postoji konzistentna matrična norma A,ε takva da vrijedi: A A,ε ρ(a) + ε. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Spektralni radijus, konzistentne norme Spektralni radijus: za A C n n je ρ(a) := max{ λ : λ Λ(A)} Matrična norma je konzistentna ako za sve A,B C n n vrijedi: Na primjer: 2, 1,, F. AB A B. Teorem Za svaku konzistentnu normu na C n n i svaku matricu A C n n vrijedi: ρ(a) A. Za svaku A C n n i svaki ε > 0 postoji konzistentna matrična norma A,ε takva da vrijedi: A A,ε ρ(a) + ε. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.1 Zadatak Neka vrijede pretpostavke Teorema o konvergenciji iterativne metode za T = M 1 N. Odredite kriterij zaustavljanja, tj. broj iteracija k dovoljan da vrijedi x (k) x < ε, za zadanu točnost ε. Rješenje. T k 1 T x(1) x (0) < ε. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.1 Zadatak Neka vrijede pretpostavke Teorema o konvergenciji iterativne metode za T = M 1 N. Odredite kriterij zaustavljanja, tj. broj iteracija k dovoljan da vrijedi x (k) x < ε, za zadanu točnost ε. Rješenje. T k 1 T x(1) x (0) < ε. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Zadatak Dan je sustav Ax = b, gdje je A = 5 0 0 0.1 0.1 5 5 0 0 0.1 0.1 0 5 0 0 0 0 0 5 0.1 0.1 0.1 5 0 5, b = 9.7 14.8 0.2 5.2 9.7 Odredite rastav A = M N i pripadnom iterativnom metodom riješite sustav tako da greška u svakoj nepoznanici bude manja od 10 3. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. Stavimo M = inv(m) 5 0 0 0 0 5 5 0 0 0 0 0 5 0 0 0 0 0 5 0 0 0 5 0 5, N = 0 0 0 0.1 0.1 0 0 0 0 0.1 0.1 0 0 0 0 0 0 0 0 0.1 0.1 0.1 0 0 0 0.2000 0 0 0 0-0.2000 0.2000 0 0 0 0 0 0.2000 0 0 0 0 0 0.2000 0 0 0-0.2000 0 0.2000 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. Stavimo M = inv(m) 5 0 0 0 0 5 5 0 0 0 0 0 5 0 0 0 0 0 5 0 0 0 5 0 5, N = 0 0 0 0.1 0.1 0 0 0 0 0.1 0.1 0 0 0 0 0 0 0 0 0.1 0.1 0.1 0 0 0 0.2000 0 0 0 0-0.2000 0.2000 0 0 0 0 0 0.2000 0 0 0 0 0 0.2000 0 0 0-0.2000 0 0.2000 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. T = M \ N 0 0 0-0.0200-0.0200 0 0 0 0.0200 0-0.0200 0 0 0 0 0 0 0 0-0.0200 0.0000-0.0200 0 0 0 Želimo x (k) x < 10 3. Da li metoda konvergira? norm( T, inf ) 0.0400 Dakle, metoda x (k+1) = Tx (k) + c konvergira jer T < 1, uz c=m\b= [ 1.94 1.02 0.04 1.04 1.98]. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. T = M \ N 0 0 0-0.0200-0.0200 0 0 0 0.0200 0-0.0200 0 0 0 0 0 0 0 0-0.0200 0.0000-0.0200 0 0 0 Želimo x (k) x < 10 3. Da li metoda konvergira? norm( T, inf ) 0.0400 Dakle, metoda x (k+1) = Tx (k) + c konvergira jer T < 1, uz c=m\b= [ 1.94 1.02 0.04 1.04 1.98]. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. Koliko iteracija je potrebno? Stavimo x (0) = 0; tada x (1) = c i x (1) x (0) = c = 1.98. Prethodni zadatak: dovoljno je osigurati Dakle, možemo uzeti k = 3. T k 1 T c < 10 3 (0.04) k 1.98 0.96 < 10 3 (0.04) k < 4.85 10 4 k log(0.04) < log(4.85 10 4 ) k > 2.3709 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. x0 = [0; 0; 0; 0; 0]; x1 = T*x0 + c x2 = T*x1 + c x3 = T*x2 + c x1 = x2 = x3 = -1.9400000-2.0004000-2.0000160-1.0200000-0.9992000-0.9999920-0.0400000-0.0012000 0.0000080 1.0400000 1.0004000 0.9999920 1.9800000 2.0004000 1.9999840 Egzaktno rješenje je x=[-2-1 0 1 2]. Zaista, x x (3) < 10 3. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Zadatak 3.2 Rješenje. x0 = [0; 0; 0; 0; 0]; x1 = T*x0 + c x2 = T*x1 + c x3 = T*x2 + c x1 = x2 = x3 = -1.9400000-2.0004000-2.0000160-1.0200000-0.9992000-0.9999920-0.0400000-0.0012000 0.0000080 1.0400000 1.0004000 0.9999920 1.9800000 2.0004000 1.9999840 Egzaktno rješenje je x=[-2-1 0 1 2]. Zaista, x x (3) < 10 3. 3. Iterativne metode za linearne sustave Osnovne iterativne metode -

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Jacobijeva metoda

Jacobijeva metoda Rastavimo A = D + L + U. D=dijagonala, L=donji trokut, U=gornji trokut od A. Jacobi: M J = D, N J = L U, odnosno, x (k+1) = D 1 ( L U) x (k) + D }{{}}{{ 1 b }. T c J J Teorem Ako je matrica sustava A C n n strogo dijagonalno dominantna, tj. ako je n A ij < A ii, i = 1,2,...,n j=1 j i onda Jacobijeva metoda konvergira za svaku početnu iteraciju. (Tada je T J < 1.) 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Jacobijeva metoda

Jacobijeva metoda Rastavimo A = D + L + U. D=dijagonala, L=donji trokut, U=gornji trokut od A. Jacobi: M J = D, N J = L U, odnosno, x (k+1) = D 1 ( L U) x (k) + D }{{}}{{ 1 b }. T c J J Teorem Ako je matrica sustava A C n n strogo dijagonalno dominantna, tj. ako je n A ij < A ii, i = 1,2,...,n j=1 j i onda Jacobijeva metoda konvergira za svaku početnu iteraciju. (Tada je T J < 1.) 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Jacobijeva metoda

Jacobijeva metoda Algoritam (Jacobi) x (0) zadan. for k = 0,1,2,... for i = 1,2,...,n ( x (k+1) i = 1 b A ii i i 1 end end j=1 A ijx (k) j ) n j=i+1 A ijx (k) j Iz i-te jednadžbe izrazimo x i pomoću ostalih varijabli. Za aproksimaciju x (k+1) i koristimo vrijednosti preostalih x-eva iz k-tog koraka. U implementaciji se koriste dva vektora za x (k). 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Jacobijeva metoda

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Gauss-Seidelova metoda Rastavimo A = D + L + U. D=dijagonala, L=donji trokut, U=gornji trokut od A. Gauss-Seidel: M GS = D + L, N GS = U, odnosno, x (k+1) = (D + L) 1 ( U) }{{} x (k) + (D + L) 1 b }{{}. T GS c GS Teorem Ako je matrica sustava A C n n simetrična i pozitivno definitna, onda Gauss-Seidelova metoda konvergira za svaku početnu iteraciju. Ako je matrica sustava A C n n strogo dijagonalno dominantna, onda Gauss-Seidelova metoda konvergira za svaku početnu iteraciju. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Gauss-Seidelova metoda Rastavimo A = D + L + U. D=dijagonala, L=donji trokut, U=gornji trokut od A. Gauss-Seidel: M GS = D + L, N GS = U, odnosno, x (k+1) = (D + L) 1 ( U) }{{} x (k) + (D + L) 1 b }{{}. T GS c GS Teorem Ako je matrica sustava A C n n simetrična i pozitivno definitna, onda Gauss-Seidelova metoda konvergira za svaku početnu iteraciju. Ako je matrica sustava A C n n strogo dijagonalno dominantna, onda Gauss-Seidelova metoda konvergira za svaku početnu iteraciju. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Gauss-Seidelova metoda Algoritam (Gauss-Seidel) x (0) zadan. for k = 0,1,2,... for i = 1,2,...,n ( x (k+1) i = 1 b A ii i i 1 end end j=1 A ijx (k+1) j ) n j=i+1 A ijx (k) j Iz i-te jednadžbe izrazimo x i pomoću ostalih varijabli. Za aproksimaciju x (k+1) i koristimo vrijednosti preostalih x-eva: iz k + 1-vog koraka ako smo ih već ranije izračunali: x (k+1) 1,x (k+1) 2,...,x (k+1) i 1 ; iz k-tog koraka ako ih još nismo izračunali: x (k) i+1,x(k) i+2,...,x(k) n. U implementaciji se koristi samo jedan vektor za x (k). 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Zadatak Napišite funkcije xk = Jacobi(A,b,x0,kMax) i xk = GaussSeidel(A,b,x0,kMax) koje vraćaju aproksimaciju rješenja sustava Ax = b nakon kmax koraka Jacobijeve, odnosno Gauss-Seidelove metode s početnom iteracijom x0. Pomoću ovih metoda riješite sustav Ax = b uz A = 10 1 0 1 1 10 1 0 0 1 10 1 1 0 1 10, b = tako da greška u svakoj koordinati ne prelazi 10 3. 8 0 12 20 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Jacobi: T J = D 1 ( L U) = 1 10 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0, c J = D 1 b = 0.8 0 1.2 2 Metoda konvergira jer je ρ(t J ) T J = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T J k c J 1 T J < 10 3 Slijedi k > 4.8614, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Jacobi: T J = D 1 ( L U) = 1 10 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0, c J = D 1 b = 0.8 0 1.2 2 Metoda konvergira jer je ρ(t J ) T J = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T J k c J 1 T J < 10 3 Slijedi k > 4.8614, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Jacobi: T J = D 1 ( L U) = 1 10 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0, c J = D 1 b = 0.8 0 1.2 2 Metoda konvergira jer je ρ(t J ) T J = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T J k c J 1 T J < 10 3 Slijedi k > 4.8614, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Jacobi: 0.8 x (1) = 0 1.2, x(2) = 2.0 x (4) = 1.0 0.0016 1.0 1.9984 1 0.04 1.0 1.96, x(5) =, x(3) = 0.99968 0 1.00032 2.0 0.992 0 1.008 2.0 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Gauss-Seidel: T GS = (D + L) 1 ( U) = c GS = (D + L) 1 b = 0 0.1 0 0.1 0 0.01 0.1 0.01 0 0.001 0.01 0.101 0 0.0101 0.001 0.0201 0.8 0.08 1.192 1.9608 Metoda konvergira jer je ρ(t GS ) T GS = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T GS k c GS 1 T GS < 10 3 Slijedi k > 4.8491, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Gauss-Seidel: T GS = (D + L) 1 ( U) = c GS = (D + L) 1 b = 0 0.1 0 0.1 0 0.01 0.1 0.01 0 0.001 0.01 0.101 0 0.0101 0.001 0.0201 0.8 0.08 1.192 1.9608 Metoda konvergira jer je ρ(t GS ) T GS = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T GS k c GS 1 T GS < 10 3 Slijedi k > 4.8491, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Gauss-Seidel: T GS = (D + L) 1 ( U) = c GS = (D + L) 1 b = 0 0.1 0 0.1 0 0.01 0.1 0.01 0 0.001 0.01 0.101 0 0.0101 0.001 0.0201 0.8 0.08 1.192 1.9608 Metoda konvergira jer je ρ(t GS ) T GS = 0.2 < 1. Broj koraka (uz x (0) = 0)): x (k) x T GS k c GS 1 T GS < 10 3 Slijedi k > 4.8491, tj. dovoljno je uzeti k = 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. Gauss-Seidel: 0.8 x (1) = 0.08 1.192, x(2) = 1.9608 x (4) = 0.999903 0.00001910 1.0000218 1.9999881 1.00408 0.018792 1.005799 1.99982808, x(5) =, x(3) = 0.999997 0.00000249 1.0000014 1.9999995 0.99810 0.0007695 1.00009414 1.9998009 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Zadatak 3.3 Rješenje. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - Gauss-Seidelova metoda

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

JOR Uz ρ(t J ) 1, konvergencija Jacobijeve metode je spora. Uvodimo parametar relaksacije ω s ciljem da smanjimo spektralni radijus matrice iteracije i ubrzamo konvergenciju. Rastavimo A = ( 1 ω 1 ω D) + ( ω D + L + U). D=dijagonala, L=donji trokut, U=gornji trokut od A. JOR(ω): M JOR(ω) = 1 ω D, N JOR(ω) = 1 ω ω D L U, odnosno, JOR(1) = Jacobi. x (k+1) = ((1 ω)i + ωt J ) x (k) + ωd }{{}}{{ 1 b } T c JOR(ω) JOR(ω) = (1 ω)x (k) + ωx (k+1) J. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Konvergencija JOR(ω) Teorem Ako konvergira Jacobijeva metoda, onda konvergira i JOR(ω) za svaki ω 0,1] i za svaku početnu iteraciju. Ako je matrica sustava A C n n simetrična i pozitivno definitna, te ako je λ < 1 za sve λ Λ(T J ), onda uz oznaku λ min = min{λ : λ Λ(T J )} 0 vrijedi: JOR(ω) konvergira za 0 < ω < za svaku početnu iteraciju. 2 1 λ min 2, JOR(ω) NE konvergira za ω < 0 ni za ω 2 JOR(ω) ne konvergira za ω < 0 ni za ω 2. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Algoritam JOR(ω) Algoritam (JOR(ω)) x (0) zadan. for k = 0,1,2,... for i = 1,2,...,n end end x (k+1) i = (1 ω)x (k) i + ω A ii ( b i i 1 j=1 A ijx (k) j ) n j=i+1 A ijx (k) j Iz i-te jednadžbe izrazimo x i pomoću ostalih varijabli, napravimo težinsku sredinu s trenutnim rješenjem. Za aproksimaciju x (k+1) i koristimo vrijednosti preostalih x-eva iz k-tog koraka. U implementaciji se koriste dva vektora za x (k). 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Zadatak 3.4 Zadatak Napišite funkciju xk = JOR(w, A, b, x0, kmax) koja vraća aproksimaciju rješenja sustava Ax = b nakon kmax koraka JOR(ω) metode s početnom iteracijom x0. Odredite za koje ω R metoda JOR(ω) konvergira ako je matrica sustava 1 0.9 0.9 A = 0.9 1 0.9. 0.9 0.9 1 Za koji ω je konvergencija najbrža? 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Zadatak 3.4 Rješenje. Napravite ovaj graf uz samo 1 poziv funkcije eig! 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Zadatak 3.4 Rješenje. Za ω = 0.689655, b=[1;2;3], x0=[0;0;0]: 0.689655 1.236622 x (1) = 1.37931 2.068965, x (2) = 0.0951254 1.426873, x (3) = x (4) = 2.308557 0.1775825 2.663722, x (5) = 1.790362 1.2139745 4.218311 0.638813 1.2907449 3.220302, x (120) = 9.283961 0.7141508 10.71226 3. Iterativne metode za linearne sustave Osnovne iterativne metode - JOR (Jacobi Over-Relaxation)

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

SOR Uz ρ(t GS ) 1, konvergencija Gauss-Seidelove metode je spora. Uvodimo parametar relaksacije ω s ciljem da smanjimo spektralni radijus matrice iteracije i ubrzamo konvergenciju. Rastavimo A = ( 1 ω 1 ω D + L) + ( ω D + U). D=dijagonala, L=donji trokut, U=gornji trokut od A. SOR(ω): M SOR(ω) = 1 ω D + L, N SOR(ω) = 1 ω ω D U, odnosno, x (k+1) = (D + ωl) 1 ((1 ω)d ωu) x (k) + ω(d + ωl) 1 b }{{}}{{} T SOR(ω) c SOR(ω) (1 ω)x (k) + ωx (k+1) GS. Ali, x (k+1) i = (1 ω)x (k) i + ωx (k+1) i,gs. SOR(1) = Gauss-Seidel. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Konvergencija SOR(ω) Teorem Ako je matrica sustava A C n n simetrična i pozitivno definitna, onda SOR(ω) konvergira za svaki ω 0,2. SOR(ω) ne konvergira za ω < 0 ni za ω 2. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Algoritam SOR(ω) Algoritam (SOR(ω)) x (0) zadan. for k = 0,1,2,... for i = 1,2,...,n end end x (k+1) i = (1 ω)x (k) i + ω A ii ( b i i 1 j=1 A ijx (k+1) j ) n j=i+1 A ijx (k) j Iz i-te jednadžbe izrazimo x i pomoću ostalih varijabli, napravimo težinsku sredinu s trenutnim rješenjem. Za aproksimaciju x (k+1) i koristimo vrijednosti preostalih x-eva: iz k + 1-vog koraka ako smo ih već ranije izračunali: x (k+1) 1,x (k+1) 2,...,x (k+1) i 1 ; iz k-tog koraka ako ih još nismo izračunali: x (k) i+1,x(k) i+2,...,x(k) n. U implementaciji se koristi samo jedan vektor za x (k). 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Zadatak 3.5 Zadatak Napišite funkciju xk = SOR(w, A, b, x0, kmax) koja vraća aproksimaciju rješenja sustava Ax = b nakon kmax koraka SOR(ω) metode s početnom iteracijom x0. Grafički odredite za koje ω R metoda SOR(ω) konvergira ako je matrica sustava 16 4 8 12 A = 4 4 7 3 8 7 78 32. 12 3 32 113 Grafički odredite ω za kojeg je konvergencija najbrža. Riješite sustav uz b=[32; -4; 111; 160] za ω = 1 i za optimalni ω tako da bude Ax (k) b < 10 5. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Zadatak 3.5 Rješenje. 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Zadatak 3.5 Rješenje. ω = 1 25 iteracija 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Zadatak 3.5 Rješenje. ω = 1.2 15 iteracija 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Zadatak 3.5 Rješenje. Za ω = 1.2: 2.4 x (1) = 1.68 1.593230, x(2) = 0.798335 x (4) = 1.106617 1.053899 1.016567 0.987399, x(5) = 0.749559 1.990753 1.118154 1.000531 0.996246 1.030848 1.006674 0.999747, x(3) =, x(15) = 1.275942 1.380626 0.983135 0.958333 1.000000 1.000000 1.000000 0.999999 3. Iterativne metode za linearne sustave Osnovne iterativne metode - SOR (Succesive Over-Relaxation)

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Inverz matrice kao polinom Karakteristični polinom matrice A C n n : κ A (ξ ) := det(a ξ I) = a n ξ n + a n 1 ξ n 1 +... + a 1 ξ + a 0 Matrica poništava svoj karakteristični polinom: κ A (A) = a n A n + a n 1 A n 1 +... + a 1 A + a 0 = 0 Ako je A regularna, onda a 0 0 i A 1 = 1 a 0 ( an A n 1 + a n 1 A n 2 +... + a 2 A + a 1 ) Dakle, A 1 = p(a), za neki polinom stupnja n 1. Ako je Ax = b, onda x = A 1 b = p(a)b. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Inverz matrice kao polinom Karakteristični polinom matrice A C n n : κ A (ξ ) := det(a ξ I) = a n ξ n + a n 1 ξ n 1 +... + a 1 ξ + a 0 Matrica poništava svoj karakteristični polinom: κ A (A) = a n A n + a n 1 A n 1 +... + a 1 A + a 0 = 0 Ako je A regularna, onda a 0 0 i A 1 = 1 a 0 ( an A n 1 + a n 1 A n 2 +... + a 2 A + a 1 ) Dakle, A 1 = p(a), za neki polinom stupnja n 1. Ako je Ax = b, onda x = A 1 b = p(a)b. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Inverz matrice kao polinom Karakteristični polinom matrice A C n n : κ A (ξ ) := det(a ξ I) = a n ξ n + a n 1 ξ n 1 +... + a 1 ξ + a 0 Matrica poništava svoj karakteristični polinom: κ A (A) = a n A n + a n 1 A n 1 +... + a 1 A + a 0 = 0 Ako je A regularna, onda a 0 0 i A 1 = 1 a 0 ( an A n 1 + a n 1 A n 2 +... + a 2 A + a 1 ) Dakle, A 1 = p(a), za neki polinom stupnja n 1. Ako je Ax = b, onda x = A 1 b = p(a)b. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Inverz matrice kao polinom Karakteristični polinom matrice A C n n : κ A (ξ ) := det(a ξ I) = a n ξ n + a n 1 ξ n 1 +... + a 1 ξ + a 0 Matrica poništava svoj karakteristični polinom: κ A (A) = a n A n + a n 1 A n 1 +... + a 1 A + a 0 = 0 Ako je A regularna, onda a 0 0 i A 1 = 1 a 0 ( an A n 1 + a n 1 A n 2 +... + a 2 A + a 1 ) Dakle, A 1 = p(a), za neki polinom stupnja n 1. Ako je Ax = b, onda x = A 1 b = p(a)b. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Krilovljevi potprostori Za vektor v C n definiramo Krilovljev potprostor K k (v,a) := span{v,av,a 2 v,...,a k 1 v}. Dakle, ako je Ax = b, onda je x K n (b,a). Očekujemo da će već za k << n u prostoru K k (b,a) postojati dobre aproksimacije za x. Zašto Krilovljevi potprostori? Matrica sustava A je toliko velika ili je tako zadana da je jedina operacija koju možemo s njom izvesti oblika v Av (tzv. matvec ). Brzinu konvergencije obično mjerimo u broju operacija v Av. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Krilovljevi potprostori Za vektor v C n definiramo Krilovljev potprostor K k (v,a) := span{v,av,a 2 v,...,a k 1 v}. Dakle, ako je Ax = b, onda je x K n (b,a). Očekujemo da će već za k << n u prostoru K k (b,a) postojati dobre aproksimacije za x. Zašto Krilovljevi potprostori? Matrica sustava A je toliko velika ili je tako zadana da je jedina operacija koju možemo s njom izvesti oblika v Av (tzv. matvec ). Brzinu konvergencije obično mjerimo u broju operacija v Av. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Krilovljevi potprostori Za vektor v C n definiramo Krilovljev potprostor K k (v,a) := span{v,av,a 2 v,...,a k 1 v}. Dakle, ako je Ax = b, onda je x K n (b,a). Očekujemo da će već za k << n u prostoru K k (b,a) postojati dobre aproksimacije za x. Zašto Krilovljevi potprostori? Matrica sustava A je toliko velika ili je tako zadana da je jedina operacija koju možemo s njom izvesti oblika v Av (tzv. matvec ). Brzinu konvergencije obično mjerimo u broju operacija v Av. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora -

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Oznake: x (k) k-ta iteracija e (k) = x x (k) greška u k-tom koraku r (k) = b Ax (k) rezidual u k-tom koraku Uoči: r (k) = Ae (k). Iteracije: x (k+1) = x (k) + α k (b Ax (k) ) = x (k) + α k r (k) = x (k) + α k Ae (k) Vrijednost α k ćemo odabrati tako da x (k+1) bude u nekom smislu optimalan. Uoči: e (k+1) = e (k) α k Ae (k), r (k+1) = r (k) α k Ar (k). 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Oznake: x (k) k-ta iteracija e (k) = x x (k) greška u k-tom koraku r (k) = b Ax (k) rezidual u k-tom koraku Uoči: r (k) = Ae (k). Iteracije: x (k+1) = x (k) + α k (b Ax (k) ) = x (k) + α k r (k) = x (k) + α k Ae (k) Vrijednost α k ćemo odabrati tako da x (k+1) bude u nekom smislu optimalan. Uoči: e (k+1) = e (k) α k Ae (k), r (k+1) = r (k) α k Ar (k). 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Oznake: x (k) k-ta iteracija e (k) = x x (k) greška u k-tom koraku r (k) = b Ax (k) rezidual u k-tom koraku Uoči: r (k) = Ae (k). Iteracije: x (k+1) = x (k) + α k (b Ax (k) ) = x (k) + α k r (k) = x (k) + α k Ae (k) Vrijednost α k ćemo odabrati tako da x (k+1) bude u nekom smislu optimalan. Uoči: e (k+1) = e (k) α k Ae (k), r (k+1) = r (k) α k Ar (k). 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Uoči: x (0) = x e (0) x + span{e (0) } x (1) = x (0) + α 0 Ae (0) = x e (0) + α 0 Ae (0) x + span{e (0),Ae (0) } x (2) = x (1) + α 1 Ae (1) = x (1) + α 1 A(e (0) α 0 Ae (0) ) x + span{e (0),Ae (0),A 2 e (0) }... x (k) x + K k+1 (e (0),A) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Kako odabrati α k? e (k+1) min? Ali e (k+1) = x x (k+1), x nepoznat Definiramo A-normu i A-skalarni produkt: za simetričnu, pozitivno definitnu A i vektor v je v A := v Av, u,v A := v Au (DZ: Dokažite da su ovo zaista norma, odnosno skal. produkt.) Definirajmo f(α k ) := e (k+1) A. Cilj: naći α k tako da f(α k ) minimalno. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Kako odabrati α k? e (k+1) min? Ali e (k+1) = x x (k+1), x nepoznat Definiramo A-normu i A-skalarni produkt: za simetričnu, pozitivno definitnu A i vektor v je v A := v Av, u,v A := v Au (DZ: Dokažite da su ovo zaista norma, odnosno skal. produkt.) Definirajmo f(α k ) := e (k+1) A. Cilj: naći α k tako da f(α k ) minimalno. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Kako odabrati α k? e (k+1) min? Ali e (k+1) = x x (k+1), x nepoznat Definiramo A-normu i A-skalarni produkt: za simetričnu, pozitivno definitnu A i vektor v je v A := v Av, u,v A := v Au (DZ: Dokažite da su ovo zaista norma, odnosno skal. produkt.) Definirajmo f(α k ) := e (k+1) A. Cilj: naći α k tako da f(α k ) minimalno. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska f(α k ) = (e (k+1) ) Ae (k+1) = (e (k+1) ) r (k+1) = (e (k) α k Ae (k) ) (r (k) α k Ar (k) ) = (e (k) α k r (k) ) (r (k) α k Ar (k) ) = α 2 k (r (k) ) Ar (k) 2α k (r (k) ) r (k) + (e (k) ) Ae (k) Uvjet optimalnosti: min α k 0 = f (α k ) = 2α k (r (k) ) Ar (k) 2(r (k) ) r (k) Slijedi: α k = (r (k) ) r (k) (r (k) ) Ar (k). 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska f(α k ) = (e (k+1) ) Ae (k+1) = (e (k+1) ) r (k+1) = (e (k) α k Ae (k) ) (r (k) α k Ar (k) ) = (e (k) α k r (k) ) (r (k) α k Ar (k) ) = α 2 k (r (k) ) Ar (k) 2α k (r (k) ) r (k) + (e (k) ) Ae (k) Uvjet optimalnosti: min α k 0 = f (α k ) = 2α k (r (k) ) Ar (k) 2(r (k) ) r (k) Slijedi: α k = (r (k) ) r (k) (r (k) ) Ar (k). 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Algoritam (Metoda najbržeg silaska: A simetrična, poz. definitna) x (0) zadan. r (0) = b Ax (0) for k = 0,1,2,... α k = (r (k) ) r (k) (r (k) ) Ar (k) x (k+1) = x (k) + α k r (k) r (k+1) = r (k) α k Ar (k) end 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Uoči: (r (k) ) r (k+1) = (r (k) ) r (k) α k (r (k) ) Ar (k) ) = 0, tj. rezidual r (k+1) = Ae (k+1) je okomit (pazi, ne A-okomit!) na r (k), pa je e (k+1) A-okomit na r (k). Zato možemo primjeniti A-Pitagorin poučak: e (k) 2 A = e (k+1) + α k r (k) 2 = e (k+1) 2 A +α 2 k A r (k) 2 to jest, greška monotono pada. (Ako je r (k) = 0, onda je x (k) egzaktno rješenje od Ax = b.) A > e (k+1) 2, A 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska Uoči: (r (k) ) r (k+1) = (r (k) ) r (k) α k (r (k) ) Ar (k) ) = 0, tj. rezidual r (k+1) = Ae (k+1) je okomit (pazi, ne A-okomit!) na r (k), pa je e (k+1) A-okomit na r (k). Zato možemo primjeniti A-Pitagorin poučak: e (k) 2 A = e (k+1) + α k r (k) 2 = e (k+1) 2 A +α 2 k A r (k) 2 to jest, greška monotono pada. (Ako je r (k) = 0, onda je x (k) egzaktno rješenje od Ax = b.) A > e (k+1) 2, A 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Metoda najbržeg silaska konvergencija Teorem (konvergencija metode najbržeg silaska) Neka je A simetrična, pozitivno definitna matrica, te neka je κ = λ max(a) λ min (A). Tada vrijedi: odnosno, e (k) A κ 1 κ + 1 e (k 1) A, e (k) A ( κ 1 κ + 1 ) k e (0) A. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Zadatak 3.6 Zadatak Napišite funkciju x=najbrzisilazak(a,b,x0) koja metodom najbržeg silaska računa aproksimaciju rješenja linearnog sustava Ax = b, uz početnu iteraciju x0. Iteracije zaustavite kada bude r (k) / b < 10 8. Metodu testirajte za matricu A = UΛU, pri čemu je U slučajna ortogonalna matrica, te Λ = diag(1,2,...,100). Neka je x0 = 0, te b takav da je vektor x=[1; 1;... 1] egzaktno rješenje sustava. Usporedite e (k) sa ocjenom iz Teorema o konvergenciji. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Zadatak 3.6 Rješenje. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda najbržeg silaska

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Metoda najbržeg silaska često radi korake u smjeru koji se već ranije pojavio (tj. r (k) se može ponavljati) potencijalno spora konv. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Rješenje: unaprijed odaberemo skup A-ortogonalnih vektora {d 0,d 1,...,d n 1 } i definiramo x (k+1) := x (k) + α k d k. Uoči: e (k+1) = e (k) α k d k, r (k+1) = r (k) α k Ad k. Skalar α k opet odaberemo tako da je e (k+1) A minimalna, tj. α k = d k r (k) d k Ad. k 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Rješenje: unaprijed odaberemo skup A-ortogonalnih vektora {d 0,d 1,...,d n 1 } i definiramo x (k+1) := x (k) + α k d k. Uoči: e (k+1) = e (k) α k d k, r (k+1) = r (k) α k Ad k. Skalar α k opet odaberemo tako da je e (k+1) A minimalna, tj. α k = d k r (k) d k Ad. k 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Lako se vidi da e (k),d 0 A = e (k),d 1 A =... = e (k),d k 1 A = 0, te e (k) span{d k,d k+1,...,d n 1 }. Preciznije, ako je e (0) = ξ 0 d 0 + ξ 1 d 1 +... + ξ k d k + ξ k+1 d k+1 +... + ξ n 1 d n 1, onda je e (k) = ξ k d k + ξ k+1 d k+1 +... + ξ n 1 d n 1. Dakle, e (n) = 0, tj. metoda (u egzaktnoj aritmetici) daje egzaktno rješenje u n koraka. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Algoritam (Metoda konjugiranih smjerova: A simetrična, poz. definitna) x (0) zadan. Odaberi d 0,d 1,...,d n 1 tako da budu A-ortogonalni. r (0) = b Ax (0) for k = 0,1,2,... α k = d k r (k) d k Ad k x (k+1) = x (k) + α k d k r (k+1) = r (k) α k Ad k end 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Neka svojstva: d j Ad i = 0, i j d j r (k) = d j Ae (k) = 0, j < k d j r (0) = d j r (1) =... = d j r (j) α k = d k r (0) d k Ad k Kako odabrati d 0,d 1,...,d n 1? A-Gram-Schmidtovim postupkom na linearno nezavisne vektore u 0,u 1,...,u n 1 : d k = u k β 0 d 0 β 1 d 1... β k 1 d k 1, β j = u k,d j A = d d j,d j A j Au k d j Ad j. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Metoda konjugiranih smjerova Neka svojstva: d j Ad i = 0, i j d j r (k) = d j Ae (k) = 0, j < k d j r (0) = d j r (1) =... = d j r (j) α k = d k r (0) d k Ad k Kako odabrati d 0,d 1,...,d n 1? A-Gram-Schmidtovim postupkom na linearno nezavisne vektore u 0,u 1,...,u n 1 : d k = u k β 0 d 0 β 1 d 1... β k 1 d k 1, β j = u k,d j A = d d j,d j A j Au k d j Ad j. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Zadatak 3.7 Zadatak Napišite funkciju Q=mgsA(A,X) koja modificiranim A-Gram-Schmidtovim postupkom redom A-ortogonalizira stupce matrice X i sprema ih kao stupce matrice Q. Napišite funkciju x=konjugiranismjerovi(a,b,x0,d) koja metodom konjugiranih smjerova računa aproksimaciju rješenja linearnog sustava Ax = b, uz početnu iteraciju x0. Iteracije zaustavite kada bude r (k) / b < 10 8. Konjugirani smjerovi su stupci matrice D. Metodu testirajte za matricu A = UΛU, pri čemu je U slučajna ortogonalna matrica, te Λ = diag(1,2,...,100). Neka je x0 = 0, te b takav da je vektor x=[1; 1;... 1] egzaktno rješenje sustava. Usporedite sa metodom najbržeg silaska. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih smjerova

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata Metoda konjugiranih gradijenata (CG): metoda konjugiranih smjerova d 0,...,d n 1 dobivamo A-Gram-Schmidtovim postupkom na vektorima r (0),r (1),...,r (n 1). Pokazat ćemo: d k = r (k) β k 1 d k 1, β k 1 = (r (k) ) r (k) (r (k 1) ) r (k 1) tj. β 0 = β 1 =... = β k 2 = 0 u A-Gram-Schmidtovom postupku d k = r (k) β 0 d 0 β 1 d 1... β k 1 d k 1. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata Metoda konjugiranih gradijenata (CG): metoda konjugiranih smjerova d 0,...,d n 1 dobivamo A-Gram-Schmidtovim postupkom na vektorima r (0),r (1),...,r (n 1). Pokazat ćemo: d k = r (k) β k 1 d k 1, β k 1 = (r (k) ) r (k) (r (k 1) ) r (k 1) tj. β 0 = β 1 =... = β k 2 = 0 u A-Gram-Schmidtovom postupku d k = r (k) β 0 d 0 β 1 d 1... β k 1 d k 1. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata Svojstvo A-Gram-Schmidtovog postupka: span{d 0,d 1,...,d k 1 } = span{r (0),r (1),...,r (k 1) }. Kako je CG metoda konjugiranih smjerova, vrijedi d j r (k) = 0, za j < k, pa onda i (r (j) ) r (k) = 0, i j. d k = r (k) β 0 d 0 β 1 d 1... β k 1 d k 1, β j = d j Ar (k) d j Ad j Uoči: (r (j+1) ) r (k) = (r (j) ) r (k) α j d j Ar (k), pa je d j Ar (k) = 0, j < k 1 d k 1 Ar (k) = (r (k) ) r (k) + (r (k 1) ) r (k) α k 1 = (r (k) ) r (k) α k 1 = (r (k) ) r (k) α k 1, 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata Slijedi β j = 0, za j = 0,1,...,k 2, te β k 1 = (r (k) ) r (k) α k 1 d k 1 Ad = (r (k) ) r (k) k 1 d k 1 r (k 1) = (r (k) ) r (k) (r (k 1) ) r (k 1), jer je α k 1 = d k 1 r (k 1) d k 1 Ad k 1, te d k 1 = r (k 1) ξ d k 2, a d k 2 r (k 1) = 0. Slično, zbog d k r (k) = (r (k) ) r (k), možemo pisati α k = d k r (k) d k Ad k = (r (k) ) r (k) d k Ad. k 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata Algoritam (Metoda konjugiranih gradijenata: A simetrična, poz. definitna) x (0) zadan. d 0 = r (0) = b Ax (0) for k = 0,1,2,... α k = (r (k) ) r (k) d k Ad k x (k+1) = x (k) + α k d k r (k+1) = r (k) α k Ad k β k = (r (k+1) ) r (k+1) (r (k) ) r (k) d k+1 = r (k+1) β k d k end 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata konvergencija Može se pokazati da vektor e (k) ima najmanju A-normu od svih vektora iz mnogostrukosti Možemo pisati: e (0) + span{ae (0),A 2 e (0),...,A k e (0) }. e (k) = e (0) + τ 1 Ae (0) + τ 2 A 2 e (0) +... + τ k A k e (0) = π(a)e (0), za neki polinom π P k stupnja k takav da je π(0) = 1. Dakle, ako je ˆπ polinom za kojeg se postiže π(a)e (0) A, onda je e (k) = ˆπ(A)e (0). min π P k π(0)=1 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata konvergencija Može se pokazati da vektor e (k) ima najmanju A-normu od svih vektora iz mnogostrukosti Možemo pisati: e (0) + span{ae (0),A 2 e (0),...,A k e (0) }. e (k) = e (0) + τ 1 Ae (0) + τ 2 A 2 e (0) +... + τ k A k e (0) = π(a)e (0), za neki polinom π P k stupnja k takav da je π(0) = 1. Dakle, ako je ˆπ polinom za kojeg se postiže π(a)e (0) A, onda je e (k) = ˆπ(A)e (0). min π P k π(0)=1 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata konvergencija Može se pokazati da vektor e (k) ima najmanju A-normu od svih vektora iz mnogostrukosti Možemo pisati: e (0) + span{ae (0),A 2 e (0),...,A k e (0) }. e (k) = e (0) + τ 1 Ae (0) + τ 2 A 2 e (0) +... + τ k A k e (0) = π(a)e (0), za neki polinom π P k stupnja k takav da je π(0) = 1. Dakle, ako je ˆπ polinom za kojeg se postiže π(a)e (0) A, onda je e (k) = ˆπ(A)e (0). min π P k π(0)=1 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata konvergencija Za poz.def. A = UΛU je A 1/2 = UΛ 1/2 U i π(a) = Uπ(Λ)U, pa imamo: e (k) A = min π(a)e (0) A π P k π(0)=1 = min π P k π(0)=1 = min π P k π(0)=1 = min π P k π(0)=1 min π P k π(0)=1 = min π P k π(0)=1 (e (0) ) π(a) Aπ(A)e (0) (e (0) ) π(a) A 1/2 A 1/2 π(a)e (0) A 1/2 π(a)e (0) 2 = min π P k π(0)=1 π(a) 2 A 1/2 e (0) 2 π(λ) 2 e (0) A π(a)a 1/2 e (0) 2 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Metoda konjugiranih gradijenata konvergencija Vrijedi: min π P k π(0)=1 π(λ) 2 = min π P k π(0)=1 max π(λ). λ Λ(A) Ocjenu za e (k) dobivamo tako da za π uvrstimo neki konkretni polinom stupnja k za kojeg vrijedi π(0) = 1. Uvrštavanjem Čebiševljevog polinoma za interval [λ min (A),λ max (A)] dobivamo: Teorem (konvergencija metode konjugiranih gradijenata) Neka je A simetrična, pozitivno definitna matrica, te neka je κ = λ max(a) λ min (A). Tada: ( ) k e (k) A κ 1 2 e (0) A. κ + 1 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Zadatak 3.8 Zadatak Napišite funkciju x=cg(a,b,x0) koja CG-metodom računa aproksimaciju rješenja linearnog sustava Ax = b, uz početnu iteraciju x0. Iteracije zaustavite kada bude r (k) / b < 10 8. Metodu testirajte za matricu A = UΛU, pri čemu je U slučajna ortogonalna matrica, te (a) Λ = diag(1,2 2,3 2,...,100 2 ). (b) Λ = diag(1,2,3,...,100). (c) Λ = diag(1,1,3,3,5,5,...,97,97,99,100). (d) Λ = diag(1,...,1,20,...,20,...,90,100,...,100). }{{}}{{}}{{} 10 10 10 Neka je x0 = 0, te b takav da je vektor x=[1; 1;... 1] egzaktno rješenje sustava. Usporedite sa ocjenom iz teorema i objasnite dobivene rezultate! 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Zadatak 3.8 Rješenje. (a) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Zadatak 3.8 Rješenje. (b) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Zadatak 3.8 Rješenje. (c) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Zadatak 3.8 Rješenje. (d) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - Metoda konjugiranih gradijenata

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES CG: simetrična, pozitivno definitna matrica sustava x (k) x (0) + K k 1 (r (0),A) r (k) = min π P k π(a)r (0) π(0)=1 A kratke rekurzivne formule za update x (k), r (k) ; ne treba baza za K k 1 (r (0),A) GMRES (Generalized Minimal RESidual): proizvoljna (regularna) matrica sustava x (k) x (0) + K k 1 (r (0),A) r (k) = min π P k π(a)r (0) π(0)=1 2 složeniji izračun x (k) ; treba baza za K k 1 (r (0),A) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES CG: simetrična, pozitivno definitna matrica sustava x (k) x (0) + K k 1 (r (0),A) r (k) = min π P k π(a)r (0) π(0)=1 A kratke rekurzivne formule za update x (k), r (k) ; ne treba baza za K k 1 (r (0),A) GMRES (Generalized Minimal RESidual): proizvoljna (regularna) matrica sustava x (k) x (0) + K k 1 (r (0),A) r (k) = min π P k π(a)r (0) π(0)=1 2 složeniji izračun x (k) ; treba baza za K k 1 (r (0),A) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES [r (0),Ar (0),A 2 r (0),...,A k 1 r (0) ] je loša baza za K k (r (0),A). Ortonormirana baza je numerički stabilna: gradimo redom o-n baze za K 1 K 2 K 3... pretp. da smo dosad sagradili V (k) = [v 1 v 2... v k ] o-n bazu za K k t.d. je K j = span{v 1,...,v j }, za sve j k. može se pokazati da je K k+1 = span{v (k),av k }. Gram-Schmidtovim algoritmom ortogonaliziramo Av k na V (k) : h k+1,k v k+1 = Av k h 1,k v 1 h 2,k v 2... h k,k v k. stavimo V (k+1) = [V (k) v k+1 ]. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES [r (0),Ar (0),A 2 r (0),...,A k 1 r (0) ] je loša baza za K k (r (0),A). Ortonormirana baza je numerički stabilna: gradimo redom o-n baze za K 1 K 2 K 3... pretp. da smo dosad sagradili V (k) = [v 1 v 2... v k ] o-n bazu za K k t.d. je K j = span{v 1,...,v j }, za sve j k. može se pokazati da je K k+1 = span{v (k),av k }. Gram-Schmidtovim algoritmom ortogonaliziramo Av k na V (k) : h k+1,k v k+1 = Av k h 1,k v 1 h 2,k v 2... h k,k v k. stavimo V (k+1) = [V (k) v k+1 ]. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES [r (0),Ar (0),A 2 r (0),...,A k 1 r (0) ] je loša baza za K k (r (0),A). Ortonormirana baza je numerički stabilna: gradimo redom o-n baze za K 1 K 2 K 3... pretp. da smo dosad sagradili V (k) = [v 1 v 2... v k ] o-n bazu za K k t.d. je K j = span{v 1,...,v j }, za sve j k. može se pokazati da je K k+1 = span{v (k),av k }. Gram-Schmidtovim algoritmom ortogonaliziramo Av k na V (k) : h k+1,k v k+1 = Av k h 1,k v 1 h 2,k v 2... h k,k v k. stavimo V (k+1) = [V (k) v k+1 ]. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES [r (0),Ar (0),A 2 r (0),...,A k 1 r (0) ] je loša baza za K k (r (0),A). Ortonormirana baza je numerički stabilna: gradimo redom o-n baze za K 1 K 2 K 3... pretp. da smo dosad sagradili V (k) = [v 1 v 2... v k ] o-n bazu za K k t.d. je K j = span{v 1,...,v j }, za sve j k. može se pokazati da je K k+1 = span{v (k),av k }. Gram-Schmidtovim algoritmom ortogonaliziramo Av k na V (k) : h k+1,k v k+1 = Av k h 1,k v 1 h 2,k v 2... h k,k v k. stavimo V (k+1) = [V (k) v k+1 ]. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES [r (0),Ar (0),A 2 r (0),...,A k 1 r (0) ] je loša baza za K k (r (0),A). Ortonormirana baza je numerički stabilna: gradimo redom o-n baze za K 1 K 2 K 3... pretp. da smo dosad sagradili V (k) = [v 1 v 2... v k ] o-n bazu za K k t.d. je K j = span{v 1,...,v j }, za sve j k. može se pokazati da je K k+1 = span{v (k),av k }. Gram-Schmidtovim algoritmom ortogonaliziramo Av k na V (k) : h k+1,k v k+1 = Av k h 1,k v 1 h 2,k v 2... h k,k v k. stavimo V (k+1) = [V (k) v k+1 ]. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Definiramo ovu gornje-hessenbergovu matricu (reda (k + 1) k): H (k+1) = h 1,1 h 1,2 h 1,3 h 1,4... h 1,k 1 h 1,k h 2,1 h 2,2 h 2,3 h 2,4... h 2,k 1 h 2,k h 3,2 h 3,3 h 3,4... h 3,k 1 h 3,k h 4,3 h 4,4... h 4,k 1 h 4,k. h k,k 1 h k,k h k+1,k Tada: AV (k) = V (k+1) H (k+1), tj. A[v 1 v 2... v k ] = [v 1 v 2... v k v k+1 ]H (k+1) j-ti stupac: Av j je linearna kombinacija v 1,v 2,...,v j. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Algoritam (Arnoldijev algoritam ortonormirana baza za K k (r (0),A)) v 1 = r (0) / r (0) ; for k = 1,2,... z = Av k ; for j = 1,2,...,k h j,k = v j z; z = z h j,k v j ; end h k+1,k = z ; if (h k+1,k == 0) stop v k+1 = z/h k+1,k ; end 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Kada imamo bazu za K k (r (0),A): biramo x (k) x (0) + K k (r (0),A), tj. x (k) = x (0) + V (k) y, za neko y R k. cilj: r (k) min. r (k) b = Ax (k) = b A(x (0) + V (k) y) = r (0) AV (k) y = r (0) V (k+1) H (k+1) y = r (0) V (k+1) e1 V (k+1) H (k+1) y = V (k+1) ( r (0) e1 H (k+1) y) = r (0) e1 H (k+1) r (0) y = min e 1 H (k+1) y y 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Kada imamo bazu za K k (r (0),A): biramo x (k) x (0) + K k (r (0),A), tj. x (k) = x (0) + V (k) y, za neko y R k. cilj: r (k) min. r (k) b = Ax (k) = b A(x (0) + V (k) y) = r (0) AV (k) y = r (0) V (k+1) H (k+1) y = r (0) V (k+1) e1 V (k+1) H (k+1) y = V (k+1) ( r (0) e1 H (k+1) y) = r (0) e1 H (k+1) r (0) y = min e 1 H (k+1) y y 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Algoritam (GMRES) β = r (0) ; for k = 1,2,... Izračunaj V (k+1) i H (k+1) (jedan korak Arnoldijevog algoritma); Riješi problem najmanjih kvadrata min y β e 1 H (k+1) y ; x (k) = x (0) + V (k) y; if (x (k) dovoljno dobar) stop; end problem najmanjih kvadrata sa Hessenbergovog matricom se može riješiti puno efikasnije nego sa proizvoljnom; moguće je i bez rješavanja problema najmanjih kvadrata izračunati r (k), pa x (k) računamo tek kad je r (k) dovoljno malen. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES Algoritam (GMRES) β = r (0) ; for k = 1,2,... Izračunaj V (k+1) i H (k+1) (jedan korak Arnoldijevog algoritma); Riješi problem najmanjih kvadrata min y β e 1 H (k+1) y ; x (k) = x (0) + V (k) y; if (x (k) dovoljno dobar) stop; end problem najmanjih kvadrata sa Hessenbergovog matricom se može riješiti puno efikasnije nego sa proizvoljnom; moguće je i bez rješavanja problema najmanjih kvadrata izračunati r (k), pa x (k) računamo tek kad je r (k) dovoljno malen. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES konvergencija Pretp. A dijagonizabilna, tj. A = XΛX 1. r (k) = min π P k π(0)=1 = min π P k π(0)=1 min π P k π(0)=1 π(a)r (0) = κ 2 (X) ( min π P k π(0)=1 Xπ(Λ)X 1 r (0) X π(λ) X 1 r (0) Λ C, optimalan π je teško pronaći/ocijeniti. π(λ) ) r (0) 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

GMRES konvergencija Teorem (Greenbaum, Pták, Strakoš) Neka je zadan niz a 0 a 1... a n 1 > 0, te neka su λ 1,...,λ n proizvoljni kompleksni brojevi. Tada postoji matrica A čije su svojstvene vrijednosti λ 1,...,λ n, te vektor b takvi da reziduali GMRES metode za sustav Ax = b zadovoljavaju r (k) = ak, za sve k = 0,1,...,n 1. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Zadatak Napišite funkciju x=gmres(a,b,x0) koja GMRES-metodom računa aproksimaciju rješenja linearnog sustava Ax = b, uz početnu iteraciju x0. Iteracije zaustavite kada bude r (k) / r (0) < 10 8. Neka je a k = (12 k/10) 2, za k = 0,1,...,99. Prona dite matricu A reda 100 i vektor b takve da reziduali GMRES metode za sustav Ax = b zadovoljavaju r (k) = a k. Testirajte funkciju GMRES na ovom sustavu. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. Stavimo npr. λ j = cos 2πj 2πj + i sin 100 100, j = 1,...,100. Definiramo: g k = ak 1 2 a2 k, k = 1,2,...,100; (a 100 = 0); Q = [q 1 q 2...,q 100 ] slučajna ortogonalna matrica; b = g 1 q 1 + g 2 q 2 +... + g 100 q 100 ; B = [b v 1... v 99 ]; p(z) = z 100 99 j=0 α j z j = (z λ 1 )(z λ 2 )...(z λ n ) = z 100 1; 0... 0 α 0 1... 0 α 1 A = B......... B 1 1 α 99 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Zadatak 3.9 Rješenje. 3. Iterativne metode za linearne sustave Aproksimacije iz Krilovljevih potprostora - GMRES

Sadržaj 1 Osnovne iterativne metode Jacobijeva metoda Gauss-Seidelova metoda JOR (Jacobi Over-Relaxation) SOR (Succesive Over-Relaxation) 2 Aproksimacije iz Krilovljevih potprostora Metoda najbržeg silaska Metoda konjugiranih smjerova Metoda konjugiranih gradijenata GMRES 3 Prekondicioniranje 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje Prekondicioniranje modifikacija početnog sustava Ax = b koja ubrzava metodu za rješavanje sustava. Umjesto Ax = b, rješavamo M 1 Ax = M 1 b. Kada iterativna metoda treba izračunati z = M 1 Av, to radimo ovako: (1) t = Av; (2) Riješi sustav Mz = t. Cilj odabrati M tako da: M A u nekom smislu (M 1 A I). Sustavi tipa Mz = t se mogu jako brzo riješiti. CG, GMRES npr. κ(m 1 A) κ(a) ili Λ(M 1 A) koncentriran oko jedne točke. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje Prekondicioniranje modifikacija početnog sustava Ax = b koja ubrzava metodu za rješavanje sustava. Umjesto Ax = b, rješavamo M 1 Ax = M 1 b. Kada iterativna metoda treba izračunati z = M 1 Av, to radimo ovako: (1) t = Av; (2) Riješi sustav Mz = t. Cilj odabrati M tako da: M A u nekom smislu (M 1 A I). Sustavi tipa Mz = t se mogu jako brzo riješiti. CG, GMRES npr. κ(m 1 A) κ(a) ili Λ(M 1 A) koncentriran oko jedne točke. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje Prekondicioniranje modifikacija početnog sustava Ax = b koja ubrzava metodu za rješavanje sustava. Umjesto Ax = b, rješavamo M 1 Ax = M 1 b. Kada iterativna metoda treba izračunati z = M 1 Av, to radimo ovako: (1) t = Av; (2) Riješi sustav Mz = t. Cilj odabrati M tako da: M A u nekom smislu (M 1 A I). Sustavi tipa Mz = t se mogu jako brzo riješiti. CG, GMRES npr. κ(m 1 A) κ(a) ili Λ(M 1 A) koncentriran oko jedne točke. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje dijagonalnom matricom M = dijagonala matrice A. Ako je A pozitivno definitna, onda možemo rješavati i gdje je D matrica iz ovog Teorema: Teorem (Van der Sluis) Ax = b DADy = Db, x = Dy, Neka je A pozitivno definitna matrica i D = diag( 1/A 1,1, 1/A 2,2,..., 1/A n,n ). Tada: κ(dad) n min D κ( A ), gdje je D skup svih dijagonalnih matrica sa pozitivnim elementima dijagonale. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje simetričnih matrica Ako A simetrična, onda M 1 A ne mora biti simetrična. Ali, ako M = LL, onda M 1 Ax = M 1 b L L 1 Ax = L L 1 b L 1 AL y = L 1 b, uz x = L y. Sada je matrica sustava L 1 AL simetrična. Uoči: matrice M 1 A i L 1 AL su slične, pa su očuvana svojstva konvergencije koja ovise o spektru matrice sustava. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje pozitivno definitnih matrica Kako dobiti M = LL? Ako A pozitivno definitna npr. incomplete Cholesky. MATLAB: R=cholinc(A, 0 ); L=R ; Algoritam (incomplete Cholesky) for i = 1,2,...,n L i,i = A i,i i 1 k=1 L2 i,k for j = i + 1,...,n if (A i,j 0) L j,i = (A i,j i 1 k=1 L i,kl j,k )/L i,i else L j,i = 0 end end Uoči: struktura nula u matrici L je ista kao stuktura nula u (donjem trokutu od) A! 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje u CG Ponekad M je pozitivno definitna, ali nije zadana u formi M = LL. Želimo verziju CG za sustav L 1 AL y = L 1 b koja ne koristi L već samo M. Neka CG za L 1 AL x = L 1 b koristi x (k), r (k), dk α k,β k. Uvedimo oznake: x (k) = L x (k), r (k) p = L r (k), d k = L dk. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje u CG Ponekad M je pozitivno definitna, ali nije zadana u formi M = LL. Želimo verziju CG za sustav L 1 AL y = L 1 b koja ne koristi L već samo M. Neka CG za L 1 AL x = L 1 b koristi x (k), r (k), dk α k,β k. Uvedimo oznake: x (k) = L x (k), r (k) p = L r (k), d k = L dk. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Prekondicioniranje u CG Tada: x (k+1) = L x (k+1) = L ( x (k) + α k dk ) = x (k) + α k d k r (k+1) = L r (k+1) = L( r (k) α k L 1 AL dk ) = r (k) α k Ad k d k+1 = L dk+1 = L ( r (k+1) β k dk ) = L L 1 r (k+1) β k d k α k = = M 1 r (k+1) β k d k r (k) ( r (k) ) d = (r (k) ) L L 1 r (k) k (L 1 AL ) dk d k Ad k β k = ( r (k+1) ) r (k+1) ( r (k) = (r (k+1) ) M 1 r (k+1) ) r (k) (r (k) ) M 1 r (k) = (r (k) ) M 1 r (k) d k Ad k 3. Iterativne metode za linearne sustave Prekondicioniranje -

Metoda konjugiranih gradijenata sa prekondicioniranjem Algoritam (CG sa prekondicioniranjem: A, M simetrične, poz. definitne) x (0) zadan; r (0) = b Ax (0) ; Riješi sustav Mp 0 = r (0) ; d 0 = p 0 ; for k = 0,1,2,... α k = (r (k) ) p k d k Ad ; k x (k+1) = x (k) + α k d k ; r (k+1) = r (k) α k Ad k ; Riješi sustav Mp k+1 = r (k+1) ; β k = (r (k+1) ) p k+1 (r (k) ) p k ; d k+1 = p k+1 β k d k ; end 3. Iterativne metode za linearne sustave Prekondicioniranje -

Zadatak 3.10 Zadatak Napišite funkciju x=cg_precond(a,m,b,x0) koja CG-metodom računa aproksimaciju rješenja linearnog sustava Ax = b, uz početnu iteraciju x0 i matricu prekondicioniranja M. Iteracije zaustavite kada bude b Ax (k) / b Ax (0) < 10 10. Testirajte brzinu konvergencije: bez prekondicioniranja, uz prekondicioniranje dijagonalnom matricom, uz prekondicioniranje incomplete Cholesky faktorizacijom, ako je matrica sustava Ax = b Stieltjesova matrica iz datoteke stieltjes.mat. Neka je desna strana takva da je rješenje x=[1 1... 1]. 3. Iterativne metode za linearne sustave Prekondicioniranje -

Zadatak 3.10 Rješenje. spy(a); 3. Iterativne metode za linearne sustave Prekondicioniranje -

Zadatak 3.10 Rješenje. 3. Iterativne metode za linearne sustave Prekondicioniranje -