REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAȚII LINIARE [611757]

LUCRAREA 8

REZOLVAREA NUMERICĂ A SISTEMELOR DE ECUAȚII LINIARE
FOLOSIND METODE ITERATIVE

8.1. Obiectivele lucrării

În cadrul lucrării sunt prezentate cele mai utilizate metode iterative de rezolvare
numerică a sistemelor de ecuații liniare: Jacobi , Seidel -Gauss și Seidel -Gauss modificată.
Metodele iterative permit determinarea soluției exacte a unui sistem de ecuații liniare
numai atunci când s -ar parcurge un număr nelimitat (teoretic infinit) de iterații. În
practică acest lucru nu este posibil, astf el încât această categorie de metode determină
doar o soluție aproximativă a cărei precizie depinde de o mărime indicată inițial, înainte
de începerea procesului iterativ.
Cerințele lucrării se referă la soluțion area numeric ă a unui sistem de ecuații lin iare
utilizând metodele Jacobi , Seidel -Gauss și Seidel -Gauss modificată . Rezolvarea se va
efectua prin calcul manual și cu funcțiile Matlab met_jacobi , met_seidelgaus și
met_seidelgauss_modif . Se va efectua o analiză comparativă a metodelor folosite prin
intermediul rezultatelor obținut e.

8.2. Aspecte teoretice
8.2.1. Generalități

În rezolvarea numerică a sistemelor de ecuații liniare folosind metode iterative se
pornește de la o aproximație inițială, notată X0, și se construiește un șir de aproximații
succesive X0, X1, …, Xk, … care în anumite condiții converge către soluția exactă, notată

74 Lucrarea 8
X*. Dacă pentru acest șir nu se poate defini o limită se spune că metoda este divergentă.
În caz contrar, metoda este convergentă. Acest lucru este echivalent cu posibilitatea de
a defini o relație de recurență între două aproximații succesive de forma:
() ,1,0 ,1= =+k XF Xk k (8.1)
În ceea ce privește convergența metodei, se poate demonstra că aceasta este
garantată numai dacă mat ricea coeficienților A este diagonal dominantă. Aproximația
inițială X0 nu joacă un rol determinant în convergență, aceasta afect ând numai numărul
de iterații.

8.2.2. Metode de soluționare iterative

8.2.2.1. Metoda Jacobi

Fie sistemul de ecuații lin iare dat sub forma :
m n mn m mnnnn
b xa xaxab xa xaxab xa xaxa
=+++=+++=+++

22 112 2 2 22 1211 1 2 12 111
(8. 2)
Pentru sistemul ( 8.2) s e presupune că elementele aii ≠ 0, i = 1, …, n și determinatul
matricei det(A) ≠ 0, unde A este matricea coeficienților din sistemul de ecuații liniare.
Dacă se explicitează fiecare necunoscută a sistemului în f uncție de celelalte
necunoscute rezultă o relație iterativă de forma :

≠=+⋅−=n
ijjiik
j ij ik
iaxa b x
11/) ( , n i,…,1= , 0≥k (8 .3)
Relația de rec urență ( 8.3) reprezintă formula de iterare a metodei Jacobi.
În cazul în care în forma inițială a sistemului de ecuații matricea A conține cel
puțin un element diagonal nul , înaintea aplicării metodei Jacobi este necesar schimbarea

Rezolvarea numeri că a sistemelor de ecuații liniare folosind metode iterative 75
ordinei unor ecuații as tfel încât să se asigure valori nenule pentru toate elementele
diagonale. Această operație se poate realiza folosind pivotarea parțială care se execută o
singură dată, înaintea intrării în bucla iterativă.
Aplicarea cu succes a metodei Jacobi necesită și o altă condiție legată de matricea
A care trebuie să fie dominant diagonală, adică elementele diagonale ale acesteia să
domine în valoare absolută elementele din afara diagonalei principale:

≠=>n
ijjij ii a a
1 (8. 4)
Dacă matricea A este dominant diagonală, aproximația inițială poate fi aleasă
oricum, iar metoda va converge. Însă, atunci când nu se cunosc informații privind
localizarea soluției se poate considera aproximația inițială identică cu termenii liberi.
Condiția de convergență impusă procesului iterativ se referă la abaterea maximă
între două iterații succesive care trebuie să fie se fie sub o valoare prag Emax, impusă de
utilizator. Abaterea maximă se definește ca cea mai mare abatere, în valoare absolută,
între necunoscute în două iterații succesive:
()max1max E x xk
ik
ii≤−+ ( 8.5)

8.2.2.2. Metoda Seidel -Gauss

Metoda Seidel -Gauss este foarte asemănătoare cu metoda Jacobi, singura
deosebir e dintre ele fiind următoarea: la metoda Jacobi în partea dreaptă a relației ( 8.3)
apar numai valorile anterioare ale variabilelor (valorile de la iterația k–1), iar în cadrul
metodei Seidel -Gauss apar atât unele valori anterioare (pentru variabilele care nu au
fost încă recalculate), cât și unele valori noi (valorile de la iterația k, pentru variabilele
care au fost recalculate deja).
Relația de calcul iterativ este de forma:
∑∑−
= +=+ +⋅−⋅−=1
1 11 1/) (i
jiin
ijk
j ijk
j ij ik
i axa xa b x , n i,…,1= , 0≥k (8. 6)

76 Lucrarea 8
Această variantă de calcul indică o îmbunătățire a vitezei de convergență datorită
folosirii unor informații mai precise din iterația curentă.

8.2.2. 3. Metoda Seidel -Gauss modificată

Dacă se dorește o accelerare suplimentară a convergeței se poate folosi un factor
de accelerare α . În c e e a c e p r iv e ș te accelerarea vitezei de convergență , aceasta nu se
produce pentru orice valoare a factorului α, iar alegerea optimă a acestuia este
dependentă de problemă .
Formula de iterare a metodei Seidel -Gauss modificată este:
() n i x x xaaxaa
abxk
ik
in
ijk
j
iiiji
jk
j
iiij
iii k
i ,,1111
11
11=−

−+ − −=+
+=−
=+∑∑α (8.7)
În acest caz, noua aproximație se determină în funcție de aproximația calculată cu
relația (8. 6) căreia i se aplică o corecție depedentă de factorul de accelerare:
() ∑∑
+=−
=+− −=n
ijk
j
iiiji
jk
j
iiij
iii k
i xaaxaa
abx
11
1*1 ( 8.8)
()() n i x x x xk
ik
ik
ik
i ,,1111*1 1=−

−+=+ + +
α ( 8.9)
Utilizarea unui factor de accelerare care nu a fost bine ales p oate transforma un
proces care îndeplinește condiția de convergență î ntr-unul divergent. Valoarea acest ui
factor este depend ent de problemă și se recomandă , ca atunci când se folosește metoda
Seidel -Gauss modificată, acesta să se aleagă cu prudență între anumite valori. În general
se recomandă utilizarea unor valori cuprinse în intervalul (0, 2).

Exemple numeric e

Exemplul 1

Se consideră sistemul de ecuații liniar:

Rezolvarea numeri că a sistemelor de ecuații liniare folosind metode iterative 77



=++=−+−−=+−+−=−+
2 5 2 216 2 5 28 2 2 10 62 2 6 8
4 3 24 3 14 3 2 13 2 1
x x xx x xx x x xx x x

Se cere determinarea soluției acestui sistem folosind metoda iterativă Jacobi.
Rezolvare
Se alege aproximația inițială, X0 = [0; 0; 0; 0], abaterea maximă între două iterații,
Emax = 0,0001 și numărul maxim de iterații, Nmax =100, formula iterativă (8. 3) devine:



−−=++=−+−−=+−−=
5/)2 22(5/)2 2 16(10/)2 2 68(8/)2 62(
3 2 44 1 34 3 1 23 2 1
x x xx x xx x x xx x x

Iterația 1



==⋅−⋅−===⋅+⋅+=−=−=⋅−⋅+⋅−−=−=−=⋅+⋅−−=
4,0525/)02022(2,35165/)0202 16(8,0 108 10/)0202068(25,0 8/2 8/)02062(
4321
xxxx

–––––––––––––––––––––––––––––––––––––––
Iterația 48



−=−= ⋅−−⋅−== = −⋅+⋅+=−= −= −⋅−⋅+⋅−−== = ⋅+−⋅−−=
6882,0 5441,3 5/) 3477,32) 6272,0(22(3477,35 7348,165/)) 6882,0(2 0574,12 16(6272,0 10 2726,6 10/)) 6882,0(2 3477,32 0574,168(0574,18/ 4586,88/) 3477,32) 6272,0(62(
4321
xxxx

Exemplul 2

Se consideră sistemul format din 4 ecuații liniare definit în cadrul exemplului 1. S e
cere determinarea soluției acestui sistem folosind metoda iterativă Seidel -Gauss.

78 Lucrarea 8
Rezolvare
Se alege aproximația ini țială, X0=[0; 0; 0; 0 ], abaterea maximă între două iterații,
Emax = 0,0001 și numărul maxim de iterații, Nmax = 100, formula iterativă (8. 6) devine:



−−=++=−+−−=+−−=
5/)2 22(5/)2 2 16(10/)2 2 68(8/)2 62(
3 2 44 1 34 3 1 23 2 1
x x xx x xx x x xx x x

Iterația 1



−=−=⋅−−⋅−===⋅+−⋅+=−=−=⋅−⋅+−⋅−−=−=−=⋅+⋅−−=
58,0 59,2 5/)1,32)65,0(22(1,355,155/)02)25,0(2 16(65,0 105.6 10/)0202)25,0(68(25,0 8/2 8/)02062(
4321
xxxx

–––––––––––––––––––––––––––––––––––––––
Iterația 11



−=−= ⋅−−⋅−== = −⋅+⋅+=−= −= −⋅−⋅+⋅−−== = ⋅+−⋅−−=
6882,0 5441,3 5/) 3477,32) 6272,0(22(3477,35 7348,165/)) 6882,0(2 0574,12 16(6272,0 10 2726,6 10/)) 6882,0(2 3477,32 0574,168(0574,18/ 4586,88/) 3477,32) 6272,0(62(
4321
xxxx

Exemplul 3

Se consideră sistemul format din 4 ecuații liniare definit în cadrul exemplului 1. S e
cere determinarea soluției acestui sistem folosi nd metoda iterativă Seidel -Gauss
modificată.
Rezolvare
Dacă se alege aproximația inițială X0=[0; 0; 0; 0], abaterea maximă între două
iterații Emax = 0,0001, numărul maxim de iterații Nmax = 100, coeficientul de accelerare
ω = 1,15, formula iterativă dev ine:

Rezolvarea numeri că a sistemelor de ecuații liniare folosind metode iterative 79



−−=++=−+−−=+−−=
5/)2 22(5/)2 2 16(10/)2 2 68(8/)2 62(
3 2 44 1 34 3 1 23 2 1
x x xx x xx x x xx x x

Iterația 1
• Se determină noua aproximație cu formula metodei Seidel -Gauss obișnuită;



−=−=⋅−−⋅−===⋅+−⋅+=−=−=⋅−⋅+−⋅−−=−=−=⋅+⋅−−=
58,0 59,2 5/)1,32)65,0(22(1,355,155/)02)25,0(2 16(65,0 105,6 10/)0202)25,0(68(25,0 8/2 8/)02062(
)1(
4)1(
3)1(
2)1(
1
xxxx

• Se calculează corecția folosind aproximația calculată și cea din iterația anterioară,
iar apoi se determină noua aprox imație , prin aplicarea acestei corecții valorii
calculate cu metoda Seidel -Gauss obișnuită.
()
()
()
()


−=−−⋅+=−⋅+==−⋅+=−⋅+=−=−−⋅+=−⋅+=−=−−⋅+=−⋅+=
667,0 )0 58,0(15,10565,3)01,3(15,107475,0 )0 65,0(15,102875,0 )0 25,0(15,10
)0(
4)1(
4)0(
4)1(
4)0(
3)1(
3)0(
3)1(
3)0(
2)1(
2)0(
2)1(
2)0(
1)1(
1)0(
1)1(
1
x x x xx x x xx x x xx x x x
ωωωω

–––––––––––––––––––––––––––––––––––––––
Iterația 9



−=−= ⋅−−⋅−== = −⋅+⋅+=−= −= −⋅−⋅+⋅−−== = ⋅+−⋅−−=
6882,0 5441,3 5/) 3476,32) 6273,0(22(3476,35 7348,165/)) 6882,0(2 0574,12 16(6273,0 10 2726,6 10/)) 6882,0(2 3477,32 0574,168(0574,18/ 4586,88/) 3476,32) 6273,0(62(
)9(
4)9(
3)9(
2)9(
1
xxxx

()
()
()
()


−=+−⋅+−=−⋅+==−⋅+=−⋅+=−=+−⋅+−=−⋅+==−⋅+=−⋅+=
6882,0 ) 6882,0 6882,0(15,1 6882,0477,3) 3478,3 3476,3(15,1 3478,36272,0 ) 6274,0 6273,0(15,1 6274,00574,1) 0576,1 0574,1(15,1 0576,1
)8(
4)9(
4)8(
4)9(
4)8(
3)9(
3)8(
3)9(
3)8(
2)9(
2)8(
2)9(
2)8(
1)9(
1)8(
1)9(
1
x x x xx x x xx x x xx x x x
ωωωω

80 Lucrarea 8

8. 3. Desfășurarea lucrării

1. Se studiază textul lucrării și metodele numerice iterative de determinare a soluției
unui sistem de ecuații liniare.
2. Se vor studia funcțiile Matlab pentru soluționarea numerică a sistemel or de
ecuații liniare prezentate în Anexa 1.
3. Se testează programele de calcul met_jacobi, met_seidelgaus și
met_seidelgauss_modif . construite în Matlab prezentate în Anexa 2, folosind
exempl ele numeric e prezentat e în paragraful 2 .
4. Se soluționează următoare le aplicații cu ajutorul metodelor Jacobi, Seidel -Gauss și
Seidel -Gauss modificată.


=+−=−
84 5
2 12 1
xxxx


=++−=++=+−
2 4 21 2 28 3 5
3 2 13 2 13 2 1
x x xx x xx xx

Rezolvarea se va face manual, iar rezultatele vor fi comparate cu cele obținute
prin utilizarea funcțiilor implementat e în Matlab met_jacobi, met_seidelgaus și
met_seidelgauss_modif .
5. Pentru aplicațiile de la punctul 4 se vor compara și analiza rezultatele obținute și
condițiile în care au rezultat.

Similar Posts