Sunteți pe pagina 1din 78

Sisteme de ecuaţii liniare 13

1. Sisteme de ecuaţii liniare

Reamintim că un sistem de n ecuaţii algebrice liniare cu n necunoscute este


de forma:
⎧a11x1 + a12 x2 + K + a1n xn = b1

⎪a21x1 + a22 x2 + K + a2n xn = b2
⎨ (1)
⎪ ....................
⎪⎩an1 x1 + an 2 x2 + K + ann xn = bn
Dacă notăm cu A matricea coeficienţilor, cu x vectorul coloană format cu
necunoscutele sistemului şi cu b coloana termenilor liberi, sistemul (1) se scrie
sub formă matriceală :
Ax=b, (2)
unde:
⎛ a11 a12 K a1n ⎞ ⎛ x1 ⎞ ⎛ b1 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ a21 a22 L a2n ⎟ ⎜ x2 ⎟ ⎜b ⎟
A=⎜ ⎟ , x=⎜ ⎟, b=⎜ 2⎟
M M M M M
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜a ⎟ ⎜ ⎟ ⎜ ⎟
⎝ n1 an 2 K ann ⎠ ⎝ xn ⎠ ⎝ bn ⎠
Metodele numerice de rezolvare a sistemelor algebrice de ecuaţii liniare
sunt de două tipuri: metode directe şi metode indirecte (sau iterative).
Metodele directe constau în transformarea sistemului (1) într–un sistem
triunghiular echivalent, care se rezolvă uşor. Cele mai cunoscute metode directe
sunt: metoda Gauss, metoda Cholesky (utilizată pentru sistemele în care matricea A
este simetrică şi pozitiv definită) şi metoda Householder.
Metodele directe permit determinarea soluţiei exacte a sistemului în cazul
ideal, când nu avem erori de rotunjire. Numărul operaţiilor aritmetice efectuate este
de ordinul n3. Pentru sisteme cu un număr de ecuaţii mai mare de 100, metodele
directe devin inutilizabile datorită acumulării erorilor de rotunjire care alterează
soluţia.
Metodele indirecte (sau iterative) constau în construcţia unui şir {x(k)} de
vectori n–dimensionali, care converge la soluţia exactă a sistemului. Se alege ca
14 Bazele Analizei Numerice

soluţie aproximativă a sistemului un termen x(s) al şirului, al cărui ordin depinde


de precizia impusă.
O iteraţie presupune efectuarea unui număr de operaţii aritmetice de
ordinul n2. Metodele iterative sunt utilizate la rezolvarea sistemelor mari de
ecuaţii. Cele mai cunoscute metode iterative sunt: Jacobi, Gauss–Seidel, metodele
de relaxare.

§1.1. Metoda Gauss. Factorizarea LU

Fie
⎛ 0 ⎞ ⎛0⎞
⎜ ⎟ ⎜ ⎟
⎜ M ⎟ ⎜ M ⎟
⎜ 0 ⎟ ⎜ ⎟
mr = ⎜ ⎟ şi e = ⎜ 1 ⎟
r
⎜ mr +1,r ⎟ ⎜0⎟
⎜ ⎟ ⎜ ⎟
⎜ M ⎟ ⎜ M ⎟
⎜ mn , r ⎟ ⎜0⎟
⎝ ⎠ ⎝ ⎠
(elementul 1 din er se află pe linia r).
O matrice de forma Mr = In – mr⋅er T, unde erT= (0, ... , 1, ... ,0) , se numeşte
matrice Frobenius. O astfel de matrice are următoarea structură:
⎛1 0 0 L 0⎞
⎜ ⎟
⎜ O ⎟
⎜0 1 0 L ⎟
Mr = ⎜ ⎟
⎜ 0 L − mr +1,r 1 L 0 ⎟
⎜ ⎟
⎜ M ⎟
⎜0 L − m 0 L 1 ⎟
⎝ nr ⎠
De exemplu, dacă n = 4 şi r = 2 , avem:
⎛ 1 0 0 0⎞ ⎛ 0 ⎞ ⎛ 1 0 0 0⎞ ⎛ 0 0 0 0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 0 1 0 0⎟ ⎜ 0 ⎟ ⎜ 0 1 0 0⎟ ⎜ 0 0 0 0⎟
M2 = ⎜ − (0 1 0 0) = ⎜ − =
0 0 1 0 ⎟ ⎜ m32 ⎟ 0 0 1 0 ⎟ ⎜ 0 m32 0 0 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜0 0 0 1⎟ ⎜ m ⎟ ⎜0 0 0 1⎟ ⎜0 m ⎟
⎝ ⎠ ⎝ 42 ⎠ ⎝ ⎠ ⎝ 42 0 0 ⎠
⎛1 0 0 0⎞
⎜ ⎟
⎜0 1 0 0⎟
=⎜
0 − m32 1 0 ⎟
⎜ ⎟
⎜0 − m 0 1 ⎟
⎝ 42 ⎠
Sisteme de ecuaţii liniare 15

Propoziţia 1. Orice matrice Frobenius Mr este inversabilă şi inversa sa este:


Mr–1 = In + mr ⋅ erT.
Demonstraţie.
(In – mr ⋅ erT)( In + mr ⋅ erT)= In – mr ⋅ erT + mr ⋅ erT – mr (erT mr ) erT.
Deoarece erT ⋅ mr = 0 , rezultă:
Mr (In + mr ⋅ erT) = In, şi deci Mr–1 = In + mr ⋅ erT. ‰

Teorema 1. Fie A o matrice pătrată de ordinul n care satisface condiţia:


⎛ a11 K a1r ⎞
⎜ ⎟
(*) det⎜ M M ⎟ ≠ 0 pentru orice r = 1, n − 1 .
⎜a ⎟
⎝ r1 K arr ⎠
Atunci există o matrice inferior triunghiulară M∈M n(R) astfel încât matricea U
= MA este superior triunghiulară.
Demonstraţie. Deoarece a11≠0 , putem considera matricea Frobenius
⎛ 1 0 K 0⎞
⎜ a ⎟
⎜ − 21 1 0 K 0 ⎟
⎜ a ⎟
M 1 = ⎜ 11 .
M M⎟
⎜ a ⎟
⎜ − n1 0 K 1 ⎟⎟
⎜ a
⎝ 11 ⎠
Dacă notăm A1 = A şi A2 =M1A1 , atunci avem
⎛ a ( 2 ) a ( 2) K a ( 2) ⎞
⎜ 11 12 1n ⎟
⎜ 0 ( 2)
a22 K a2( 2n) ⎟
A2 = ⎜ ⎟,
⎜ M M M ⎟
⎜ 0 ( 2) ⎟
an( 22) K ann
⎝ ⎠
unde, notând cu aij(1) = aij, pentru i, j = 1, n , avem: a1( 2j ) = a1(1j) pentru

ai(11) a1(1j)
j = 1, n ; aij( 2) = aij(1) − , pentru orice i, j = 2, n .
(1)
a11
Observăm că

( 2)
a21a12 1 a11 a12
a22 = a22 − = ≠ 0.
a11 a11 a21 a22
Dacă notăm
16 Bazele Analizei Numerice

⎛1 0 0 K 0⎞
⎜ ⎟
⎜0 1 0 K 0⎟
⎜ ( 2) ⎟
a32
⎜ 0 − ( 2) 1 K 0⎟
M2 = ⎜ a22 ⎟,
⎜M M M M⎟
⎜ ⎟
⎜ an( 22) ⎟
⎜⎜ 0 − 0 K 1⎟
( 2)
a22 ⎟
⎝ ⎠
atunci
⎛ a (3) (3)
a12 (3)
a13 K a1(n3) ⎞⎟
⎜ 11
⎜ 0 (3)
a22 (3)
a23 K a2(3n) ⎟
⎜ ⎟
A3 = M 2 A2 = ⎜ 0 0 (3)
a33 K a3(3n) ⎟ ,
⎜ ⎟
⎜ M M M M ⎟
⎜ 0 0 0 K ann (3) ⎟
⎝ ⎠
ai(22) a2( 2j)
unde aij(3) = aij( 2) pentru i=1, 2, j = 1, n şi ai(3j ) = ai( 2j ) − , i, j = 3, n .
( 2)
a22
Un calcul simplu ne arată că
a11 a12 a13
(3) 1
a33 = a a22 a23 ≠ 0 .
(1) ( 2) 21
a11 a22
a31 a32 a33
(r )
În general, arr ≠ 0 şi se poate considera matricea Frobenius:
⎛1 0 0 L 0⎞
⎜ ⎟
⎜ O ⎟
⎜0 1 0 L ⎟
⎜ (r )

⎜ ar +1,r ⎟
Mr = ⎜0 L − 1 L 0⎟ .
(r )
⎜ arr ⎟
⎜ M ⎟
⎜ (r ) ⎟
⎜ 0 L − anr 0 L 1⎟
⎜ (r )
arr ⎟
⎝ ⎠
Dacă notăm cu Ar+1=MrAr , atunci
Sisteme de ecuaţii liniare 17

⎛ a(r +1) a(r +1) K a1(rr +1) K a1(nr +1) ⎞⎟


⎜ 11 12
⎜ 0 (r +1)
a22 K a2(rr+1) K a2(rn+1) ⎟
⎜ ⎟
⎜ M M M M ⎟

Ar +1 = ⎜ 0 0 K ar(rr+1) K ar(rn+1) ⎟⎟ ,
⎜ 0 0 K 0 ar(r++11, r)+1 K ar(r++1,1n) ⎟
⎜ ⎟
⎜ M M M M . M ⎟
⎜⎜ 0 0 K 0 an(r, +r1+)1 K an(rn+1) ⎟⎟
⎝ ⎠
ai( rr ) ar( rj)
unde ai(rj +1) = ai( rj ) , pentru i=1,r , j = 1, n , ai j( r + 1)
= ai( rj ) − ,
ar( rr)
i, j = r + 1, n .
În final se obţine matricea superior triunghiulară
⎛ a ( n) a ( n) K a ( n) ⎞
⎜ 11 12 1n ⎟
⎜ 0 a ( n) K a ( n) ⎟
U = An = M n−1...M 2 M1 A = ⎜ 22 2n ⎟ .
⎜ M .M M ⎟
⎜ 0 0 K ann ⎠( n) ⎟

Notăm cu M=Mn–1 Mn–2 ... M2 M1 şi demonstraţia teoremei este completă. ‰

Exemplu.
⎛ ⎞
⎛ ⎞
⎛ 5 2 1⎞ ⎜ 1 0 0⎟ ⎜ 5 2 1⎟
⎜ ⎟
A1 = A = ⎜ 5 − 6 2 ⎟ , M1 = ⎜⎜ − 1 1 0 ⎟⎟ ,
A2 = ⎜⎜ 0 − 8 1⎟⎟ ,
⎜− 4 4 18 9
⎝ 2 1⎟⎠ ⎜ 0 1⎟ ⎜0 ⎟
⎝ 5 ⎠
⎝ 5 5⎠
⎛ ⎞ ⎛ ⎞ ⎛ ⎞
⎜1 0 0⎟ ⎜5 2 1⎟ ⎜ 1 0 0⎟
M 2 = ⎜ 0 1 0 ⎟ , U = A3 = ⎜ 0 − 8 1⎟ , M = M 2 M 1 = ⎜ − 1 1 0 ⎟ .
⎜ 9 ⎟ ⎜ 9⎟ ⎜ 7 9 ⎟
⎜0 1⎟ ⎜0 0 ⎟ ⎜ 1⎟
⎝ 20 ⎠ ⎝ 4⎠ ⎝ 20 20 ⎠
Considerăm sistemul
⎧ 5 x1 + 2 x2 + x3 = 12

⎨5 x1 − 6 x2 + 2 x3 = −1 ,
⎪ − 4x + 2x + x = 3
⎩ 1 2 3
18 Bazele Analizei Numerice

a cărui soluţie este x1=1, x2=2, x3=3. Sub formă matriceală sistemul se scrie:
⎛ 12 ⎞
⎜ ⎟
Ax=b , unde b = ⎜ − 1⎟ . Acest sistem este echivalent cu următorul sistem:
⎜ 3⎟
⎝ ⎠
(M2M1A)x=(M2M1)b . Efectuând calculele obţinem

⎪ 5 x1 + 2 x2 + x3 = 12

⎨ − 8 x2 + x3 = −13 .
⎪ 9 27
⎪ x3 =
⎩ 4 4

Numărul operaţiilor pentru determinarea matricei U şi a vectorului Mb


a (r )
Pentru o linie fixată i se calculează − ir , apoi se fac înmulţirile cu
(r )
arr
arj( r ) , r + 1 ≤ j ≤ n , şi se adună aij( r ) , r + 1 ≤ j ≤ n . La fel şi cu bi( r +1) . Sunt
2(n–r)+3 operaţii elementare pentru fiecare linie i, r + 1 ≤ i ≤ n , şi pentru fiecare
etapă r vor fi (n − r )[2(n − r ) + 3] operaţii. În total vor fi
∑ [2(n − r )2 + 3(n − r )] = 3 n3 + 2 n 2 − 6 n
n
2 1 7
operaţii elementare. Dacă adăugăm şi
r =1
cele n2 operaţii pentru rezolvarea sistemului triunghiular, rezultă că numărul de
2 3 7
operaţii pentru rezolvarea sistemului Ax=b este n3 + n 2 − n .
3 2 6

În continuare notăm cu Lr = M r−1 . Din Propoziţia 1 rezultă că Lr este de


forma:
⎛1 K 0 K 0⎞
⎜ ⎟
⎜M O M M⎟
⎜0 1 K 0⎟
⎜ ⎟
⎜ ar( r+)1,r ⎟
Lr = ⎜ 0 L 0⎟ .
(r )
⎜ arr ⎟
⎜M M M⎟
⎜ (r ) ⎟
⎜ 0 K anr 0 K 1⎟
⎜ arr (r ) ⎟
⎝ ⎠
Dacă notăm cu L=L1L2...Ln–1, atunci L este o matrice inferior triunghiulară de
tipul următor
Sisteme de ecuaţii liniare 19

⎛ 1 0 0 K 0⎞
⎜ ⎟
⎜l 1 .0 K 0 ⎟
L = ⎜ 21 .
M M M M⎟
⎜ ⎟
⎜l l n3 K 1 ⎟⎠
⎝ n1 l n 2
Deoarece A = M 1−1M 2−1...M n−−11U , rezultă că:
A=LU (3)
Aşadar, orice matrice pătratică ce îndeplineşte condiţia (*) din Teorema 1 admite o
descompunere unică de forma (3), unde L este inferior triunghiulară având
elementele de pe diagonala principală egale cu 1 şi U este superior triunghiulară.
Descompunerea (3) este cunoscută sub numele de factorizarea LU.

Algoritmul pentru factorizarea LU


{ Determinarea matricelor U şi L cu păstrarea matricei A }
Pentru i:=1,n execută
Pentru j:=1,n execută
uij:=aij ;
dacă i=j atunci l i i:=1 altfel l i j:=0 ;
sfârşit pentru j ;
sfârşit pentru i ;
Pentru r:=1,n–1 execută
Pentru i:=r+1,n execută
Pentru j:=r+1,n execută
uir u rj
uij := uij − ;
u rr
sfârşit pentru j ;
u
lir := ir ;
urr
sfârşit pentru i ;
sfârşit pentru r ;
Pentru i:=2,n execută
Pentru j:=1,i–1 execută
uij:=0 ;
sfârşit pentru j ;
sfârşit pentru i .

Algoritmul se află programat în MATLAB şi poate fi apelat cu secvenţa:


[L,U ] = lu ( A) { se afişează cele două matrice }
În exemplul precedent avem:
20 Bazele Analizei Numerice

⎛ ⎞ ⎛ ⎞
⎜ 1 0 0⎟ ⎜ 1 0 0⎟
L1 = ⎜ 1 1 0⎟ , L2 = ⎜ 0 1 0⎟ ,
⎜ 4 ⎟ ⎜ 9 ⎟
⎜− 0 1⎟ ⎜0 − 1⎟
⎝ 5 ⎠ ⎝ 20 ⎠
⎛ ⎞⎛ ⎞
⎜1 0 0⎟ ⎜5 2 1 ⎟ ⎛ 5 2 1⎞
⎜ ⎟
A = LU = ⎜ 1 1 0⎟ ⋅ ⎜0 −8 1 ⎟ = ⎜ 5 − 6 2⎟
⎜ 4 9 ⎟ ⎜ ⎟
9 ⎜
⎜− − 1⎟ ⎜0 0 ⎟ ⎝ − 4 2 1⎟⎠
⎝ 5 20 ⎠ ⎝ 4⎠

(r )
Observaţia 1. Dacă pivotul este “foarte mic” , adică arr << 1 , atunci
împărţirile la acest pivot produc erori de rotunjire foarte mari, care alterează
soluţia. În acest caz se recomandă schimbarea pivotului. Se poate alege un nou
pivot
π r = a ir( r ) = max {a (r )
ij ; r ≤ j≤n }
sau π r = a (jrr ) = max { a (r )
kl ; r ≤ k, l ≤ n }
Aceasta presupune schimbarea între ele a două linii şi eventual şi a două coloane.

Algoritmul Gauss pentru rezolvarea sistemelor de ecuaţii liniare


Pentru r:=1,n–1 execută
Pentru i:=r+1,n execută
Pentru j:=r+1,n execută
găseşte pivotul conform cu (β) ;
schimbă linia i cu linia pivotului şi coloana j cu coloana
pivotului dacă este cazul ;
sfârşit pentru j
sfârşit pentru i
Pentru i:=r+1,n execută
a b
bi = bi − ir i
arr
Pentru j:=r+1,n execută
air arj
aij = aij − ; ;
arr
sfârşit pentru j ;
sfârşit pentru i ;
sfârşit pentru r ;
b
xn := n ;
ann
Sisteme de ecuaţii liniare 21

Pentru i:=n–1,1,–1 execută


s:=0 ;
Pentru j:=i+1,n execută
s:=s+aij⋅xj ;
sfârşit pentru j ;
(b − s )
xi := i ;
aii
sfârşit pentru i .

§1.2. Matrice simetrice pozitiv definite

Reamintim că o matrice simetrică se numeşte pozitiv definită, dacă forma


pătratică asociată este pozitiv definită. Mai precis, dacă A este o matrice simetrică,
atunci A se numeşte pozitiv definită dacă
ϕ(x)=xTAx > 0 ,
pentru orice x≠0 , unde x = (x1 , x 2 ,..., x n )T .
Din Algebra Liniară, se ştie că o matrice simetrică A, este pozitiv definită dacă şi
numai dacă ∆r >0 pentru orice r = 1, n , unde
⎛ a11 K a1r ⎞
⎜ ⎟
∆ r = det⎜ M M ⎟.
⎜a ⎟
⎝ r1 K arr ⎠
În practică aceste condiţii sunt greu de verificat pentru matrice de dimensiuni mari.
De aceea, în continuare vom prezenta unele condiţii necesare, respectiv şi
suficiente, pentru ca o matrice simetrică să fie pozitiv definită.

Propoziţia 1. Dacă A este o matrice simetrică pozitiv definită, atunci:


(a) aii > 0 pentru orice i = 1, n ,
(b) aiiajj>aij2 pentru orice i, j = 1, n .
Demonstraţie.
⎛ a11x1 + ... + a1n xn ⎞
⎜ ⎟
ϕ (x ) = x Ax = (x1 ,..., xn ) ⋅ ⎜
T
M ⎟ = (a11x1 + a12 x2 + ... + a1n xn )x1 +
⎜ a x + ... + a x ⎟
⎝ n1 1 nn n ⎠
+ (a21x1 + a22 x2 + ... + a2n xn )x2 + ... + (an1x1 + an 2 x2 + ... + ann xn )xn
Ţinând seama că aij = aji , în continuare avem
22 Bazele Analizei Numerice

n n
ϕ (x ) = ∑ ∑ aij xi x j = a11 x12 + 2a12 x1 x2 +...+ 2a1n x1 xn +
i =1 j =1
+ a22 x22 +....+ 2a2n x2 xn +
M
2
+ann xn
⎛ 0⎞
⎜ ⎟
⎜M⎟
În particular, pentru x = ei = ⎜ 1 ⎟ avem ϕ(ei) = aii . Cum ϕ este pozitiv definită şi
⎜ ⎟
⎜M⎟
⎜ ⎟
⎝ 0⎠
ei ≠ 0 , rezultă că aii = ϕ(ei) > 0 , adică (a).
Pentru un număr real oarecare λ avem
ϕ(λei+ej)=aiiλ2+2aijλ+ajj > 0 . (1)
Pentru ca inegalitatea (1) să fie adevărată pentru orice λ∈R, trebuie ca
( )
∆ = 4 aij2 − aii a jj < 0 .
Aşadar am demonstrat că aij2 < aii a jj pentru orice i, j = 1, n , adică (b). ‰

Observaţia 2. Condiţiile care apar în Propoziţia 1 sunt doar necesare nu şi


suficiente.

Exemplu.
⎛ 3 2 − 2⎞
⎜ ⎟
Matricea A = ⎜ 2 3 2 ⎟ satisface condiţiile din Propoziţia 1, dar nu este
⎜− 2 2 3 ⎟
⎝ ⎠
pozitiv definită.
Într–adevăr,
( )
ϕ (x ) = 3 x12 + x22 + x32 + 4(x1 x2 − x1 x3 + x2 x3 ) .
⎛ 1⎞
⎜ ⎟
Dacă x = ⎜ − 1⎟ , atunci ϕ(x)=9–12=–3<0, deci ϕ nu este pozitiv definită.
⎜ 1⎟
⎝ ⎠

Definiţia 1. Spunem că matricea A este tare diagonal dominantă dacă elementele


sale satisfac inegalităţile:
n
aii > ∑ aij , i = 1, n . (d)
j =1
j ≠i
Sisteme de ecuaţii liniare 23

Dacă inegalităţile (d) devin egalităţi pentru anumiţi indici, dar nu pentru toţi,
matricea se numeşte slab diagonal dominantă.

Teorema 1. Fie A o matrice simetrică cu următoarele proprietăţi:


(i) A este tare diagonal dominantă,
(ii) aii > 0 pentru i = 1, n .
Atunci A este pozitiv definită.
Demonstraţie.
Din condiţia (i) rezultă că dacă x≠0 , atunci:
n n n n n n n
ϕ (x ) = ∑ aii xi2 + ∑ ∑ aij xi x j >∑ ∑ aij xi2 −∑ ∑ aij ⋅ xi ⋅ x j =
i =1 i =1 j =1 i =1 j =1 i =1 j =1
j ≠i j ≠i j ≠i

( )
n n
= ∑ ∑ aij ⋅ xi ⋅ xi − x j
i =1 j =1
j ≠i
Deoarece aij=aji avem şi inegalitatea:

( )
n n
ϕ (x ) > ∑ ∑ aij ⋅ x j x j − xi .
i =1 j =1
j ≠i
Adunând cele două inegalităţi rezultă
2
( )
n n
2ϕ ( x ) > ∑ ∑ aij ⋅ xi − x j ≥ 0.
i =1 j =1
j ≠i
Aşadar, ϕ(x) > 0 pentru orice x≠0 , deci ϕ este pozitiv definită. ‰

Definiţia 2. Fie M={1,2,...,n}. O matrice A se numeşte reductibilă dacă există


două submulţimi S, T ⊂ M cu proprietăţile:
(i) S≠Φ , T≠Φ
(ii) S∩T=Φ
(iii) S∪T=M
(iv) aij = 0 pentru orice i∈S şi j∈T .
Matricea A se numeşte ireductibilă dacă oricare ar fi submulţimile S şi T ale lui
M cu proprietăţile (i)–(iii), există i0∈S şi j0∈T astfel încât ai0 j0 ≠ 0 .

Cel mai simplu exemplu de matrice reductibilă este matricea diagonală.


Teorema 2. Fie A o matrice simetrică având următoarele proprietăţi:
(i) A este slab diagonal dominantă,
(ii) A este ireductibilă,
(iii) aii > 0 pentru orice i = 1, n .
24 Bazele Analizei Numerice

Atunci A este pozitiv definită.


Demonstraţie. Procedând ca în demonstraţia Teoremei 1, rezultă:
2
ϕ ( x) ≥
1 n n
(
∑ ∑ aij ⋅ xi − x j
2 i =1 j =1
) ≥ 0.
j ≠i
Vom arăta că situaţia ϕ(x)=0 pentru x≠0 nu poate avea loc. Într–adevăr, ϕ(x) se
anulează în următoarele cazuri:
1) aij = 0 pentru orice i≠j . Atunci matricea A are forma diagonală şi este
reductibilă.
2) xi = x j = α ≠ 0 pentru orice i şi j.
n n n n n
ϕ (x ) = ∑ aiiα 2 + ∑ ∑ aij xi x j ≥ ∑ (aii − ∑ aij ) ⋅ α 2 ≥ 0 .
i =1 i =1 j =1 i =1 j =1
j ≠i j ≠i
n
Cum există cel puţin un indice i0 astfel încât ∑ ai0 j < ai0i0 , rezultă
j =1
j ≠i0
ϕ(x) > 0 pentru x≠0.
3) aij=0 pentru orice pereche de indici (i,j) pentru care xi ≠ x j şi

aij≠0 dacă xi = x j ≠ 0 .
{
Fie M={1,2, ... , n} şi S = i, j ∈ M ; xi = x j ≠ 0 . }
Dacă S=M, atunci suntem în cazul 2).
Dacă S= Φ , atunci xi ≠ x j pentru orice i şi j şi evident ϕ(x) > 0 pentru
x≠0.
Aşadar, putem presupune că Φ≠S⊂M (incluziune strictă). Dacă notăm cu T=M \
S atunci S şi T satisfac condiţiile (i)–(iv) din Definiţia 2, deci A este reductibilă.
‰
Exemplu.
Fie
⎛ 2 −1 0 0⎞
⎜ ⎟
⎜ −1 2 −1 0⎟
A=⎜ .
0 − 1 2 − 1⎟
⎜ ⎟
⎜ 0 0 −1 2⎟
⎝ ⎠
Matricea A este simetrică, slab diagonal dominantă, ireductibilă şi are elementele
de pe diagonala principală strict pozitive. Din Teorema 2 rezultă că A este
pozitiv definită.
Sisteme de ecuaţii liniare 25

Oservaţia 2. Teorema 2 este utilă la stabilirea faptului că anumite matrice care


apar în rezolvarea numerică a ecuaţiilor cu derivate parţiale de tip eliptic sunt
pozitiv definite.

§1.3. Metoda Cholesky

Fie A o matrice simetrică, pozitiv definită şi


n n
ϕ (x ) = xT Ax = ∑ ∑ aij xi x j
i =1 j =1
forma pătratică asociată. Deoarece a11 > 0 avem:
2
n n ⎛ n a ⎞
ϕ (x ) = a11x12 + 2a12 x1x2 +...+ 2a1n x1xn + ∑ ∑ aij xi x j = ⎜ a11 x1 + ∑ xj ⎟ +
1j
⎜ ⎟
i =2 j =2 ⎝ j =2 a11 ⎠
n n a1i a1 j
+ ∑ ∑ aij(1) xi x j , unde aij(1) = aij − , i, j = 2, n
i =2 j =2 a11
Dacă notăm cu
n n
ϕ1 (x ) = ∑ ∑ aij(1) xi x j ,
i =2 j =2
atunci ϕ1 este la rândul său o formă pătratică pozitiv definită.
⎛ z2 ⎞
⎜ ⎟
Într–adevăr, să presupunem prin absurd că există z = ⎜ M ⎟ ≠ 0 astfel încât
⎜z ⎟
⎝ n⎠
ϕ1(z)≤ 0.
⎛ z1 ⎞
n
⎜ ⎟
a1 j ⎜z ⎟
Fie z1 = − ∑ z j şi z = ⎜ 2 ⎟ .
j= 2 a11
.
⎜ ⎟
⎜z ⎟
⎝ n⎠
În continuare avem
2
⎛ n a ⎞
ϕ ( z ) = ⎜ a11 z1 + ∑ z j ⎟ + ϕ1 (z ) = 0 + ϕ1 (z ) ≤ 0 ,
1j
⎜ ⎟
⎝ j = 2 a11 ⎠
ceea ce contrazice faptul că ϕ este pozitiv definită.
Aşadar, am demonstrat că ϕ1 este pozitiv definită. În particular, rezultă că
(1)
a22 > 0 . Mai departe procedăm cu ϕ1 aşa cum am procedat cu ϕ şi obţinem
26 Bazele Analizei Numerice

2
⎛ a2( 1j) ⎞
⎜ n ⎟
ϕ1 (x ) = ⎜ a22
(1)
x2 + ∑ x j ⎟ + ϕ 2 (x ) ,
⎜⎜ j =3
(1)
a22 ⎟⎟
⎝ ⎠
unde
n n
ϕ 2 (x ) = ∑ ∑ aij( 2) xi x j
i =3 j = 3
este pozitiv definită. În final ϕ(x) se reprezintă ca o sumă de pătrate. Mai precis
ϕ(x) admite următoarea scriere:
2
n ⎛ n aij(i −1) ⎞
⎜ (i −1) ⎟
ϕ (x ) = ∑ ⎜ aii xi + ∑ xj ⎟ ,
(i −1)
i =1 ⎜ j =i +1 aii ⎟
⎝ ⎠
unde
a (pip −1) a (pjp −1)
aij(0) = aij şi aij( p ) = aij( p −1) − , p = 1, n − 1 .
a (ppp −1)
Introducem notaţiile:
rii = aii(i −1) , i = 1, n

aij(i −1)
rij = , i< j
rii (1)
rij = 0, j<i

aij( p ) = aij( p −1) − rpi rpj , p = 1, n − 1, i, j = p + 1, n.


Cu aceste notaţii avem
2
n ⎛ n ⎞
ϕ (x ) = ∑ ⎜ ∑ rij x j ⎟ = (r11x1 + r12 x2 + ... + r1n xn )2 + (r22 x2 + ... + r2n xn )2 +
⎜ ⎟
i =1 ⎝ j =i ⎠
+ ... + (rnn xn )2
Dacă notăm cu R următoarea matrice superior triunghiulară
⎛ r11 r12 K r1n ⎞
⎜ ⎟
⎜ 0 r22 K r2 n ⎟
R=⎜ ,
M M M ⎟
⎜ ⎟
⎜0 0 K rnn ⎟⎠

atunci ϕ(x)=(xTRT)(Rx)=xT(RTR)x . Pe de altă parte, ϕ(x)=xTAx. Se obţine astfel
următoarea descompunere a matricei A
A=RTR (2)
Sisteme de ecuaţii liniare 27

unde R este o matrice superior triunghiulară.


Descompunerea (2) poartă numele de factorizarea Cholesky a matricei A şi are loc
pentru matrice simetrice pozitiv definite.

Numărul de operaţii pentru determinarea matricei R


Pentru a calcula elementele liniei a i–a a matricei R sunt necesare (n–i)(2i–1)+2i–
2 operaţii elementare şi o extragere de rădăcină pătrată. Pentru toate liniile sunt
necesare
n
n 3 n 2 5n
∑ [ (n − i)(2i − 1) + 2i − 2 ] = 3 + 2 − 6
i =1
operaţii elementare plus n extrageri de rădăcină pătrată.

Exemplu. Să se determine descompunerea Cholesky a matricei


⎛ 3 2 2⎞
⎜ ⎟
A = ⎜ 2 3 2⎟
⎜ 2 2 3⎟
⎝ ⎠
2 2 (1) 2 5 5
r11 = 3 , r12 = , r13 = , a22 = a22 − r12 = , r22 = ,
3 3 3 3
(1)
(1) 2 a23 2 (1) 2 5
a23 = a23 − r12 r13 = , r23 = = , a33 = a33 − r13 = ,
3 r22 15 3
( 2) (1) 2 7 7
a33 = a33 − r23 = , r33 =
5 5
⎛ 2 2 ⎞
⎜ 3 ⎟
⎜ 3 3 ⎟
⎜ 5 2 ⎟
R=⎜ 0 ⎟.
⎜ 3 15 ⎟
⎜ 7 ⎟
⎜ 0 0 ⎟
⎝ 5 ⎠
Se verifică imediat că A=RTR .
Rezolvarea sistemului Ax=b cu metoda Cholesky, în cazul când matricea
A este simetrică şi pozitiv definită, revine la rezolvarea a două sisteme
triunghiulare şi anume
⎧⎪ RT y = b

⎪⎩ Rx = y

Algoritmul Cholesky pentru rezolvarea sistemelor de ecuaţii liniare


Pentru p:=1,n–1 execută
28 Bazele Analizei Numerice

rpp: = a pp ;
Pentru k:=p+1,n–1 execută
a pk
rpk := ;
rpp
sfârşit pentru k ;
Pentru i:=p+1,n execută
Pentru j:=i,n execută
aij:=aij–rpirpj ;
sfârşit pentru j ;
sfârşit pentru i ;
sfârşit pentru p ;
{ Rezolvarea sistemului RTy=b }
b
y1 = 1 ;
r11
Pentru i:=2,n execută
s:=0 ;
Pentru j:=1,i execută
s:=s+rij⋅yj ;
sfârşit pentru j ;
b −s
yi := i ;
rii
sfârşit pentru i ;
{ Rezolvarea sistemului Rx=y }
y
xn = n ;
rnn
Pentru i:=n–1,1 execută
s:=0 ;
Pentru j:=i+1,n execută
s:=s+rij⋅xj ;
sfârşit pentru j ;
y −s
xi := i ;
rii
sfârşit pentru i .

Algoritmul se află programat şi în MATLAB şi se apelează cu secvenţa:


R=chol(A);
x=R\R'\b { pentru afişarea soluţiei }
Sisteme de ecuaţii liniare 29

§1.4. Metoda Householder. Factorizarea QR

O matrice Householder este o matrice de forma H = In – 2hhT, unde


h 2 = hi2 + ... + hn2 = 1 . Se observă imediat că o matrice
hT=(0,..., 0, hi, ..., hn) şi
Householder este simetrică şi are următoarea structură:
⎛1 0 ⎞
⎜ ⎟
⎜ O ⎟
⎜ 1 ⎟
H =⎜ ⎟
⎜0 1 − 2hi2 − 2hi hi +1 K − 2hi hn ⎟
⎜ ⎟
⎜ M M M ⎟
⎜ − 2hn hi − 2hn hi +1 K 1 − 2hn2 ⎟⎠

Mai mult, constatăm că H este ortogonală. Într–adevăr,
H2 = (In – 2hhT)(In – 2hhT) = In – 2hhT – 2hhT + 4h(hTh)hT.
Cum h h = 1, rezultă H2 = In. Aşadar, avem H–1 = H = HT.
T

Un calcul simplu ne arată că (hhT)x = (hTx)h , pentru orice x = (x1 , x 2 ,..., x n )T .


În continuare ne punem următoarea problemă: dat fiind un vector coloană x ≠ 0,
se poate determina o matrice Householder H , astfel încât Hx să fie colinear cu
e1 ? ( unde e1T = (1,0,...,0) ).
Cu alte cuvinte, se poate determina un vector coloană h, cu h 2 = 1 şi un număr
real σ astfel încât Hx=x–2hhTx=σ⋅e1 ?
Ţinând seama de observaţia de mai sus, aceasta revine la x–2(hTx)h=σ⋅e1, de unde
rezultă x– σ⋅e1=2(hTx)h. Aşadar, h trebuie să fie colinear cu x–σ⋅e1. Cum h 2 = 1
rezultă
x − σ ⋅ e1
h= . (1)
x − σ ⋅ e1 2
Pe de altă parte, H fiind ortogonală avem
x 2 = Hx 2 = σ ⋅ e1 = σ .
Alegem σ = –sgn(x1) x 2 şi facem convenţia sgn(x1) = 1 dacă x1 = 0.
În continuare avem
30 Bazele Analizei Numerice

⎜ ⎟ ⎜
( )
⎛ x1 + sgn( x1 ) ⋅ x 2 ⎞ ⎛ x1 + x 2 ⋅ sgn( x1 ) ⎞

⎜ x2 ⎟ ⎜ x2 ⎟
x − σ ⋅ e1 = ⎜ ⎟ =⎜ ⎟ şi
⎜ M ⎟ ⎜ M ⎟
⎜ xn ⎟ ⎜ xn ⎟
⎝ ⎠ ⎝ ⎠
2 2
x − σ e1 2 = 2 x 2 + 2 x1 ⋅ x 2 = 2 x 2 x 2 + x1 ( ) .
Înlocuind în (1) obţinem
(
⎛ x1 + x 2 sgn x1 ⎞
⎜ ⎟
)
1 ⎜ x2 ⎟
h= ⎟ . (2)
(
2 x 2 x 2 + x1 ⎜

) M ⎟
⎜ x ⎟
⎝ n ⎠
Se obţine astfel următorul algoritm pentru determinarea lui h şi deci a matricei H:
H = In – β u uT
β= x ( 2 ( x 2 + x1 ))−1
(3)
u = (( x1 + x 2 )sgn( x1 ), x2 , ..., xn )
T

sgn(x1) = 1 dacă x1 = 0.

Teorema 1. Pentru orice matrice A∈M n(R) nesingulară există o matrice


ortogonală H astfel încât matricea R = HA este superior triunghiulară.
Demonstraţie.
⎛ a11 ⎞
⎜ ⎟
⎜ a21 ⎟
Fie a1 = ⎜ , prima coloană a matricei A. Din cele arătate mai înainte rezultă
M ⎟
⎜ ⎟
⎜a ⎟
⎝ n1 ⎠
că există o matrice Householder H1 astfel încât H1a1=σ⋅e1. Matricea H1 se
determină astfel:
1/ 2
⎛ n ⎞
s = ⎜ ∑ a 2j1 ⎟ , β = (s (s + a11 )) , u = (( a11 + s )sgn(a11 ), a 21 , ..., a n1 ) ,
−1 T
⎜ ⎟
⎝ j =1 ⎠
sgn( a11 ) = 1 daca a11 = 0 , H 1 = I n − βuu T . (4)
Dacă notăm cu A1 = H1A, atunci A1 are următoarea formă:
⎛ − sgn(a ) s a (1) K a (1) ⎞
⎜ 11 12 1n ⎟
⎜ 0 (1)
a22 K a2(1n) ⎟
A1 = ⎜ ⎟
⎜ M M M ⎟
⎜ 0 an(12) K ann(1) ⎟
⎝ ⎠
Sisteme de ecuaţii liniare 31

⎛ a (1) ⎞
⎜ 22 ⎟
În continuare considerăm vectorul a2(1) = ⎜ M ⎟ şi determinăm o matrice
⎜ (1) ⎟
⎜ an 2 ⎟
⎝ ⎠
~
ortogonală H 2 ∈Mn–1(R) astfel încât
~
H a (1) = σ ⋅ e~ ,
2 2 1
unde ~
e1T = (1, 0 , ..., 0) ∈Rn–1.
⎛1 0 ⎞
Notăm cu H 2 = ⎜⎜ ~ ⎟⎟ ∈M n(R) şi cu A2 = H2A1. Matricea A2 va arăta astfel
⎝0 H2 ⎠
⎛ a ( 2) a ( 2) a ( 2) K a ( 2) ⎞
⎜ 11 12 13 1n ⎟
⎜ 0 ( 2)
a22 ( 2)
a23 K a2( 2n) ⎟
⎜ ⎟
A2 = ⎜ 0 0 ( 2)
a33 K a3( 2n) ⎟ , unde a1( 2j ) = a1(1j) , j = 1, n .
⎜ ⎟
⎜ M M M M ⎟
⎜ 0 0 ( 2) ⎟
an( 23) K ann
⎝ ⎠
~
În continuare se determină o matrice Householder H 3 ∈Mn–2(R) cu
~ ~ ~
proprietatea că H 2 a 3( 2) = σ e~1 , unde e~1T = (1, 0, ..., 0) ∈Mn–2(R). Vom nota cu
⎛I 0 ⎞
H 3 = ⎜⎜ 2 ~ ⎟⎟ ∈M n(R) şi cu A3=H3A2. Matricea A3 va avea toate elementele de
⎝ 0 H3 ⎠
sub diagonala principală, din primele trei coloane, zero. Procedeul continuă într-un
mod evident. În final, obţinem o matrice superior triunghiulară An–1 = Hn–1An–2 =
=Hn–1⋅...⋅H2H1A. Dacă notăm H=Hn–1⋅...⋅H2H1 şi cu R=HA, atunci H este
ortogonală şi R superior triunghiulară. ‰

Corolar. Pentru orice matrice nesingulară A∈M n(R) există o matrice ortogonală
Q şi o matrice superior triunghiulară R astfel încât A= QR.

Algoritmul Householder pentru rezolvarea sistemelor de ecuaţii liniare


Fie sistemul Ax =b cu A∈M n(R). Notăm cu C=(A|b)=(cij)∈M n,n+1 (R)
matricea extinsă.
Pentru i: = 1,n–1 execută
n
s := ∑ c 2j i ;
j =i
dacă s = 0 atunci A este singulară . Stop!
altfel β := (s(|cii|+s))–1 ; dacă cii = 0 atunci sgn(cii): = 1 ;
u := (0, ..., 0, (cii + s)⋅sgn(cii), ci+1,i , ..., cni)T ;
32 Bazele Analizei Numerice

Hi: = In – βuuT ; C: = HiC ;


sfârşit pentru i ;

Exemplu. Fie sistemul


⎧ 5 x1 + 2 x2 + x3 = 12

⎨ 5 x1 − 6 x2 + 2 x3 = −1
⎪− 4 x + 2 x + x = 3
⎩ 1 2 3
Soluţia exactă este x1 = 1, x2 = 2, x1 = 3.
Aplicăm metoda Householder.
⎛ 5 2 1⎞ ⎛ 12 ⎞ ⎛ 5 2 1 12 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
A = ⎜ 5 − 6 2 ⎟ ; b = ⎜ − 1⎟ , C = ⎜ 5 − 6 2 − 1⎟ ;
⎜− 4 2 1⎟ ⎜3⎟ ⎜− 4 2 1 3 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Iteraţia I
⎛ 5⎞
⎜ ⎟
a1 = ⎜ 5 ⎟ ; c11 = 5 ; s = 66 = 8.124038405 ;
⎜ − 4⎟
⎝ ⎠
⎛13.124038405 ⎞
1 -3 ⎜ ⎟
β= = 9.379086466 ⋅ 10 ;u = ⎜ 5 ⎟;
8.124038405 ⋅ 13.124038405 ⎜ ⎟
⎝ −4 ⎠

⎛ − 0.615457455 − 0.615457455 0.492365964 ⎞


⎜ ⎟
H1 = ⎜ − 0.615457455 0.765522838 0.187581729 ⎟
⎜ 0.492365964 0.187581729 0.849934617 ⎟⎠

⎛ − 8.12403840 3.44656174 − 1.35400640⎞
⎜ ⎟
A1 = H1 A = ⎜ 0 − 5.44888848 1.10316995 ⎟ ;
⎜ 0 1.55911078 1.71746403 ⎟⎠

⎛ − 5.292934112 ⎞
⎜ ⎟
b1 = H1b = ⎜ − 7.588267109 ⎟ ; C = H1 ⋅ C = [A1 b1 ]
⎜ 8.270613687 ⎟
⎝ ⎠
Iteraţia a II–a
⎛ − 5.448888481⎞
a2(1) = ⎜⎜ 2
⎟⎟ ; s = c22 2
+ c32 = 5.667557862 ;
⎝ 1 .559110785 ⎠
⎛ 0⎞
⎜ ⎟
c22=–5.448888481 ; ; β=0.015872234 ; u = ⎜ − 11.116446343 ⎟ ;
⎜ 1.559110785 ⎟
⎝ ⎠
Sisteme de ecuaţii liniare 33

⎛1 0 0 ⎞
⎜ ⎟
H 2 = ⎜ 0 − 0.961417354 0.275093933 ⎟ ;
⎜ 0 0.275093933 0.961417354 ⎟
⎝ ⎠
⎛ - 8.124038405 3.446561747 − 1.354006401 ⎞
⎜ ⎟
A2 = H 2 A1 = ⎜ 0 5.667557862 − 0.588142797 ⎟ ;
⎜ 0 0 1.954675092 ⎟⎠

⎛ − 5.292934112 ⎞
⎜ ⎟
b2 = H 2b1 = ⎜ 9.570687333 ⎟ ; C = H 2 ⋅ C = [A2 b2 ] ;
⎜ 5.864025277 ⎟
⎝ ⎠
⎛ − 0.615457455 − 0.615457455 0.492365964 ⎞
⎜ ⎟
H = H 2 ⋅ H1 = ⎜ 0.727158367 − 0.684384346 0.053467527 ⎟ ;
⎜ 0.30406057 0.390935018 0.868744486 ⎟⎠

⎛ − 8.124038405 3.446561747 − 1.354006401 ⎞
⎜ ⎟
R= H ⋅A=⎜ 0 5.667557862 − 0.588142797 ⎟ ;
⎜ 0 0 1.954675092 ⎟⎠

Soluţia sistemului iniţial este x=R–1Hb , unde:
⎛ − 0.123091491 0.074854538 − 0.062742657 ⎞
−1 ⎜ ⎟
R =⎜ 0 0.176442839 0.053089941 ⎟ .
⎜ 0 0 0.511593975 ⎟⎠

Se obţine soluţia x1=1 ; x2= 2 ; x3= 3.000000001 .

§1.5. Norme de matrice

Cele mai utilizate norme vectoriale pe Rn sunt:


1) x ∞ = max { x1 , x2 ,..., xn }
1/ p
⎛ n p⎞
2) x p = ⎜ ∑ xi ⎟ , 1≤ p < ∞
⎜ ⎟
⎝ i =1 ⎠
unde xT = (x1, x2, ..., xn)∈Rn.

Definiţia 1. Se numeşte normă de matrice orice aplicaţie


A→ A M : M n(R)→R+
cu proprietăţile:
34 Bazele Analizei Numerice

(i) A M = 0 dacă şi numai dacă A = 0 ,


(ii) λA M = λ A M , ; λ∈R, A∈M n(R) ,
(iii) A+ B M ≤ A M + B M ,
(iv) AB M ≤ A M ⋅ B M , A, B∈M n(R).
Un exemplu de normă de matrice este norma euclidiană de matrice, care se
defineşte astfel
1/ 2
⎛ n n ⎞
A E = ⎜ ∑ ∑ aij2 ⎟ . (1)
⎜ ⎟
⎝ i =1 j =1 ⎠
Proprietăţile (i) şi (ii) sunt evidente. Pentru a demonstra proprietăţile (iii) şi (iv) se
foloseşte inegalitatea Cauchy–Buniakovski–Schwarz pe Rn. Pentru exemplificare
demonstrăm (iv). Fie C = AB. Atunci
2
⎛ n ⎞ ⎛ n 2 ⎞⎛ n 2 ⎞
cij2 = ⎜ ∑ aik bkj ⎟ ≤ ⎜ ∑ aik ⎟⎜ ∑ bkj ⎟
⎜ ⎟ ⎜ ⎟⎜ ⎟
⎝ k =1 ⎠ ⎝ k =1 ⎠⎝ k =1 ⎠
În continuare avem
n ⎛ n
2 ⎞⎟
n n n ⎛ n ⎞
2 2 2
AB E = ∑ ∑ cij2 ≤ ∑ ⎜ ∑ aik ⋅ ∑ ⎜ ∑ bkj2 ⎟ = A E ⋅ B E ,
⎜ ⎟ ⎜ ⎟
i =1 j =1 i =1 ⎝ k =1 ⎠ j =1⎝ k =1 ⎠
de unde rezultă AB E ≤ A E ⋅ B E .

Definiţia 2. O normă de matrice ⋅ M se numeşte compatibilă cu norma


vectorială ⋅ p dacă Ax p ≤ A M x p pentru orice x.

Observaţia 1. Ax 2 ≤ A E x 2 , (∀) x.

n n ⎛ n ⎞⎛ n ⎞
Ax 2 = ∑ (ai1x1 + ... + ain xn )2 ≤ ∑ ⎜ ∑ aij2 ⎟⎜ ∑ x 2j ⎟ = A E ⋅ x 2 .
2 2 2
Într–adevăr,
⎜ ⎟⎜ ⎟
i =1 i =1⎝ j =1 ⎠⎝ j =1 ⎠

Observaţia 2. Dacă λ este o valoare proprie a matricei A, atunci λ ≤ A M


pentru orice normă de matrice compatibilă cu o normă vectorială.

Într–adevăr, fie v un vector propriu al matricei A care corespunde valorii


proprii λ . Atunci avem
λ ⋅ v = λv = Av ≤ A M v ,
Sisteme de ecuaţii liniare 35

deci λ ≤ AM.
După cum se ştie, între mulţimea M n(R) a matricelor pătratice cu
elemente din R şi mulţimea L(Rn) a aplicaţiilor liniare şi continue, U : Rn→Rn ,
există o corespondenţă bijectivă. Mai precis, dacă A este matricea asociată
transformării liniare U, atunci U(eiT) = (a1i, a2i, ..., ani),
unde eiT = (0, ..., 1, ..., 0)∈Rn şi U(xT) = (Ax)T. Pe de altă parte, spaţiul L(Rn) este
un spaţiu normat în raport cu norma operatorială:
U
o
= sup { U (x ) ;
T
xT = 1 } (2)

unde cu ⋅ am notat o normă oarecare pe Rn.


Se ştie de asemenea că:
U
o
{
= inf c > 0 ; U x T ( ) ≤ c xT , (∀) x T ∈ R n } (3)

Definiţia 3. Se numeşte norma matricei A subordonată normei vectoriale ⋅


următorul număr:
Ax
A = sup { Ax ; x = 1 } = sup (4)
x≠0 x

Ca şi în cazul normei operatoriale, avem


A = inf { c > 0 ; Ax ≤ c x , (∀) x } . (5)
Din relaţia (5) rezultă în particular că Ax ≤ A ⋅ x , ∀x ∈ R n , deci norma
matriceală definită de (4) este compatibilă cu norma vectorială căreia îi este
subordonată.
Este evident că aplicaţia A → A definită de (4) satisface proprietăţile (i)–(iii)
din definiţia 1. De asemenea avem
ABx ≤ A ⋅ Bx ≤ A ⋅ B ⋅ x ,
de unde rezultă A ⋅ B ≤ A ⋅ B .
Aşadar, formula (4) defineşte într–adevăr o normă de matrice.

Definiţia 4. Dacă λ1, ..., λn sunt valorile proprii ale matricei A , atunci se notează
cu ρ(A)= max λi şi ρ(A) se numeşte raza spectrală a matricei A (în această
1≤i ≤ n
definiţie λ i pot fi reale sau complexe)

Teorema 1. Pentru A∈M n(R) avem:


n
(1) A ∞ = max ∑ aij ,
1≤i ≤n j =1
36 Bazele Analizei Numerice

n
(2) A 1= max ∑ aij ,
1≤ j ≤ n i =1

(( ))
1
T
(3) A 2= ρ A ⋅ A , 2

unde cu A p am notat norma matricei A subordonată normei vectoriale x p .

Demonstraţie.
n n n
Ax ∞ = max ∑ aij x j ≤ 1max
1≤i ≤n j =1
∑ aij ⋅ x j ≤ x ∞ 1max
≤i ≤n j =1
∑ aij
≤i ≤ n j =1

n
Rezultă A ∞ ≤ max ∑ aij . Rămâne să arătăm că există ~
x cu ~
x ∞= 1
1≤i ≤n j =1
n
astfel încât A~
x ∞ = max ∑ aij . Pentru aceasta, fie k astfel încât să avem
1≤i ≤ n j =1
n n
∑ akj = max ∑ aij
1≤i ≤ j =1
(6)
j =1
⎧ 0 dacã akj = 0

şi fie ~
x j = ⎨ akj .
dacã akj ≠ 0
⎪a
⎩ kj
n n
Evident că ~
x ∞ = 1 şi A~
x ∞ = ∑ akj = max ∑ aij . Aşadar, am demonstrat
j =1 1≤i ≤n j =1
(1). În continuare avem
n n
Ax 1= ∑ ai1x1 + ... + ain xn ≤ ∑ ( ai1 x1 + ... + ain xn ) ≤
i =1 i =1
⎛ n ⎞ ⎛ n ⎞
≤ ⎜ max ∑ aij ⎟ ⋅ ( x1 + ... + xn ) = max ⎜ ∑ aij ⎟⋅ x
⎜ 1≤ j ≤n ⎟ 1≤ j ≤n⎜⎝ i =1 ⎟ 1
⎝ i =1 ⎠ ⎠
n
de unde rezultă A 1≤ max ∑ aij .
1≤ j ≤ n i =1
Sisteme de ecuaţii liniare 37

n
Pe de altă parte dacă eTj=(0,...,1,...,0) , atunci e j = 1 şi Ae j = ∑ aij , de
1 1
i =1
n n
unde rezultă A 1 ≥ ∑ aij , pentru orice j = 1, n . Aşadar, A 1 ≥ max ∑ aij
i =1 1≤ j ≤ n i = 1
şi cu aceasta afirmaţia (2) este dovedită.
Fie B=ATA şi fie
{
µ1 = sup xT Bx ; x 2 = 1} (7)
Evident µ1 = sup{( Ax )T Ax ; x 2 = 1 }= A 2 , deci
2
A 2 = µ1 .
{
Deoarece mulţimea S = x ; x 2 = 1 } este compactă, rezultă că există v cu
proprietăţile: µ1=vTBv şi v 2 = 1 .
Vom arăta în continuare că Bv=µ1v , deci că v este un vector propriu pentru B şi
corespunde valorii proprii µ1.
T
⎛ z ⎞ ⎛ z ⎞
Într-adevăr, pentru orice z≠0 avem: ⎜ ⎟ B⎜ ⎟ ≤ µ şi deci
⎜ z ⎟ ⎜ z ⎟ 1
⎝ 2⎠ ⎝ 2⎠
2
z T Bz ≤ µ1 z 2 = µ1z T z (8)
Pe de altă parte este evident că relaţia (8) este verificată şi pentru z=0. Deci relaţia
(8) are loc pentru orice z. De asemenea avem:
vTBv=µ1vTv (9)
Dacă notăm cu C=B–µ1In , atunci avem:
zTCz≤0 , (∀) z şi (8')
vTCv=0 (9')
Fie z=v+ty , unde t∈R este oarecare şi y este un vector oarecare. Din (8') şi din
faptul că C este simetrică rezultă
vTCv+2tyT(Cv)+t2yTCy≤0 .
Ţinând seama de (9') avem
t 2 y T Cy + 2ty T (Cv ) ≤ 0 . (10)
T
Pentru ca (10) să fie adevărată pentru orice t∈R trebuie ca y Cv = 0. Cum y a
fost arbitrar rezultă 0=Cv=(B–µ1In)v=Bv–µ1v.
2
Aşadar, avem Bv=µ1v, deci µ1 este valoare proprie pentru B şi în plus µ1 = A 2 .
Pe de altă parte, fie µ o altă valoare proprie a matricei B şi fie u≠0, u 2 = 1 ,
astfel încât Bu=µu. În continuare avem
2 2
µ1 = A 2 ≥ Au 2
= u T Bu = u T µu = µ .
Aşadar, µ1 este cea mai mare valoare proprie a matricei B, deci am demonstrat şi
afirmaţia (3). ‰
38 Bazele Analizei Numerice

În particular dacă presupunem că matricea A este simetrică, rezultă că


B=A2. Fie λ1, λ2, ..., λn valorile proprii ale matricei A, care în acest caz sunt
reale. Se ştie că λ12 , λ22 , ..., λ2n sunt valorile proprii ale matricei A2. Să
presupunem că λ12 = max λ2j .
1≤ j ≤ n
Din Teorema 1 rezultă că A 2 = λ1 . Dacă, în plus, A este pozitiv definită, atunci
λi>0 pentru orice i. Să presupunem că: λ1 ≥ λ2 ≥ ... ≥ λn . Din cele de mai sus
rezultă A 2 = λ1 , unde λ1 este cea mai mare valoare proprie a matricei simetrice
şi pozitiv definite A.

§1.6. Perturbarea sistemelor liniare.


Numărul de condiţionare al unei matrice

Considerăm următorul sistem de ecuaţii liniare


⎧10 x1 + 7 x2 + 8 x3 + 7 x4 = 32
⎪ 7 x + 5 x + 6 x + 5 x = 23
⎪ 1 2 3 4
⎨ (1)
⎪ 1 8 x + 6 x 2 + 10 x3 + 9 x 4 = 33
⎪⎩ 7 x1 + 5 x2 + 9 x3 + 10 x4 = 31
a cărui soluţie exactă este x1=x2=x3=x4=1.
Să considerăm acum sistemul (1') în care am modificat “puţin” termenii liberi
⎧10 x1 + 7 x2 + 8 x3 + 7 x4 = 32.1
⎪ 7 x + 5 x + 6 x + 5 x = 22.9
⎪ 1 2 3 4
⎨ . (1')
⎪8 x1 + 6 x2 + 10 x3 + 9 x4 = 33.1
⎪⎩7 x1 + 5 x2 + 9 x3 + 10 x4 = 30.9
Soluţia sistemului (1') este x1= 9.2 ; x2= –12.6 ; x3= 4.5 ; x4= –1.1 . Aşadar, o
eroare mică, de ordinul 0.1, a termenilor liberi, produce o eroare mare, de ordinul
10, a soluţiei sistemului.
Fie acum sistemul (1") în care modificăm puţin coeficienţii sistemului
⎧ 10 x1 + 7 x2 + 8.1x3 + 7.2 x4 = 32
⎪ 7.08 x + 5.04 x + 6 x + 5 x = 23
⎪ 1 2 3 4
⎨ . (1")
⎪ 1 8 x + 5 .98 x 2 + 9 .89 x3 + 9 x 4 = 33
⎪⎩6.99 x1 + 4.99 x2 + 9 x3 + 9.98 x4 = 31
Soluţia sistemului (1") este: x1= –81 ; x2= 137 ; x3= –34 ; x4= 22 .
Să analizăm acum efectul perturbării membrului drept asupra soluţiei unui sistem
liniar Ax=b, în care matricea A este nesingulară.
Sisteme de ecuaţii liniare 39

Notăm cu δ b perturbarea membrului drept şi cu δ x perturbarea care rezultă


pentru soluţie. Avem: A(x+ δ x )=b + δ b , de unde rezultă A δ x = δb şi deci
δ x =A–1 δ b . Pentru orice normă de matrice compatibilă avem:
δx ≤ A−1 ⋅ δb (2)
Pe de altă parte b = Ax ≤ A ⋅ x , de unde rezultă:
1 A
≤ (3)
x b
δx δb
Din relaţiile (2) şi (3) obţinem ≤ A ⋅ A−1 ⋅ .
x b

Numărul de condiţionare al unei matrice se defineşte astfel


cond ( A) = A ⋅ A −1 . (4)

Aşadar, între eroarea relativă a membrului drept şi eroarea relativă a soluţiei


sistemului avem următoarea inegalitate
δx δb
≤ cond ( A) ⋅ . (5)
x b
Observăm că dacă numărul de condiţionare al matricei coeficienţilor sistemului
este mare, atunci la erori relativ mici ale termenilor liberi, pot apare erori relativ
mari pentru soluţia sistemului. În cazul exemplului (1) avem
⎛10 7 8 8 ⎞ ⎛ 25 − 41 10 − 6 ⎞
⎜ ⎟ ⎜ ⎟
⎜7 5 6 5⎟ −1 ⎜ − 41 68 − 17 10 ⎟
A=⎜ , A =⎜
8 6 10 9 ⎟ 10 − 17 5 − 3⎟
⎜ ⎟ ⎜ ⎟
⎜ 7 5 9 10 ⎟ ⎜ −6 10 − 3 2 ⎟⎠
⎝ ⎠ ⎝
şi cond2(A) ≅ 2984. (S–a folosit norma de matrice 2 ). După cum se vede,
numărul de condiţionare este destul de mare, ceea ce explică instabilitatea soluţiei
sistemului.
Numărul de condiţionare are următoarele proprietăţi:
(i) cond(In)≥1
(ii) cond(A)=cond(A–1)
(iii) cond(αA)=cond(A) pentru orice α≠0
µ1
(iv) cond 2 ( A) = , unde µ1≥µ2≥...≥µn>0 sunt valorile proprii ale matricei
µn
B=ATA
40 Bazele Analizei Numerice

max λi
(v) Dacă A este simetrică, atunci cond 2 ( A) = , unde λ1, ..., λn sunt
min λi
valorile proprii ale matricei A
(vi) Dacă A este ortogonală, atunci cond(A)=1 .
Pentru a evalua eroarea soluţiei sistemului la o perturbare a coeficienţilor
sistemului, avem nevoie de următoarele două leme.

Lema 1. Dacă A∈M n(R) şi A < 1 , atunci:


(i) A+In şi A–In sunt nesingulare, şi
1 1
(ii) ≤ ( A ± I n )−1 ≤ .
A +1 1− A
Demonstraţie.
Prezentăm demonstraţia pentru A+In .
Presupunem prin absurd că A+In este singulară. Atunci există x ≠ 0,
x = 1 astfel încât (A+In)⋅x = 0. În continuare avem x = –Ax, deci x ≤ A ⋅ x .
Rezultă A ≥ 1 ceea ce contrazice ipoteza A < 1.
Pentru a demonstra (ii) observăm că
1 = I n = (I n + A)(I n + A)−1 ≤ I n + A ⋅ (I n + A)−1 ≤ (1 + A ) ⋅ (I n + A)−1
de unde rezultă
1
≤ ( A + I n )−1 .
A +1
Pe de altă parte avem
In=(In+A)–1+A(In+A)–1 ,
de unde rezultă
(I n + A)−1 = I n − A(I n + A)−1 ≤ 1 + A ⋅ (I n + A)−1 ,
şi mai departe
1
(I n + A)−1 ≤ . ‰
1− A

Lema 2 (a perturbării). Fie A, B∈M n(R) cu proprietăţile:


(i) A −1 ≤ α

(ii) A −1 ( B − A ) ≤ k < 1 .
α
Atunci B este nesingulară şi B −1 ≤ .
1− k
Demonstraţie.
Din Lema 1 rezultă că In+A–1(B–A)=A–1B este nesingulară.
Sisteme de ecuaţii liniare 41

Cum det(A–1B) = det(A–1)⋅detB, va rezulta detB ≠ 0, deci B este nesingulară.


Tot din Lema 1 rezultă
[
B −1 A = I n + A −1 (B − A)
−1

1
]

1
.
1 − A −1 (B − A) 1 − k
Mai departe avem
( )
B −1 = B −1 A A−1 ≤ B −1 A ⋅ A−1 ≤
α
1− k
. ‰

Teorema 1. Dacă perturbăm matricea coeficienţilor sistemului Ax = b cu δA şi


A−1δA < 1 , atunci între eroarea relativă a soluţiei şi eroarea relativă a matricei
coeficienţilor are loc inegalitatea
δx cond( A) δA
≤ .
x δA A
1 − cond( A)
A
Demonstraţie.
Din egalităţile Ax=b şi (A+δA)(x+δx)=b rezultă Aδx+δAx+δAδx=0. În continuare
avem δx = –(A+δA)–1δA x şi mai departe
δx
≤ ( A + δA)−1 ⋅ δA (6)
x
Dacă alegem în Lema 2 α = A −1 şi B=A+δA, atunci

A −1 (B − A) = A−1δA < 1
şi va rezulta
A−1 A−1
B −1
= ( A + δA ) −1
≤ ≤ . (7)
1 − A−1δA 1 − A−1 ⋅ δA
Din (6) şi (7) obţinem
δx A −1 ⋅ δ A A −1 ⋅ A δA
≤ = ⋅ .
x 1− A −1
⋅ δA −1 δA A
1− A ⋅ A⋅
A
Ţinând seama de definiţia numărului de condiţionare, ultima inegalitate devine
δx cond( A) δA
≤ . ‰
x δA A
1 − cond( A)
A
42 Bazele Analizei Numerice

Observaţia 1. Dacă presupunem în plus că perturbăm şi membrul drept al


sistemului cu δ b atunci rezultă
δx cond ( A) ⎛ δA δb ⎞
≤ ⎜ + ⎟.
x δA ⎜⎝ A b ⎟⎠
1 − cond ( A)
A

Observaţia 2. Rezolvarea sistemului Ax=b, cu metoda Gauss revine la rezolvarea


a două sisteme triunghiulare Uy=b şi Lx=y. Rezolvarea fiecărui sistem necesită n2
operaţii. Dacă unul din aceste sisteme este rău condiţionat (ceea ce se poate
întâmpla chiar dacă sistemul iniţial Ax=b este bine condiţionat) metoda Gauss
conduce la erori mari.

Cu totul altfel stau lucrurile în cazul metodei Householder. Deoarece cond(Q) = 1


şi cond(QR) = cond(R), rezultă că sistemul Qy = b este bine condiţionat şi deci
că sistemul Ax = b are aceeaşi condiţionare ca sistemul Rx = y. Aşadar, algoritmul
Householder are proprietăţi de stabilitate mai bune decât algoritmul Gauss.

Observaţia 3. Pentru evaluarea numărului de condiţionare cond(A), este suficient


să cunoaştem un majorant pentru A−1 .

Calculul lui (LU )−1 este mai uşor decât calculul lui A−1 , deoarece
inversarea matricelor triunghiulare este uşoară. Să presupunem că
(LU )−1 = α şi A − LU < k
α
α
unde 0<k<1. Atunci din Lema 2 rezultă A−1 ≤
.
1− k
Într–adevăr, să alegem în Lema 2 matricea LU în loc de A şi matricea A în loc
de B. Avem
k
A−1 ( A − LU ) ≤ A−1 ⋅ A − LU ≤ α ⋅ = k < 1 .
α
α α A
Atunci rezultă A−1 ≤ şi deci cond ( A) ≤ . ‰
1− k 1− k
Sisteme de ecuaţii liniare 43

§1.7. Metode iterative de rezolvare a


sistemelor de ecuaţii liniare

Metodele directe de rezolvare numerică a sistemelor de ecuaţii liniare se


utilizează pentru sisteme care au matricea coeficienţilor densă (aproape toţi
coeficienţii sunt nenuli) şi cu un număr de ecuaţii moderat (până la 100 de ecuaţii).
Pentru sisteme mari de ecuaţii de ordinul 103 → 105 şi care au matricea
coeficienţilor rară (cu multe elemente nule), se utilizează metode iterative de
rezolvare numerică.
Să presupunem că sistemul
Ax = b (1)
se poate pune sub forma echivalentă
x = Bx + c (2)
Forma echivalentă (2) ne sugerează următorul proces iterativ:
x (m+1) = Bx (m ) + c, m ≥ 0 , (3)
unde x(0) este un vector arbitrar.
Dacă notăm cu x* soluţia exactă a sistemului, atunci avem
x*=Bx*+c (4)
Fie e(m) = x*–x(m) vectorul eroare.
Din (3) şi (4) rezultă e ( m+1) = Be ( m) , m∈N* şi mai departe
e ( m ) = B m e ( 0) (5)

Teorema 1. Dacă B < 1 , atunci şirul ( x (m ) ) este convergent şi lim x (m ) = x ∗ .


m→∞
Demonstraţie.
Este suficient să arătăm că lim e (m ) = 0 .
m→∞
Din (5) avem
e (m ) ≤ B m e (0 ) ≤ B ⋅ e (0 )
m
.

lim e (m ) = 0 .
m
Deoarece lim B = 0 , rezult㠉
m →∞ m→∞

Teorema 2. Condiţia necesară şi suficientă ca şirul ( x (m ) ) definit de (3) să fie


convergent este ca ρ ( B ) < 1 , unde cu ρ (B ) s–a notat raza spectrală a matricei B.
44 Bazele Analizei Numerice

Demonstraţie.
Este suficient să arătăm că lim B m = 0 dacă şi numai dacă ρ ( B ) < 1 . Din
m→∞
Algebra liniară se ştie că matricea B se poate aduce la forma canonică Jordan, deci
că există o matrice nesingulară C astfel încât
⎛ J p (λ1 ) L 0 ⎞
⎜ 1 ⎟
−1
C ⋅ B ⋅C = J = ⎜ M J p2 (λ 2 ) M ⎟,
⎜⎜ ⎟
⎝ 0 J pr (λ r )⎟⎠
unde
⎛λ 1 0 L 0⎞
⎜ ⎟
⎜ λ 1 M⎟
J p (λ ) = ⎜
M O 1⎟
⎜ ⎟
⎜0 λ ⎟⎠

este o celulă Jordan, λ1, ... , λr sunt valorile proprii ale matricei B şi
p1, ... , pr sunt ordinele de multiplicitate ale acestor valori proprii. Deoarece
C −1 B m C = J m , rezultă că lim B m = 0 dacă şi numai dacă lim J m = 0 . Pe
m→∞ m→∞
de altă parte, J = D + N, unde
⎛ λ1 0 0⎞
⎜ ⎟
⎜ O ⎟
⎜0 λ1 ⎟
⎜ ⎟
D=⎜ O ⎟
⎜ ⎟
⎜ λr 0⎟
⎜ O ⎟
⎜ ⎟
⎝0 0 λr ⎠
este o matrice diagonală de ordinul n, iar N este o matrice nilpotentă de ordinul
n, adică Nn = 0 .
m
k m− k k
În continuare avem J m = ∑ C m D N . Deoarece Nk=0 pentru k≥n, vom
k =0
avea
n
k m− k k
J m = ∑ Cm D N . (6)
k =0
Observăm că D ∞ = max λ1 = ρ ( B ) < 1 . Din (6) rezultă:
1≤i ≤ r
n m(m − 1)...(m − k + 1) m−k n mk
N ∞ ⋅ ( ρ ( B ) )m − k
k k
Jm ≤ ∑ D∞ N ∞< ∑
∞ k =0 k! k =0 k!
Sisteme de ecuaţii liniare 45

Cum lim m k ( ρ ( B)) m−k = 0 , rezultă că lim J m ∞ = 0 , deci că


m→∞ m →∞
lim J m = 0 .
m→∞
Reciproc, să presupunem că lim B m = 0 şi că ρ (B ) ≥ 1 . Atunci există
m→∞
un vector propriu x ≠ 0 şi o valoare proprie λ , cu λ ≥ 1 , astfel încât Bx=λx şi
deci Bmx = λm x.
Cum (λm x) nu converge la 0, rezultă că Bm nu converge la 0, ceea
ce contrazice ipoteza făcută. ‰

Una din cele mai cunoscute metode iterative este metoda Jacobi.
Să presupunem că matricea sistemului Ax=b are proprietatea aii ≠ 0, i = 1, n .
Dacă notăm cu D = diag ( a11 , ..., a nn ) şi cu E=D–A, atunci obţinem sistemul
echivalent (D–E)⋅x=b şi mai departe

x=D -1 E x + D −1b (7)

⎛ 1 1 ⎞ n aij
Cum D -1 = diag⎜⎜ , ..., ⎟⎟ , rezultă că D −1 E ∞ = max ∑ .
⎝ a11 a nn ⎠ 1≤i ≤ n j =1 a ii
j ≠i

Observăm că dacă matricea A este tare diagonal dominantă, atunci D −1 E ∞ < 1 şi


în virtutea Teoremei 1, şirul
( )
x (m +1) = D −1 E x (m ) + D −1b, m ≥ 0
(0)
(8)
este convergent pentru orice aproximaţie iniţială x . Aşadar, metoda Jacobi
constă în următoarele:
Sistemul Ax = b se pune sub forma echivalentă (7).
Scris pe componente, sistemul (7) arată astfel
⎛ ⎞
1 ⎜ n ⎟
xi = ⎜ bi − ∑ aij x j ⎟ , i = 1,n . (7’)
aii ⎜ j =1 ⎟
⎜ j ≠i

⎝ ⎠
Se obţine şirul recurent { x (m ) } unde
⎛ ⎞
1 ⎜ n ⎟
xi(m+1) = ⎜ bi − ∑ aij x (jm ) ⎟ , i = 1,n . (8’)
aii ⎜ j =1 ⎟
⎜ j ≠i

⎝ ⎠
46 Bazele Analizei Numerice

Dacă matricea A este tare diagonal dominantă, şirul ( x (m ) ) converge la


soluţia exactă a sistemului.

Exemplu. Fie sistemul


⎛ 5 − 1 − 1 − 1⎞ ⎛ x1 ⎞ ⎛ − 4 ⎞
⎜ ⎟⎜ ⎟ ⎜ ⎟
⎜ − 1 10 − 1 − 1⎟ ⎜ x 2 ⎟ ⎜ 12 ⎟
⎜ − 1 − 1 5 − 1⎟ ⎜ x ⎟ = ⎜ 8 ⎟
⎜ ⎟⎜ 3⎟ ⎜ ⎟
⎜ − 1 − 1 − 1 10 ⎟ ⎜ x ⎟ ⎜ 34 ⎟
⎝ ⎠⎝ 4⎠ ⎝ ⎠
Soluţia exactă este x1 = 1, x2 = 2, x3 = 3, x4 = 4.
⎛5 0 0 0 ⎞ ⎛0 1 1 1⎞ ⎛ 0 0,2 0,2 0,2 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 0 10 0 0 ⎟ ⎜1 0 1 1⎟ -1 ⎜ 0,1 0 0,1 0,1 ⎟
D=⎜ ⎟ , E=⎜ , D E =⎜ ,
0 0 5 0 1 1 0 1⎟ 0,2 0,2 0 0,2 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 0 0 0 10 ⎟ ⎜1 1 1 0 ⎟⎠ ⎜ 0,1 0,1 0,1 0 ⎟
⎝ ⎠ ⎝ ⎝ ⎠
⎛ −0,8 ⎞
⎜ ⎟
-1 ⎜ 1,2 ⎟
D b=⎜ , D -1 E ∞ = 0.6 < 1 .
1,6 ⎟
⎜ ⎟
⎜ 3,4 ⎟
⎝ ⎠
Obţinem următorul proces iterativ:
⎧ x (m+1 ) = 0.2 x (m) + 0.2 x (m) + 0.2 x (m) − 0.8
⎪ 1 2 3 4
⎪ x (m+1 ) = 0.1x (m) (m) (m)
+ 0.1x3 + 0.1x 4 − 1.2
⎪ 2 1
⎨ (m+1 )
⎪ x3 = 0.2 x1(m) + 0.2 x 2(m) + 0.2 x 4(m) + 1.6

⎪ x 4(m+1 ) = 0.1x1(m) + 0.1x 2(m) + 0.1x3(m) + 3 .4

Dacă alegem aproximaţia iniţială x10 = x 20 = x30 = x 40 = 0 atunci după 5
iteraţii obţinem
x1(5) = 0,948; x 2(5) = 1,969; x3(5) = 2,948; x 4(5) = 3,969

O altă metodă iterativă cunoscută este metoda Gauss–Seidel şi care


corespunde următoarei spargeri a matricei coeficienţilor:
A = (D+L ) + U unde D = diag (a11, ..., ann ),
⎛ 0 0 ... 0⎞ ⎛ 0 a12 ... a1n ⎞
⎜ ⎟ ⎜ ⎟
⎜a 0 ... 0⎟ ⎜0 0 ... a 2n ⎟
L = ⎜ 21 ⎟ , iar U = ⎜ .
... ... ... ... ... ... ... ... ⎟
⎜ ⎟ ⎜ ⎟
⎜a an2 ... 0 ⎟⎠ ⎜0 0 ... 0 ⎟⎠
⎝ n1 ⎝
Sisteme de ecuaţii liniare 47

Sistemul (1) devine (D+L) x = –Ux +b şi mai departe obţinem următorul proces
iterativ:
(D+L) x(m+1) = –Ux(m) +b . (9)
Pe componente obţinem
1 ⎛⎜ i-1 n
(m ) ⎞
xi(m+1) = bi − ∑ aij x (jm+1) − ∑ aij x j ⎟⎟ , i = 1,n . (10)
aii ⎜⎝ j =1 j =i +1 ⎠
Din algoritmul (10) se observă că fiecare nouă componentă, x j , este imediat
( m+1)

utilizată la calculul următoarei componente.


Se poate arăta că procesul iterativ Gauss–Seidel este convergent dacă
matricea A este tare diagonal dominantă.
În cazul exemplului precedent obţinem
(m+1) ⎞ (m )
⎛ 5 0 0 0 ⎞ ⎛⎜ x1 ⎛ 0 1 1 1 ⎞ ⎛⎜ x1 ⎞⎟ ⎛ − 4 ⎞
⎜ ⎟ ⎜ (m+1) ⎟⎟ ⎜ ⎟ ⎜ (m ) ⎟ ⎜ ⎟
⎜ − 1 10 0 0 ⎟ ⎜ x 2 ⎜ 0 0 1 1 ⎟ x2 ⎜ 12 ⎟
⎜ − 1 − 1 5 0 ⎟ ⎜ (m+1) ⎟⎟ = ⎜ 0 0 0 1 ⎟ ⎜⎜ (m ) ⎟⎟ + ⎜ 8 ⎟
⎜ ⎟ x3 ⎜ ⎟ x3 ⎜ ⎟
⎜ − 1 − 1 − 1 10 ⎟ ⎜⎜ (m+1) ⎟⎟ ⎜ 0 0 0 0 ⎟ ⎜⎜ (m ) ⎟⎟ ⎜ 34 ⎟
⎝ ⎠ ⎝ x4 ⎠ ⎝ ⎠ ⎝ x4 ⎠ ⎝ ⎠
⎧ (m+1 ) 1 (m) (m) (m)
⎪ x1 = ⎛⎜ x 2 + x3 + x 4 − 4 ⎞⎟
5⎝ ⎠

⎪ x (m+1 ) 1 ⎛ ( m+1) ( ) ( )
+ x3 + x 4 + 12 ⎞⎟
m m
⎪⎪ 2 = ⎜ x1
10 ⎝ ⎠
sau ⎨ .
⎪ x (m+1 ) 1 ⎛ ( m+1) ( m+1) ( m) ⎞
= ⎜ x1 + x2 + x4 + 8 ⎟
⎪ 3 5⎝ ⎠
⎪ 1 ⎛ ( m+1)
⎪ x (m+1 ) = ⎜ x1 + x2
( ) + x ( ) + 34 ⎞
m+ 1 m+ 1

⎩⎪ 4 10 ⎝ 3 ⎠
Pentru x1(0) = x 2(0) = x3(0) = x 4(0) = 0, după 5 iteraţii obţinem
x1(5) = 0.995 ; x 2(5) = 1.998 ; x3(5) = 2.998 ; x 4(5) = 3.999 .

§1.8. Metode de relaxare. Principiile de bază

Metodele de relaxare sunt metode iterative şi sunt utilizate pentru


rezolvarea numerică a sistemelor liniare care au matricea coeficienţilor simetrică şi
pozitiv definită.
Fie sistemul liniar
Ax – b = 0 (1)
48 Bazele Analizei Numerice

⎛ v1 ⎞
⎜ ⎟
⎜ v2 ⎟
unde matricea A este simetrică şi pozitiv definită. Dacă v = ⎜ ⎟ este un vector de
M
⎜ ⎟
⎜v ⎟
⎝ n⎠
probă oarecare, atunci notăm cu
r= Av – b . (2)
Vectorul r se numeşte vectorul rezidual.
Scopul oricărei metode de relaxare este ca prin schimbarea sistematică a
vectorului v, vectorul rezidual corespunzător r să se micşoreze, eventual să se
anuleze.
În cele ce urmează, pentru orice doi vectori
⎛ u1 ⎞ ⎛ v1 ⎞
⎜ ⎟ ⎜ ⎟
⎜ u2 ⎟ ⎜v ⎟
u = ⎜ ⎟ şi v = ⎜ 2 ⎟
M M
⎜ ⎟ ⎜ ⎟
⎜u ⎟ ⎜v ⎟
⎝ n⎠ ⎝ n⎠
vom nota produsul lor scalar cu
u,v = v T u = u1v1 + u 2 v 2 + ... + u n v n (3)
Asociem sistemului (1) funcţia pătratică
1 n n n 1
F (v) = ∑ ∑ aij vi v j − ∑ bi vi = Av,v − b,v (4)
2 i =1 j =1 i =1 2
Deoarece A este pozitiv definită, rezultă Q(v)>0 pentru orice v≠0, unde
Q(v) = Av,v . Observăm de asemenea că pentru orice i = 1,n avem
∂F n
= ∑ aij v j − bi ,
∂ vi j=1
deci vectorul rezidual
r = gradF . (5)

Teorema 1. Problema determinării soluţiei sistemului (1) este echivalentă cu


problema determinării punctului de minim al funcţiei pătratice (4).
Demonstraţie.
Fie v0 soluţia sistemului (1). Atunci r0=Av0–b=0. Cum
∂F
r0=gradF(v0), rezultă (v0 ) = 0 . Aşadar, v=v0 este punct critic pentru F. Pe
∂ vi
de altă parte,
n n
d 2 F(v0 ) = ∑ ∑ aij dvi dv j > 0 .
i=1 j =1
Rezultă că v=v0 este un punct de minim global pentru F.
Sisteme de ecuaţii liniare 49

Reciproc, dacă v=v0 este punct de minim pentru F atunci


∂F
(v0 ) = 0 , i = 1,n .
∂ vi
n
0
Rezultă ∑ aij v j − bi = 0, i=1,n , deci v=v0 este soluţie pentru (1). ‰
j =1

În continuare prezentăm principiul de bază al metodei relaxării. Fie v un


vector de probă oarecare, p o direcţie dată şi D = { v ′ = v + tp; t ∈ R } , dreapta
care trece prin v şi este paralelă cu p. Ne propunem să determinăm v 0′ ∈ D
astfel încât F (v 0′ ) = min{F (v ′); v ′ ∈ D} . Ţinând seama de (4), rezultă
1
F (v ′) = A(v + tp) ,v + tp − b,v + tp =
2
1 t t2 t
= Av,v − b,v + Av,p + Ap,p + Ap,v − t b,p =
2 2 2 2
t2 t2
= F (v ) + Ap,p + t Av,p − t b,p = F (v) + Ap,p + t Av − b,p =
2 2
t2
= F (v ) + Ap,p + t r,p .
2
Folosim notaţia
t2
f (t ) = F (v ′) = F (v + tp ) = F (v) +
Ap,p + t r,p (6)
2
Determinăm pe t astfel încât f (t ) = F (v ′) să fie minimă. Pentru aceasta trebuie
să avem f ′(t ) = 0 , de unde rezultă t Ap,p + r,p = 0 . Aşadar, obţinem:
r,p
t min = − (7)
Ap,p
Cum f ′′(t ) = Ap,p > 0 , rezultă că vectorul v 0′ = v + t min p este un punct de
minim pentru F( v ′) .
În continuare avem
2
1 r,p
f (t min ) = F (v0′ ) = F (v) −
2 Ap,p
de unde rezultă
2
1 r,p
∆F = F(v0′ ) − F(v) = − ≤0 .
2 Ap,p
Pentru ca ∆F<0, trebuie ca r,p ≠ 0 . Rezultă că direcţia p se alege
astfel încât p să nu fie perpendiculară pe r.
50 Bazele Analizei Numerice

Observaţia 1. Dacă r0′ = Av 0′ − b este vectorul rezidual corespunzător vectorului


v 0′ = v + t min p , atunci r0′ ,p = 0 .

Într–adevăr,
r,p
r0′ ,p = Av-b,p + t min Ap,p = r,p − Ap,p = 0 .
Ap,p
Pentru interpretarea geometrică a principiului relaxării să considerăm cazul
particular n = 2.
Ecuaţiile F(v) = constant, reprezintă ecuaţiile unor elipse concentrice, al
căror centru comun, coincide cu punctul de minim al funcţiei F. Într–adevăr,
ecuaţia F(v) = c revine la
a11v12 + 2a12 v1v 2 + a 22 v 22 − 2b1v1 − 2b2 v 2 = 2c . (8)
Deoarece A este pozitiv definită, rezultă că
⎛a a12 ⎞
δ = ⎜⎜ 11 ⎟⎟>0 ,
⎝ a12 a 22 ⎠
deci (8) reprezintă o elipsă.
Fie v0 un vector de probă oarecare şi c0=F(v0). Ecuaţia F(v)=c0
reprezintă o elipsă şi v=v0 aparţine acestei elipse. Deoarece r0=gradF(v0), rezultă
că r0 este perpendicular pe tangenta în v=v0 la elipsă. Direcţia p1 o alegem
astfel încât să nu fie perpendiculară pe r0. Fie v1=v0+tminp1 şi fie c1=F(v1).
Punctul v=v1 aparţine elipsei F(v)=c1 şi de asemenea aparţine dreptei ce
trece prin v0 şi are direcţia p1.
Fie r1=Av1–b. Din Observaţia 1, r0
rezultă că r1 este perpendicular v0
pe direcţia p1. Pe de altă parte v1
r1=gradF(v1) este perpendicular
pe tangenta în v=v1 la elipsa
F(v)=c1. Rezultă că v=v1, este p1
r1
punctul de tangenţă la elipsa
F(v)=c1 al dreptei care trece prin v0 şi are direcţia p1.

§1.9. Metoda relaxării simple

Este o metodă specifică calculelor de mână, având mai ales o semnificaţie


istorică.
Fie v un vector de probă oarecare şi fie r=Av – b vectorul rezidual
corespunzător.
Sisteme de ecuaţii liniare 51

Dacă max ri = r j , atunci alegem p=ej unde e Tj = (0,...,1,...,0) . Rezultă


1≤i ≤ n
r, p rj
t min = − =− şi
Ap,p a jj
rj
v ′ = v + t min p = v − ej (1)
a jj
Pe componente avem:
⎧ vi daca i≠ j
⎪ rj
vi′ = ⎨ . (2)
vj − daca i= j
⎪ a jj

rj
De asemenea vom avea r ′ = Av ′ − b = r − Ae j şi mai departe
a jj
⎧ rj
⎪r1′ = r1 − a1 j
⎪ a jj

⎪.................

⎨r ′j = 0 (3)

⎪...................
⎪ rj
⎪rn′ = rn − a nj
⎪⎩ a jj
2
1 rj
∆F = F (v) − F (v ′) = − <0,
2 a jj
ceea ce asigură convergenţa metodei. Deşi convergenţa este asigurată, experienţele
numerice arată că aceasta este foarte lentă. Convergenţa este îmbunătăţită dacă
matricea A este tare diagonal dominantă.

Exemplu.
⎧ − x1 + 0.2 x 2 + 0.2 x3 + 0.6 =0

⎨0.2 x1 − x2 + 0.2 x3 + 0.5 =0
⎪0.2 x + 0.2 x 2 − x3 + 0,4 =0
⎩ 1
⎛ 0⎞
(1) ⎜ ⎟
Dacă alegem v = ⎜ 0 ⎟ , atunci
⎜ 0⎟
⎝ ⎠
52 Bazele Analizei Numerice

⎛ 0.6 ⎞
( 1 ) ⎜ ⎟
r = ⎜ 0.5 ⎟ şi max(r1(1) , r2(1) , r3(1) ) = r1(1) = 0.6 .
⎜ 0.4 ⎟
⎝ ⎠
Aşadar
⎛ 1⎞
⎜ ⎟ (2) (1) r1(1) (2) (1) r1(1)
p1 = e1 = ⎜ 0 ⎟ , v = v − e1 şi r = r − Ae1 .
⎜ 0⎟ a11 a11
⎝ ⎠
Pe componente avem
⎧v ( 2) = 0.6 ⎧r (2) =0
⎪1 ⎪⎪ 1
⎪ ( 2) (2)
⎨v 2 =0 , ⎨r2 = 0.62 ,
⎪ ( 2) ⎪ (2)
⎪⎩v3 =0 ⎪⎩r3 = 0.52

(
r2( 2) = max r1(2) , r2(2) , r3(2) = 0.62 . )
Rezultă
⎛ 0⎞ (2)
⎜ ⎟ (3) (2) r2 (3) (2) r2(2)
p 2 = e2 = ⎜ 1 ⎟ , v = v − e2 şi r =r − Ae2 ;
⎜ 0⎟ a 22 a 22
⎝ ⎠
⎧v (3) = 0 .6 ⎧r (3) = 0.124
⎪1 ⎪⎪ 1
⎪ (3) (3)
⎨v 2 = 0.62 , ⎨r2 =0
⎪ (3) ⎪ (3)
⎪⎩v3 =0 ⎪⎩r3 = 0.644

r3
(3)
(
= max r1 , r2
(3) (3) (3)
, r3 ) = 0.644 .
În continuare
⎛ 0⎞
⎜ ⎟ r (3) r (3)
p3 = e3 = ⎜ 0 ⎟ , v (4) = v (3) − 3 e3 şi r (4) = r (3) − 3 Ae3 .
⎜ 1⎟ a33 a33
⎝ ⎠
⎧v ( 4) = 0.6 ⎧r (4) = 0.2528
⎪1 ⎪⎪ 1
⎪ ( 4) (4)
⎨v 2 = 0.62 , ⎨r2 = 0.1288 , etc.
⎪ ( 4) ⎪ (4)
⎪⎩v3 = 0.644 r =0
⎩⎪ 3
Sisteme de ecuaţii liniare 53

§1.10. Metoda deplasărilor succesive (Gauss - Seidel)

În metoda deplasărilor succesive, direcţia de relaxare urmează ciclic


direcţiile e1, e2, ... , en, indiferent de reziduurile respective, după care ciclul se reia.
Pentru simplificare să presupunem că avem sistemul
⎧ a11 x1 + a12 x 2 + a13 x3 − b1 = 0

⎨a 21 x1 + a 22 x 2 + a 23 x3 − b2 = 0
⎪ a x + a x +a x − b = 0
⎩ 31 1 32 2 33 3 3
⎛1⎞
⎜ ⎟
Fie v (0)
vectorul de probă iniţial şi fie p′ = e1 = ⎜ 0 ⎟ . Conform formulei (1) din §9
⎜ 0⎟
⎝ ⎠
(0)
′ ( 0 ) r1
rezultă v = v − e1 , iar pe componente
a11
⎧ (0) 1
((0) (0) (0)
⎪v1′ = v1 − a a11v1 + a12 v2 + a13v3 − b1 )
⎪⎪ 11
(0)
v
⎨ 2 ′ = v 2 .
⎪ ′ (0)
⎪v3 = v3
⎪⎩
În continuare alegem direcţia de relaxare
⎛ 0⎞
⎜ ⎟
p′′ = e2 = ⎜ 1 ⎟
⎜ 0⎟
⎝ ⎠
şi obţinem vectorul v ′′ de componente
⎧ ′′ ′
⎪v1 = v1
⎪⎪ 1
(0)
⎨v2′′ = v2 − (a v′ + a v′ + a23v3′ − b2 ) .
⎪ a22 21 1 22 2
⎪ (0)
⎪⎩v3′′ = v3
În sfârşit, pentru direcţia de relaxare
⎛ 0⎞
⎜ ⎟
p ′′′ = e3 = ⎜ 0 ⎟ ,
⎜ ⎟
⎝1⎠
54 Bazele Analizei Numerice

obţinem vectorul v′′′ de componente



⎪v′′′ = v′′
⎪⎪ 1 1
⎨v2′′′ = v2′′ .
⎪ 1
⎪v3′′′ = v3( 0 ) − (a31v1′′ + a32v2′′ + a33v3′′ − b3 )
⎩⎪ a33
După încheierea acestui ciclu, vectorul găsit va fi notat cu v(1) şi va avea
componentele:
⎧ (1) a12 ( 0 ) a13 ( 0 ) b1
⎪v1 = v1′′′ = − v − v +
⎪ a11 2 a11 3 a11
⎪⎪ ( 1 ) a21 ( 1 ) a23 ( 0 ) b2
⎨v2 = v2′′′ = − v − v + (1)
⎪ a22 1 a22 3 a22
⎪ (1) a (1 ) a (1 ) b
⎪v3 = v3′′′ = − 31 v1 − 32 v2 + 3
⎪⎩ a33 a33 a33
Efectuând calculele obţinem:
⎧a v (1) + a v (0) + a v (0) = b
⎪ 11 1 12 2 13 3 1
⎪ (1) (1) ( 0)
⎨a 21v1 + a 22 v 2 + a 23 v3 = b2 .
⎪ (1) (1) (1)
⎪a31v1 + a32 v 2 + a33 v3 = b3

În general, pentru un sistem de n ecuaţii, după (m+1) cicluri se obţine vectorul
v ( m+1) care verifică ecuaţiile:
⎧a v(m+1 ) + a v(m) + a v(m) + ... + a v(m) = b
⎪ 11 1 12 2 13 3 1n n 1
⎪⎪a v(m+1 ) + a v(m+1 ) + a v(m) + ... + a v(m) = b
21 1 22 2 23 3 2n n 2 (2)

⎪..........................................................................
⎪ (m+1 )
⎪⎩an1v1 + an 2v2(m+1 )+an3v3(m+1 ) + ... + ann vn(m+1 ) = bn

Observaţia 1. Formulele (1) coincid cu formulele (10) din §7.


Dacă notăm cu
⎛ 0 0 0... 0 ⎞
⎜ ⎟ ⎛ a11 0 L 0 ⎞
⎜ a 21 0 0... 0 ⎟ ⎜ ⎟
⎜ ⎟ T ⎜ 0 a22 L 0 ⎟
E = ⎜ a31 a32 0... 0 ⎟ , F = E şi D = ⎜ ,
M M M ⎟
⎜ ⎟ ⎜ ⎟
⎜⎜ ... ... ⎟⎟ ⎜ 0 0 L ann ⎟⎠

⎝ a n1 a n 2 ... 0 ⎠
Sisteme de ecuaţii liniare 55

atunci matricea A admite descompunerea A=E+D+F şi şirul de vectori v (m)


verifică relaţia matricială
(D+E)v(m+1) + Fv(m) = b , (3)
de unde rezultă
v(m+1)= – (D+E) –1Fv(m)+(D+E) –1b . (4)
În sfârşit, notând
M= – (D+E) –1F şi C=(D+E) –1b (5)
obţinem procesul iterativ
v(m+1)=Mv(m)+C . (6)

Exemplu. Să se găsească soluţia aproximativă obţinută după 5 iteraţii cu metoda


deplasărilor succesive, luând vectorul iniţial (0, 0, 0), pentru sistemul Ax = b,
unde:
⎛ 2 −1 0 0⎞ ⎛1⎞
⎜ ⎟ ⎜ ⎟
⎜ −1 3 −1 0⎟ ⎜1⎟
A=⎜ ⎟ , b=⎜ ⎟.
0 −1 3 −1 1
⎜ ⎟ ⎜ ⎟
⎜ 0 0 −1 2⎟ ⎜1⎟
⎝ ⎠ ⎝ ⎠
Rezolvare
⎛18 0 0 0 ⎞ ⎛ 0 -1 0 0 ⎞
⎜ ⎟ ⎜ ⎟
-1 1 ⎜ 6 12 0 0 ⎟ ⎜ 0 0 -1 0 ⎟
( D+E ) = ⎜ F=⎜
36 2 4 12 0 ⎟ 0 0 0 -1⎟
⎜ ⎟ ⎜ ⎟
⎜ 1 2 6 18 ⎟ ⎜0 0 0 0⎟
⎝ ⎠ ⎝ ⎠
⎛ 0 18 0 0 ⎞
⎜ ⎟
−1 1 ⎜ 0 6 12 0 ⎟
M = −( D + E ) F = ⎜
36 0 2 4 12 ⎟
⎜ ⎟
⎜0 1 2 6 ⎟
⎝ ⎠
⎛ 4 1 ⎞
det ( M − λI ) = λ2 ⎜ λ 2 − λ + ⎟ .
⎝ 9 36 ⎠
Valorile proprii ale matricei M sunt λ1 = 0.369 ; λ2 = 0.077 ; λ3 = 0 ; λ4 = 0 .
ρ ( M ) = 0.369 < 1 , deci procesul este convergent.
Pe componente algoritmul conduce la:
56 Bazele Analizei Numerice

Iteraţia I
⎧ (1) 1 ( 0) ( 0)
⎪ x1 = a (b − a12 x2 − a1 3x 3 − a1 4x (40) )
⎪ 11
⎪ x (1) = 1 (b − a x ( 1) − a x (0) ⎛ 0.5 ⎞
21 1 23 3 − a 24x (40) ) ⎜ ⎟
⎪ 2 a22 (1) ⎜ 0.5 ⎟
⎨ rezultă x = ⎜
⎪ x3(1) =
1
(b − a 31x (11) − a 32x (21) − a 34x (40) ) 0.5 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.75 ⎟
⎝ ⎠
⎪ (1) 1
⎪ x4 = (b − a 41x (11) − a 42x (21) − a 43x (31) )
⎩ a 44
Iteraţia a II –a
⎧ ( 2) 1 ( 1) ( 1) ( 1)
⎪ x1 = a (b − a12 x2 − a1 3x 3 − a1 4x 4 )
⎪ 11
⎪ x ( 2) = 1 (b − a x ( 2) − a x ( 1) − a x ( 1) ) ⎛ 0.75 ⎞
21 23 24 ⎜ ⎟
⎪ 2 1 3 4
a22 ( 2) ⎜ 0.75 ⎟
⎨ rezultă x = ⎜
⎪ x3( 2) =
1
(b − a 31x (1 2) − a 32x (22) − a 34x (41) ) 0.83333 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.91667 ⎟
⎝ ⎠
⎪ ( 2) 1 ( 2) ( 2) ( 2)
x
⎪ 4 = ( b − a x
41 1 − a x
42 2 − a x
43 3 )
⎩ a44
Iteraţia a III –a
⎧ (3) 1 ( 2)
⎪ x1 = a (b − a12 x2 − a1 3x (32) − a1 4x (42) )
⎪ 11
⎪ x (3) = 1 (b − a x ( 3) ⎛ 0.875 ⎞
21 1 − a 23x (32) − a 24x (42) ) ⎜ ⎟
⎪ 2 a22 (3) ⎜ 0.90278 ⎟
⎨ rezultă x = ⎜
⎪ x3(3) =
1
(b − a 31x (13) − a 32x (23) − a 34x (42) ) 0.93981 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.96991 ⎟
⎝ ⎠
⎪ (3) 1
⎪ x4 = (b − a 41x (13) − a 42x (23) − a 43x (33) )
⎩ a 44
Iteraţia a IV –a
⎧ ( 4) 1 ( 3)
⎪ x1 = a (b − a12 x2 − a1 3x (33) − a1 4x (43) )
⎪ 11
⎪ x ( 4) = 1 (b − a x ( 4) ⎛ 0.95139 ⎞
21 1 − a 23x (33) − a 24x (43) ) ⎜ ⎟
⎪ 2 a22 ( 4) ⎜ 0.96373 ⎟
⎨ rezultă x = ⎜
⎪ x3( 4) =
1
(b − a 31x (1 4) − a 32x (24) − a 34x (43) ) 0.97788 ⎟
⎜ ⎟
⎪ a33 ⎜ 0.98894 ⎟
⎝ ⎠
⎪ ( 4) 1
⎪ x4 = (b − a 41x (1 4) − a 42x (24) − a 43x (34) )
⎩ a 44
Iteraţia a V –a
Sisteme de ecuaţii liniare 57

⎧ ( 5) 1 ( 4)
⎪ x1 = a (b − a12 x2 − a1 3x (34) − a1 4x (44) )
⎪ 11
⎪x =
( 5) 1 ⎛ 0.98187 ⎞
(b − a 21x (15) − a 23x (34) − a 24x (44) ) ⎜ ⎟
⎪ 2 a22 (5) ⎜ 0.98658 ⎟
⎨ rezultă x = ⎜ ⎟ .
1 0.99184
⎪ x3(5) = (b − a 31x (15) ( 5) ( 4)
− a 32x 2 − a 34x 4 ) ⎜ ⎟
⎪ a33 ⎜ 0.99592 ⎟
⎝ ⎠
⎪ (5) 1
⎪ x4 = (b − a 41x (15) − a 42x (25) − a 43x (35) )
⎩ a 44

Teorema 1. Dacă matricea A este simetrică şi pozitiv definită, procesul iterativ


Gauss –Seidel este convergent.
Demonstraţia rezultă din analiza descreşterii funcţiei pătratice F prin trecerea de
la o iteraţie la alta. O altă demonstraţie se bazează pe faptul că se poate arăta că
dacă A este simetrică şi pozitiv definită, atunci ρ ( M ) < 1 şi conform Teoremei 2
din §7, procesul iterativ este convergent.

§1.11. Metoda suprarelaxării

Pentru sisteme mari de ecuaţii, procesul iterativ Gauss –Seidel converge


lent, deoarece raza spectrală ρ (M ) este în vecinătatea lui 1.
Metoda suprarelaxării este o generalizare a metodei Gauss –Seidel, care
constă în introducerea unui parametru ω în vederea accelerării convergenţei. Ca şi
în metoda Gauss –Seidel, direcţia de relaxare urmează ciclic direcţiile e1, e2 , ..., en
dar se înlocuieşte tmin cu t=ω⋅tmin. Exemplificăm metoda pe cazul particular al
unui sistem de trei ecuaţii. Fie v(0) vectorul de probă iniţial. După un ciclu în care
direcţia de relaxare urmează succesiv direcţiile e1, e2 , e3 obţinem vectorul v(1)
de componente:
⎧ (1) (0)
⎪v1 = v1 −
ω
a11
( )
a11v1( 0 ) + a12 v2( 0 ) + a13v3( 0 ) − b1

⎪⎪ ( 1 ) (0)
⎨v2 = v2 −
ω
a22
( )
a21v1( 1 ) + a22 v2( 0 ) + a23v3( 0 ) − b2 (1)

⎪ (1) (0)
⎪v3 = v3 −
⎪⎩
ω
a33
( )
a31v1( 1 ) + a32 v2( 1 ) + a33v3( 0 ) − b3

Dacă ω = 1, obţinem din nou formulele (1) din §10. După efectuarea calculelor
rezultă:
58 Bazele Analizei Numerice

⎧ω-1a v( 1 ) + ( 1 − ω −1 )a v( 0 ) + a v( 0 ) + a v( 0 ) = b
11 1 11 1 12 2 13 3 1

⎪ (1 ) -1 ( 1 ) −1 (0) (0)
⎨a21v1 + a22 ω v2 + ( 1 − ω )a22 v2 + a23v3 = b2 (2)
⎪ (1) (1 ) -1 ( 1 ) −1 (0)
⎪a31v1 + a32v2 +a33ω v3 + ( 1 − ω )a33v3 = b3

Dacă introducem notaţiile
⎛ 0 0 0⎞ ⎛ a11 0 0 ⎞
⎜ ⎟ ⎜ ⎟
E = ⎜ a 21 0 0 ⎟ , D = ⎜ 0 a 22 0 ⎟ şi F=ET ,
⎜a ⎟ ⎜ 0 0 a33 ⎟⎠
⎝ 31 a32 0 ⎠ ⎝
relaţiile (2) capătă forma matricială
(E+ω –1D)v(1) + [F+(1 –ω –1)D]v(0) = b . (3)
În general, pentru un sistem de n ecuaţii, şirul de vectori v(m) satisface relaţia:
(E+ω –1D) v(m+1) + [F+(1 –ω –1)D] v(m) = b . (4)
În continuare avem
v(m+1)= – (E+ω –1D) –1 [F+(1 –ω –1)D] v(m)+ (E+ω –1D) –1b .
Notăm cu
⎪ [ ]
⎧M (ω) = −( E + ω −1 D) −1 F + (1 − ω −1 ) D
. (5)
[ ]
⎨ −1
⎪⎩C (ω) = E + ω −1 D b
Obţinem astfel procesul iterativ
v(m+1) =M(ω )v(m) + C(ω) . (6)
Pentru ω = 1 obţinem algoritmul Gauss –Seidel (vezi (4), (5), (6) din
§10).
Parametrul optim, ωopt, va fi acela pentru care raza spectrală a matricei
M(ω) va fi minimă. Evident, pentru acest parametru se obţine cea mai rapidă
convergenţă.
Se poate demonstra următoarea teoremă.

Teorema 1. Dacă matricea A este simetrică şi pozitiv definită, metoda


suprarelaxării este convergentă pentru orice 0 < ω < 2.
În particular, rezultă că metoda Gauss –Seidel este convergentă dacă A
este simetrică şi pozitiv definită, deoarece corespunde cazului particular ω = 1.
Determinarea parametrului optim, ωopt, este posibilă în cazul matricelor
bloc tridiagonale.

Definiţia 1. O matrice A se numeşte bloc tridiagonală, dacă are următoarea


structură:
Sisteme de ecuaţii liniare 59

⎛ D1 F1 0 0 L 0 ⎞
⎜ ⎟
⎜ E1 D2 F2 0 L 0 ⎟
⎜ 0 E 0 ⎟
2 D3 F3 L
A =⎜ ⎟,
⎜ M O M ⎟
⎜ ⎟
⎜ 0 L Em− 2 Dm−1 Fm−1 ⎟
⎜ 0 L 0 Em−1 Dm ⎟⎠

unde Di sunt matrice pătratice de diferite ordine, Ek şi Fk sunt, în general,
matrice dreptunghiulare. Fk are acelaşi număr de linii ca matricea Dk şi acelaşi
număr de coloane ca matricea Dk+1. Ek are acelaşi număr de linii cu Dk+1 şi
acelaşi număr de coloane cu Dk. În afara matricelor care intră în bandă, toate
elementele sunt nule. Dacă, în plus, matricele Di sunt diagonale, A se numeşte
diagonal bloc tridiagonală.

Prezentăm de asemenea fără demonstraţie următoarea teoremă.


Teorema 2. Fie A o matrice simetrică, pozitiv definită şi diagonal tridiagonală.
2
Atunci parametrul optim de relaxare este dat de relaţia ω opt = , unde
2
1 + 1 − λ1
λ1 este cea mai mare valoare proprie a matricei – D –1(E+F) .

Exemplu. Fie sistemul Ax = b din exemplul din paragraful precedent, care are
matricea diagonal bloc tridiagonală
⎛ 2 −1 0 0⎞ ⎛ 0 −1 0 0⎞
⎜ ⎟ ⎜ ⎟
⎜ −1 3 −1 0⎟ ⎜ −1 0 −1 0 ⎟
A=⎜ , E+F =⎜ ,
0 − 1 3 − 1⎟ 0 − 1 0 − 1⎟
⎜ ⎟ ⎜⎜ ⎟
⎜ 0 0 −1 2⎟
⎝ ⎠ ⎝0 0 − 1 0 ⎟⎠
⎛ 1 ⎞
⎜0 0 0⎟
⎜ 2 ⎟
⎛ 2 0 0 0⎞
⎜ ⎟ ⎜1 0 1 0⎟
⎜0 3 0 0⎟ ⎜ ⎟
D=⎜ ⎟ , − D −1 ( E + F ) = ⎜ 3 3
⎟.
0 0 3 0 1 1
⎜ ⎟ ⎜ 0 0 ⎟
⎜ 0 0 0 2⎟ ⎜ 3 3⎟
⎝ ⎠
⎜⎜ 0 0 1 0 ⎟⎟
⎝ 2 ⎠
Ecuaţia caracteristică este
60 Bazele Analizei Numerice

1
−λ 0 0
2
1 1
−λ 0
3 3 =0,
1 1
0 −λ
3 3
1
0 0 −λ
2
care este echivalentă cu
2λ −1 0 0
− 1 3λ − 1 0
= 36 λ 4 + 16 λ 2 + 1 = 0 .
0 − 1 3λ − 1
0 0 −1 2λ

4± 7
Rezultă λi = ± şi λ1 =0.60763 .
18
2
Parametrul optim de relaxare ωopt = =1.11469 .
1+ 1 − λ12
Procedeul iterativ x (m+1)
=M(ω )x + C(ω) , unde
(m)

⎛ − 0.11469 0.55734 0 0 ⎞ ⎛ 0.55734 ⎞


⎜ ⎟ ⎜ ⎟
⎜ − 0.04261 0.0924 0.37156 0 ⎟ ⎜ 0.57865 ⎟
M (ω ) = ⎜ , C (ω ) = ⎜ ,
− 0.01583 0.03433 0.02337 0.37156 ⎟ 0.58657 ⎟
⎜ ⎟ ⎜ ⎟
⎜ − 0.00882482 0.01913 0.01303 0.0924 ⎟ ⎜ 0.88426 ⎟
⎝ ⎠ ⎝ ⎠
conduce la următoarele valori ale vectorului soluţiilor pentru primele cinci iteraţii:
⎛ 0.55734 ⎞ ⎛ 0.81593 ⎞ ⎛ 0.92431 ⎞ ⎛ 0.99166 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(1) ⎜ 0.57865 ⎟ ( 2) ⎜ 0.82631 ⎟ (3) ⎜ 0.96946 ⎟ ( 4) ⎜ 0.99595 ⎟
x =⎜ , x =⎜ , x =⎜ , x =⎜ ,
0.58657 ⎟ 0.93988 ⎟ 0.98803 ⎟ 0.99825 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 0.88426 ⎟ ⎜ 0.97976 ⎟ ⎜ 0.99565 ⎟ ⎜ 0.99953 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠

⎛ 0.9987 ⎞
⎜ ⎟
(5) ⎜ 0.99933 ⎟
x =⎜ .
0.99978 ⎟
⎜ ⎟
⎜ 0.99993 ⎟
⎝ ⎠
Sisteme de ecuaţii liniare 61

§1.12. Metoda gradienţilor conjugaţi

Fie sistemul Ax=b, unde A este simetrică şi pozitiv definită.

Definiţia 1. Spunem că direcţiile p şi q sunt direcţii conjugate în raport cu


matricea A dacă Ap,q = p,Aq = 0 .

Fie v(0) un vector de probă şi r(0)=Av(0) – b vectorul rezidual


corespunzător. În metoda gradienţilor conjugaţi pentru rezolvarea sistemului
Ax=b, prima direcţie de relaxare se alege p(1) = – r(0) . În continuare avem:
r ( 0 ) ,p (1) r (0) ,r (0)
t min = − = , (1)
Ap (1) ,p (1) Ap (1) ,p (1)
v(1) = v(0) + q1p(1) , (2)
unde
r (0) ,p (1)
q1 = t min = − (3)
Ap (1) ,p (1)
Valoarea minimă a funcţiei F=F(v), când v parcurge dreapta ce trece
prin v(0) şi are direcţia p(1)= – r(0) este v(1).

Fie
r(1)=gradF(v(1))=Av(1) – b.
Din Observaţia 1 din §8 rezultă că
r (1) ,p (1) = − r (1) ,r (0) = 0 . (4)
Următoarea direcţie de relaxare p(2) se alege de forma p(2)= – r(1)+c1p(1) şi în plus
să fie conjugată direcţiei p(1) în raport cu A.
Aşadar, avem:
0 = Ap (2) ,p (1) = p (2) ,Ap (1) = − r (1) ,Ap (1) + c1 Ap (1) ,p (1)
de unde rezultă
r (1) ,Ap (1)
c1 = . (5)
Ap (1) ,p (1)
Avem de asemenea
62 Bazele Analizei Numerice

r (1) ,p (2)
(2) (1) (2) (1)
v =v + t min p =v − p (2) . (6)
(2) (2)
Ap ,p
În general, pentru orice k≥2 obţinem
r ( k −1) ,Ap ( k −1)
ck-1 = , (7)
Ap ( k −1) ,p ( k −1)

p ( k ) = − r ( k −1) + ck −1 p ( k −1) , (8)


r ( k −1) ,p ( k )
qk = − , (9)
Ap ( k ) ,p ( k)

vk = v ( k −1) + qk p ( k ) . (10)
Metoda gradienţilor conjugaţi este definită de formulele (7) – (10).
În continuare prezentăm unele simplificări şi proprietăţi suplimentare.
Deoarece r(k –1) este ortogonal pe direcţia p(k –1) rezultă
r ( k −1) , p ( k ) = r ( k −1) ,− r ( k −1) + c k −1 p ( k −1) = − r ( k −1) , r ( k −1)
şi deci
r ( k −1) ,r ( k −1)
qk = >0. (9’)
Ap ( k ) ,p ( k )
Pe de altă parte, din (10) avem
r ( k ) = Av ( k ) − b = Av ( k −1) + qk Ap ( k ) − b = r ( k −1) + qk Ap ( k ) .
Obţinem deci următoarea relaţia de recurenţă
r ( k ) = r ( k −1) + qk Ap ( k ) . (11)
Observăm că
r ( k ) ,r ( k −1) = 0 . (12)
Într –adevăr, din (11) rezultă
r ( k ) , r ( k −1) = r ( k −1) , r ( k −1) + q k r ( k −1) , Ap ( k ) . (13)
Pe de altă parte, ţinând seama de (8), de (9’) şi de faptul că p(k) şi p(k –1) sunt
A – conjugate, rezultă
r ( k −1) , Ap ( k )
(k −1 ) ( k −1) ( k −1)
qk r ,Ap (k)
= r ,r = − r ( k −1) , r (k −1 )
(k ) ( k −1) ( k −1)
Ap ,− r + c k −1 p
.
Din (13) şi (14) rezultă acum (12) .
Sisteme de ecuaţii liniare 63

Deoarece Ap(k) oricum trebuie calculat, rezultă că vectorul rezidual r(k) se


va calcula din relaţia de recurenţă (11) şi nu prin înlocuirea directă a lui v(k) în
expresia Av=b.
În continuare vom stabili o altă formulă pentru coeficientul ck –1.
Din (11) şi (12) rezultă

r ( k −1) ,Ap ( k −1) = r (k −1) ,


1
qk −1
(r ( k −1)
)
− r ( k − 2) =
1
qk −1
r ( k −1) ,r ( k −1) .

Ţinând seama de (7) şi de (9’) obţinem


r (k −1 ) ,Ap(k −1 ) r (k −1 ) ,r (k −1 )
ck −1 = = .
Ap(k −1 ) ,p(k −1 ) r (k −2 ) ,r (k −2 )

Algoritm pentru rezolvarea sistemelor de ecuaţii liniare cu metoda gradienţilor


conjugaţi
Calculează
r ( 0 ) = Av( 0 ) − b ; p ( 1 ) = − r ( 0 ) ;
r ( 0 ) ,r ( 0 )
q1 = ; v( 1 ) = v( 0 ) + q1 p( 1 ) ; r ( 1 ) = r ( 0 ) + q1 Ap( 1 ) ;
(1) (1)
Ap ,p
Pentru k:=2,n calculează
r (k −1 ) ,r (k −1 )
ck −1 = ; p(k) = −r (k −1 ) + ck −1 p(k −1 ) ;
(k − 2 ) (k − 2 )
r ,r

r (k −1 ) ,r (k −1 )
qk = ; v(k) = v(k −1 ) + qk p(k) ; r (k) = r (k −1 ) + qk Ap(k) ;
(k) (k)
Ap ,p
sfârşit pentru k .
În Mathcad algoritmul de mai sus este aplicat unui exempu.
64 Bazele Analizei Numerice

Metoda gradientilor conjugati

Folosind metoda gradientilor conjugati sa se gaseasca solutia sistemului de ecuatii liniare Ax=b
0
5 1 1 1 6
0
1 6 2 2 7 Vectorul de proba x n 4
A b 0
1 2 7 1 9
0
1 2 1 8 8

Algoritmul metodei gradientilor conjugati

< 0>
GrCon( A , b , x, n ) r A .x b
< 0>
p r
< 0> . < 0>
r r
q
A p .p
.
x x q .p
< 1> < 0>
r r q .A .p
for k ∈ 2 .. n
<k 1> . r< k 1>
r
c
<k 2> . r< k 2>
r
<k 1>
p r c .p
<k 1> . r< k 1>
r
q
A .p .p
x x q .p
< k> <k 1>
r r q .A .p
x

Apelarea programului si afisarea rezultatelor

1
1
GrCon( A , b , x, n ) =
1
1
Sisteme de ecuaţii liniare 65

Teorema 1. În metoda gradienţilor conjugaţi direcţiile de relaxare p(k),


(k=1,2,...) sunt conjugate două câte două în raport cu matricea A, iar vectorii
reziduali r(k), (k=0,1,...) sunt ortogonali doi câte doi.
Demonstraţie.
Demonstraţia se face prin inducţie relativ la k . Pentru k=1 avem r (1) , r (0) = 0
din (4), iar pentru prima afirmaţie nu avem ce arăta. Ipoteza de inducţie este:
r (i ) , r ( j ) = 0 pentru i≠j , 0≤i, j≤k , (15)

p (i ) , Ap ( j ) = 0 pentru i≠j , 1≤i≤j≤k . (16)


Va trebui să arătăm că
r (k +1 ) ,r (j) = 0 , pentru j = 0 ,k (17)

p ( k +1) , Ap ( j ) = 0 , pentru j = 1,k . (18)


Fie j=k, atunci
p ( k +1) , Ap ( k ) = Ap (k +1 ) ,p (k) = 0
deoarece pk şi pk+1 sunt A –conjugate.
Fie 1≤j<k , atunci
p(k+1 ),Ap(j) = -r +ck p ,Ap
(k) (k) (j)
= − r (k),Ap(j) ,

deoarece p(k),Ap(j) = 0 conform ipotezei (16).


Pe de altă parte,
Ap(j) =
qj
(
1 (j) (j-1 )
r -r )
şi din (15) rezultă r (k) ,Ap(j) = 0 .
Aşadar am demonstrat (18).
Pentru j=k, (17) este adevărată din (12).
Fie 0≤j<k. Din (11) şi (15) rezultă:
r (k +1 ) ,r (j) = r (k)+q k+1 Ap (k+1 ) ,r (j) = q k +1 Ap ( k +1) , r ( j ) =

= q k +1 Ap (k+1 ) ,-p (j) + c j −1 p (j −1 )

Ţinând seama de (18) şi de faptul că A este simetrică, rezultă r (k +1 ) ,r (j) = 0 şi


cu aceasta teorema este demonstrată. ‰

Din Teorema 1 rezultă că vectorii reziduali r(k) sunt ortogonali doi câte
doi şi deci sunt liniar independenţi (dacă sunt nenuli). Aşadar, nu pot exista (n+1)
vectori reziduali nenuli. Rezultă că în metoda gradienţilor conjugaţi soluţia exactă
66 Bazele Analizei Numerice

se găseşte în cel mult n paşi. Teoretic ar trebui ca vectorul rezidual r(n) să fie zero
şi deci v=v(n) să fie soluţia exactă a sistemului.
În practică acest lucru nu se întâmplă, deoarece în determinarea vectorilor
r(k) intervin erori de calcul, care fac ca aceştia să nu formeze un sistem ortogonal.
Deoarece în general r(n)≠0, continuăm să calculăm r(k), k>n până obţinem un
vector rezidual nul sau foarte mic ⎛⎜ r (k) <<1⎞⎟ . Această atitudine se justifică
⎝ ⎠
prin faptul că metoda gradienţilor conjugaţi este o metodă de relaxare prin care
valoarea funcţiei pătratice F=F(v) se micşorează la fiecare pas.
Metoda gradienţilor conjugaţi se dovedeşte foarte utilă pentru sistemele în
care matricea A are multe zerouri şi fiecare ecuaţie are o anumită regularitate
internă.
Astfel de sisteme apar în procesul de discretizare a problemei la limită a
ecuaţiilor cu derivate parţiale de tip eliptic.

§1.13. Metoda celor mai mici pătrate

În procesul de prelucrare şi ajustare a datelor, apar sisteme de ecuaţii


liniare supradimensionate sau subdimensionate. Abordăm pentru început problema
sistemelor supradimensionate. Fie sistemul
⎧a11 x1 +...+ a1n xn = b1

⎨.......................... , m>n . (1)
⎪a x +...+ a x = b
⎩ m1 1 mn n m

Evident, un asemenea sistem poate să nu aibă soluţie. Fie


r = Ax − b = (r1, r2 , ..., rm )T (2)
vectorul rezidual , unde
ri = ai1 x1 +...+ ain xn − bi , i = 1, m .

Considerăm funcţia pătratică


f(x) = f(x1,...,xn ) = r,r = r12 + r22 +...+ rm2 (3)

Definiţia 1. Se numeşte soluţie în sensul celor mai mici pătrate a sistemului (1),
acel vector x* , pentru care funcţia (2) are valoarea minimă.

Dacă: min f(x) = f(x* ) = 0 , atunci ri(x*)=0, pentru orice i = 1, m . Rezultă că


x∈R n
sistemul (1) este compatibil şi x=x* este soluţia exactă a sa.
Sisteme de ecuaţii liniare 67

În general, sistemul (1) nu este compatibil şi min f(x) = f(x* ) > 0 , iar x=x*
n
x∈R
este un substitut pentru soluţia sistemului şi anume soluţia în sensul celor mai
mici pătrate.
Funcţia f se poate pune sub forma
f(x)= r,r = Ax-b,Ax-b = Ax,Ax − 2 Ax,b + b,b
şi mai departe
f(x)= AT Ax,x − 2 AT b,x + b,b (4)

Teorema 1. Dacă rangA = n, atunci sistemul (1) admite o singură soluţie în


sensul celor mai mici pătrate şi aceasta este soluţia (unică) a sistemului.
AT Ax=AT b (5)
(Sistemul (5) se numeşte sistemul normal al lui Gauss).
Demonstraţie.
Punctele de extrem ale funcţiei pătratice f dată de (4), se caută printre
punctele sale critice, iar acestea, se află rezolvând sistemul:
grad f = 0
Cum grad f=ATAx –ATb, obţinem sistemul ATAx=ATb. Pe de altă parte se ştie că:
( )
rang A=rang AT =rang AT A =rang AAT . ( )
Matricea B=ATA este o matrice pătratică de ordinul n şi rangB=n,
conform celor de mai sus. Rezultă că sistemul (5) admite o soluţie unică, x=x*,
care este punct critic pentru f.
Matricea B este evident simetrică şi semipozitiv definită. Mai mult, în
ipoteza noastră, matricea B este pozitiv definită. Într –adevăr, dacă presupunem că
Bx,x = 0 , atunci rezultă Ax,Ax = 0 şi deci Ax=0. Cum rang A=n<m
rezultă x=0.
Pe de altă parte avem
n n
d 2 f(x) = ∑ ∑ bij dxi dx j > 0 ,
i =1 j =1
*
de unde rezultă că x=x este punct de minim pentru f şi cu aceasta teorema este
demonstrată. ‰

Aşadar, în ipoteza rangA=n, soluţia sistemului (1), în sensul celor mai


mici pătrate, este unică şi se află rezolvând sistemul (5). Acest sistem este simetric
pozitiv definit. Rezolvarea sa se poate face prin metoda Cholesky sau una din
metodele de relaxare.

Observaţia 1. Teoretic, soluţia sistemului (5) este x*=(ATA) –1ATb. Matricea


P=(ATA) –1AT se numeşte pseudoinversa matricei (dreptunghiu –lare) A.
68 Bazele Analizei Numerice

Se observă că dacă A este pătratică, atunci P=A –1(AT) –1AT=A –1, deci
noţiunea de matrice pseudoinversă generalizează noţiunea de matrice inversă
(pentru matrice dreptunghiulare).
Rezolvarea practică a sistemului (5) ridică probleme din cauza faptului că numărul
de condiţionare al matricei B=ATA este mare. Fie λ1 ≥ λ2 ≥...≥ λn > 0 valorile
proprii ale matricei B. Atunci:
λ
cond(B) = 1 . (6)
λn
Cum
Bx,x Bx,x
λ1 = sup ≥ max Bei ,ei = maxbii şi λn = inf ≤ min Bei ,ei = minbii ,
x≠0 x,x i i x≠0 x,x i i
rezultă
maxbii
cond( B) ≥ . (7)
minbii

Exemplul 1. (Dreapta de regresie)


Să presupunem că vrem să găsim o dreaptă y=mx+n care să treacă prin punctele:
M1(0,0) ; M2(2,1) ; M3(5,3) ; M4(8,5) ; M6(10,6)
Se obţine astfel sistemul
⎧0 ⋅ m+n=0
⎪2 ⋅ m+n=1
⎪⎪
⎨5 ⋅ m+n=3 . (8)
⎪8 ⋅ m+n=5

⎪⎩10 ⋅ m+n=6
Evident, sistemul (8) este supradimensionat şi incompatibil. Avem:
⎛ 0 1⎞ ⎛ 0⎞
⎜ ⎟ ⎜ ⎟
⎜ 2 1⎟ ⎜1⎟
⎛193 25 ⎞ ⎛117 ⎞
A = 5 1 ; b = ⎜ 3 ⎟ ; B = AT A = ⎜⎜
⎜ ⎟ ⎟⎟ ; AT b = ⎜⎜ ⎟⎟ .
⎜ ⎟ ⎜ ⎟ ⎝ 25 5 ⎠ ⎝ 15 ⎠
⎜ 8 1⎟ ⎜ 5⎟
⎜ ⎟ ⎜ ⎟
⎝10 1⎠ ⎝ 6⎠
Ecuaţiile normale ale lui Gauss sunt
⎧193m + 25n = 117
⎨ .
⎩25m + 5n = 15
21 3
Soluţia exactă este m= ,n = − , iar valorile proprii sunt λ1 = 196.268 şi
34 34
λ2 = 1.732 . Rezultă cond( B ) ≅ 113 . Dacă folosim estimarea (7) obţinem
Sisteme de ecuaţii liniare 69

maxbii 193
= = 38,6 .
minbii 5
21 3
Dreapta de regresie în acest caz este: y= x − . Această dreaptă nu trece
34 34
prin punctele Mi, dar este acea dreaptă din plan care trece cel mai aproape de
aceste puncte.
Să presupunem că vrem să determinăm dreapta de regresie corespunzătoare
punctelor M i ( xi ,yi ) , i = 1,n .
Matricele
⎛ 1 1⎞ ⎛ n(n + 1)(2n + 1) n(n + 1) ⎞
⎜ ⎟ ⎜ ⎟
⎜ 2 1⎟ T ⎜ 6 2 ⎟
A=⎜ şi B = A A =
M M⎟ ⎜ n(n + 1)
n ⎟⎟
⎜⎜ ⎟⎟ ⎜
⎝ n 1⎠ ⎝ 2 ⎠
conduc la
max bii (n + 1)(2n + 1) n 2
= > .
min bii 6 3
Pentru n=100, cond(B)>13333, deci sistemul normal al lui Gauss este prost
condiţionat.

Sistemele subdimensionate apar în probleme legate de ajustarea datelor. Să


presupunem că măsurând n cantităţi x1, x2, ... , xn, găsim valorile l1, l2, ... , ln. Pe
de altă parte, necunoscutele x1, x2, ... , xn satisfac anumite ecuaţii şi anume
⎧a11 x1 + ... + a1n xn = b1

⎨........................ , m<n . (9)
⎪a x + ... + a x = b
⎩ m1 1 mn n m
Datorită lipsei de acurateţe a măsurătorilor se pune condiţia ca suma
n
∑ (li − xi ) să fie minimă. Se obţine astfel o problemă de
2
pătratelor corecţiilor
i =1
extrem cu legături.

Exemplul 2.
Să presupunem că măsurând unghiurile x1, x2, x3 ale unui triunghi găsim
valorile l1, l2, l3. Evident avem legătura
x1+ x2+ x3 = 180° .
Impunem condiţia ca abaterile datorate impreciziei măsurătorilor să fie cât mai
mici, deci ca expresia
(x1 − l1 )2 + (x2 − l2 )2 + (x3 − l3 )2
să fie minimă.
70 Bazele Analizei Numerice

Revenind la cazul general, se pune problema să determinăm n necunoscute x1, x2,


... , xn care satisfac legăturile (9) şi care minimizează funcţia:
f(x1,...,xn ) = (x1 − l1 )2 + ... + (xn − ln )2 .
Considerăm funcţia auxiliară
Φ ( x1 ,..., xn , λ1 ,..., λm ) = ( x1 − l1 ) 2 + ... + ( xn − ln ) 2 −
− 2λ1 (a11x1 + ... + a1n xn − b1 )... − 2λm (am1x1 + ... + amn xn − bm )
Punctele critice ale funcţiei φ sunt date de sistemul
⎧ x1 − l1 − (a11λ1 + ... + am1λm ) = 0

⎪............................................
⎪⎪ xn − ln − (a1n λ1 + ... + amn λm ) = 0
⎨ . (10)
⎪a11 x1 + ................. + a1n xn − b1 = 0
⎪................................................

⎪⎩am1x1 + ................. + amn xn − bm = 0
Dacă notăm cu l = (l1 ,..., ln )T şi cu λ = (λ1 ,..., λm )T , atunci sistemul (10) se
scrie sub forma matricială
x = AT λ + l (10’)
Ax = b (10’’)
Înlocuind (10’) în (10’’) obţinem sistemul
AAT λ = b − Al . (11)
T
Dacă rang A = m , atunci rang ( AA ) = m şi sistemul (11) are soluţie unică. Mai
mult, matricea AAT este pătratică, simetrică şi pozitiv definită, deci rezolvarea
sistemului (11) se poate face cu metoda Cholesky sau una din metodele de relaxare.
Rezolvând sistemul (11) găsim multiplicatorii lui Lagrange λ1 ,..., λm , iar din
relaţia x = AT λ + l determinăm punctul de minim condiţionat al funcţiei f.
(Cum d 2φ = 2(dx12 + ... + dxn2 ) > 0 rezultă că avem într –adevăr un punct de
minim).

Exerciţii
Sisteme de ecuaţii liniare 71

Folosind metoda Gauss să se rezolve următoarele sisteme de ecuaţii liniare:


⎧ 6 x1 + x2 − x3 + x4 =2
⎪ x + 7x + 2x − x = −1
⎪ 1 2 3 4
1. ⎨
⎪− x1 + 2 x2 + 8 x3 + x4 = 12
⎪⎩ x1 − x2 + x3 + 9 x4 = −5
⎛1.0 0.1667 − 0.1667 0.1667 ⎞
⎜ ⎟
~ ⎜ 0 1.0 0.3171 − 0.1707 ⎟
R. Matricea triunghiulară A = ⎜ ,
0 0 1.0 0.2150 ⎟
⎜ ⎟
⎜ 0 0 0 1.0 ⎟⎠

⎛ 0 .333 ⎞
⎜ ⎟
~ ⎜ − 0 .1951 ⎟
vectorul termenilor liberi transformat b = ⎜ .
1 .7850 ⎟
⎜ ⎟
⎜ − 1 .0 ⎟
⎝ ⎠
⎛ 1⎞
⎜ ⎟
⎜ − 1⎟
Soluţia sistemului x = ⎜ ⎟ .
2
⎜ ⎟
⎜ − 1⎟
⎝ ⎠
⎧4 x1 + x2 − x3 + x4 =1
⎪x + 8x + x + x =7
⎪ 1 2 3 4
2. ⎨
⎪ x1 + x2 + 6 x3 + x4 = −10
⎪⎩ x1 + x2 + x3 + 7 x4 = 12
⎛1.0 0.2500 − 0.2500 0.2500 ⎞
⎜ ⎟
~ ⎜ 0 1 .0 0.1613 0.0968 ⎟
R. Matricea triunghiulară A = ⎜ ,
0 0 1 .0 0.1105 ⎟
⎜ ⎟
⎜ 0 0 0 1.0 ⎟⎠

⎛ 0.2500 ⎞
⎜ ⎟
~ ⎜ 0.8710 ⎟
vectorul termenilor liberi transformat b = ⎜ .
− 1.7789 ⎟
⎜ ⎟
⎜ 2 .0 ⎟
⎝ ⎠
Soluţia sistemului x = (–1 1 –2 2)’.
72 Bazele Analizei Numerice

⎧ 5 x1 + x2 + x3 + x4 = 14
⎪ x + 8x + 2 x + x = 127
⎪ 1 2 3 4
3. ⎨
− x
⎪ 1 2 + x + 6 x3 − x 4 = 15
⎪⎩ x1 + x2 + x3 + x4 = 10
⎛1.0 0.2000 − 0.2000 0.2000 ⎞
⎜ ⎟
~ ⎜ 0 1 .0 0.2308 0.1026 ⎟
R. Matricea triunghiulară A = ⎜ ,
0 0 1 .0 − 0.1558 ⎟
⎜ ⎟
⎜ 0 0 0 1.0 ⎟⎠

⎛ 2.8000 ⎞
⎜ ⎟
~ ⎜ 3.1026 ⎟
vectorul termenilor liberi transformat b = ⎜ .
2.3766 ⎟
⎜ ⎟
⎜ 4 .0 ⎟
⎝ ⎠
Soluţia sistemului x = (1 2 3 4)’.

Să se rezolve următoarele sisteme de ecuaţii liniare folosind metoda


Cholesky:
⎧10 x1 + x2 − x3 − x4 =9
⎪x + 9x + x − x = −6
⎪ 1 2 3 4
4. ⎨
⎪− x1 + x2 + 11x3 + x4 = 8
⎪⎩− x1 − x2 + x3 + 8 x4 = −7
⎛ 3.1623 0 0 0 ⎞
⎜ ⎟
T ⎜ 0.3162 2.9833 0 0 ⎟
R. R =⎜ . Soluţia sistemului
− 0.3162 0.3687 0.32809 0 ⎟
⎜ ⎟
⎜ − 0.3162 − 0.3017 0.3082 2.7774 ⎟
⎝ ⎠
⎛ 2.846 ⎞
⎜ ⎟
T ⎜ − 2.3129⎟
R y=b este y = ⎜ , iar cea a sistemului Rx=y , şi deci soluţia
2.9726 ⎟
⎜ ⎟
⎜ − 2.7774⎟
⎝ ⎠
⎛ ⎞
1
⎜ ⎟
⎜−1⎟
sistemului iniţial este x =⎜ ⎟ .
1
⎜ ⎟
⎜−1⎟
⎝ ⎠
Sisteme de ecuaţii liniare 73

⎧8 x1 − x2 − x3 + x4 =7
⎪− x + 6 x + x − 2 x =6
⎪ 1 2 3 4
5. ⎨

⎪ 1 2x + x + 7 x3 + x 4 = −8
⎪⎩ x1 − 2 x2 + x3 + 9 x4 = −11

⎛ 2.82843 0 0 0 ⎞
⎜ ⎟
T ⎜ − 0.35355 2.42384 0 0 ⎟
R. R =⎜ .
− 0.35355 0.361 2.59705 0 ⎟
⎜ ⎟
⎜ 0.35355 − 0.77357 0.54071 2.82564 ⎟
⎝ ⎠

⎛ 2.47487 ⎞
⎜ ⎟
T ⎜ 2.83641 ⎟
Soluţia sistemului R y=b este y = ⎜ iar cea a sistemului Rx=y , şi
− 3.13776⎟
⎜ ⎟
⎜ − 2.82564⎟
⎝ ⎠
⎛ 1⎞
⎜ ⎟
⎜ 1⎟
deci soluţia sistemului iniţial este x =⎜ ⎟ .
−1
⎜ ⎟
⎜−1⎟
⎝ ⎠

⎧6 x1 + x2 − 2 x3 − x4 = 19
⎪x + 5x + x − x = 15
⎪ 1 2 3 4
6. ⎨
⎪ − 2 x1 + x 2 + 11x3 − x4 =8
⎪⎩− x1 − x2 − x3 + 4 x4 = −10

⎛ 2.44949 0 0 0 ⎞
⎜ ⎟
T ⎜ 0.40825 2.19848 0 0 ⎟
R. R =⎜ .
− 0.8165 0.60648 3.15682 0 ⎟
⎜ ⎟
⎜ − 0.40825 − 0.37905 − 0.34954 1.88878⎟
⎝ ⎠

⎛ 7.75672 ⎞
⎜ ⎟
T ⎜ 5.3825 ⎟
Soluţia sistemului R y=b este y = ⎜ , iar cea a sistemului Rx=y , şi
3.50636 ⎟
⎜ ⎟
⎜ − 1.88878⎟
⎝ ⎠
deci soluţia sistemului iniţial este x= (3 2 1 –1)’.
74 Bazele Analizei Numerice

Folosind metoda Householder, să se rezolve sistemele:


⎧4 x1 + 3x2 − 2 x3 + x4 =2
⎪5 x + 6 x + 7 x − 8 x = −14
⎪ 1 2 3 4
7. ⎨
9
⎪ 1 x − 8 x 2 + 7 x3 − 6 x 4 = −30
⎪⎩ x1 + x2 − x3 − x4 =0
R. det(A)= –1112; descompunerea A=QR este dată de
⎛ 0.3607 − 0.3882 0.7877 − 0.3143⎞
⎜ ⎟
⎜ 0.4508 − 0.7068 − 0.5445 0.0257 ⎟
Q=⎜ ,
0.8115 0.5787 − 0.0784 0.02 ⎟
⎜ ⎟
⎜ 0.0902 − 0.1217 0.2774 0.9487 ⎟
⎝ ⎠
⎛11.0905 −2.6148 8.0249 −8.0249 ⎞
⎜ ⎟
⎜ 0 −10.1569 0.0016 1.9155 ⎟
R =⎜ .
0 0 −6.2130 5.83368⎟
⎜ ⎟
⎜ 0 0 0 −1.58889 ⎟⎠

⎛ 29.9354⎞
⎜ ⎟
⎜ − 8.2430⎟
Soluţia sistemului Qy=b este y = ⎜ ,
11.5498⎟
⎜ ⎟
⎜ −1.5888 ⎟
⎝ ⎠
iar cea sistemului Rx=y este x=(–1 1 –1 1)’.
⎧ x1 + 2 x2 − 3 x3 − 4 x4 = 16
⎪5 x − 6 x + 7 x − 8 x =2
⎪ 1 2 3 4
8. ⎨ .
⎪9 x1 + 8 x2 + 7 x3 + 6 x4 = 6
⎪⎩ 4 x1 − 3 x2 + 2 x3 − x4 = −2

R. det(A)= –2808; descompunerea A=QR este dată


⎛ 0.09017 0.17005 0.78843 − 0.58424 ⎞
⎜ ⎟
⎜ 0.45083 − 0.71359 − 0.2494 − 0.47469⎟
Q=⎜ ,
0.8115 0.55307 − 0.18504 0.03651⎟
⎜ ⎟
⎜ 0.36067 − 0.39494 0.53098 0.65727⎟
⎝ ⎠

⎛11.09054 2.88534 9.2872 0.541 ⎞


⎜ ⎟
⎜ 0 10.23107 − 2.42367 8.7419 ⎟
R =⎜ ⎟ .
0 0 − 4.3444 − 2.79972
⎜ ⎟
⎜ 0 0 0 5.69631 ⎟
⎝ ⎠
Sisteme de ecuaţii liniare 75

⎛ 6.49202 ⎞
⎜ ⎟
⎜ 5.40201⎟
Soluţia sistemului Qy=b este y = ⎜ ,
9.94384 ⎟
⎜ ⎟
⎜ − 11.39263 ⎟
⎝ ⎠
⎛ ⎞ 1
⎜ ⎟
⎜ 2⎟
iar cea sistemului Rx=y este x =⎜ ⎟ .
−1
⎜ ⎟
⎜−2⎟
⎝ ⎠
⎧4 x1 + 3x2 + 2 x3 + x4 = 2
⎪ x + 2 x + 3x + 4 x = −2
⎪ 1 2 3 4
9. ⎨ .
⎪9 x1 − 8 x2 + 6 x3 − 7 x4 = 30
⎪⎩ x1 − x2 + x3 − x4 =4

R. det(A)= –80 ; descompunerea A=QR este dată de


⎛ 0.40202 − 0.82257 0.3961 0.0697 ⎞
⎜ ⎟
⎜ 0.1005 − 0.39663 − 0.90448 − 0.12039⎟
Q=⎜ ,
0.90453 0.4028 − 0.05925 − 0.12673⎟
⎜ ⎟
⎜ 0.1005 0.06173 − 0.14663 0.98213 ⎟
⎝ ⎠

⎛ 9.94987 − 5.92972 6.63325 − 5.62821⎞


⎜ ⎟
⎜ 0 − 6.5451 − 0.3565 − 5.29041⎟
R=⎜ .
0 0 − 2.42341 − 2.66043⎟
⎜ ⎟
⎜ 0 0 0 − 0.50691⎟⎠

⎛ 28.14106 ⎞
⎜ ⎟
⎜ 11.47901 ⎟
Soluţia sistemului Qy=b este y=⎜ ,
0.23702 ⎟
⎜ ⎟
⎜ 0.50691 ⎟
⎝ ⎠
⎛ 1⎞
⎜ ⎟
⎜−1⎟
iar cea sistemului Rx=y este x =⎜ ⎟ .
1
⎜ ⎟
⎜−1⎟
⎝ ⎠
76 Bazele Analizei Numerice

⎛1 2 1 − 1⎞
⎜ ⎟
⎜2 1 − 1 3⎟
10. Pentru matricea A = ⎜ , să se calculeze:
2 1 − 1 1⎟
⎜ ⎟
⎜ 1 − 1 − 1 1⎟
⎝ ⎠
a) det(A) , A–1, det(A–1);
b) A 1, A 2, A∞; A−1 , A−1 , A−1 ;
1 2 ∞
c) cond1(A) , cond2(A) , cond∞(A) .
⎛ 0.6667 0 − 0.3333 1 ⎞
⎜ ⎟
−1 ⎜ − 0.3333 0 0.6667 − 1⎟
R. a) det(A)=6, A = ⎜ ,
1 0 .5 − 1.5 1⎟
⎜ ⎟
⎜ 0 0 .5 − 0.5 0 ⎟⎠

det(A–1)=–0.1667;
⎧ A 1 = 6, A 2 = 5.7446, A ∞ = 7 ;
⎪⎪
b) ⎨
⎪ A−1 = 3, A−1 = 2.848, A−1 = 4 .
⎪⎩ 1 2 ∞
c) cond1(A)=18, cond2(A)=12.7511, cond∞(A)=28 .

11. Să se calculeze:
a) det(A) , A–1, det(A–1);
b) A 1, A 2, A∞; A−1 , A−1 , A−1 ;
1 2 ∞
c) cond1(A) , cond2(A) , cond∞ (A)
⎛ 4 −1 5⎞
⎜ ⎟
pentru matricea A = ⎜ 3 2 − 2 ⎟ .
⎜6 1 3 ⎟⎠

⎛ 1 1 −1 ⎞
−1 ⎜ ⎟
R. a) det(A)=8, A = ⎜ − 2.625 − 2.25 2.875 ⎟ , det(A–1)=0.125 ;
⎜ − 1.125 − 1.25 1.375 ⎟
⎝ ⎠
⎧ A 1 = 6, A 2 = 5.7446, A ∞ = 7 ;
⎪⎪
b) ⎨
⎪ A−1 = 3, A−1 = 2.848, A−1 = 4 .
⎩⎪ 1 2 ∞
c) cond1(A)=68.25, cond2(A)=48.28525, cond∞ (A)=77.5 .
Folosind metoda Iacobi să se găsească soluţia aproximativă pentru
următoarele sisteme de ecuaţii liniare :
Sisteme de ecuaţii liniare 77

⎧5 x1 − x2 − x3 =5

12. ⎨ x1 + 6 x2 + x3 = −4
⎪x − x + 7 x =9
⎩ 1 2 3
R. Sistemul se poate pune sub forma x = Bx+c, unde B = D–1 ⋅ (D–A), iar D =
⎛5 0 0⎞ ⎛0 1 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 6 0 ⎟ , E = D–A = ⎜ − 1 0 − 1⎟ ,
⎜0 0 7⎟ ⎜ −1 1 0 ⎟⎠
⎝ ⎠ ⎝
⎛ 0 0.2 0.2 ⎞ ⎛ 1 ⎞
⎜ ⎟ ⎜ ⎟
B = ⎜ − 0.16667 0 − 0.16667⎟ , c = D–1 ⋅ b = ⎜ − 0.66667⎟ , B 2 =0.41997,
⎜ − 0.14286 0.14286 0 ⎟ ⎜ 1.28571 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0⎞
( 0) ⎜ ⎟
ρ(B)= 0.29277. Soluţia la fiecare iteraţie, pornind cu x = ⎜ 0 ⎟ , este:
⎜ 0⎟
⎝ ⎠
⎛ 1 ⎞ ⎛ 1.12381 ⎞

(1) ⎟ ( 2) ⎜ ⎟
x = ⎜ − 0.66667 ⎟ , x = ⎜ − 1.04762 ⎟ ,
⎜ 1.28571 ⎟ ⎜ 1.04762 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 1 ⎞ ⎛ 0.98939 ⎞
(3) ⎜ ⎟ ( 4) ⎜ ⎟
x = ⎜ − 1.02857 ⎟ , x = ⎜ − 0.99592 ⎟ .
⎜ 0.97551 ⎟ ⎜ 0199592 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 1⎞
⎜ ⎟
Soluţia exactă fiind x* = ⎜ − 1⎟ , eroarea care se face dacă se reţine ca soluţie
⎜ 1⎟
⎝ ⎠
aproximativă x(4) , este x* − x ( 4) = 0.01208 .

⎧ 6 x1 + x2 − x3 + x4 =2
⎪ x + 7x + x − x = −4
⎪ 1 2 3 4
13. ⎨ (să se scrie soluţia obţinută după patru
x
⎪ 1 + 2 x 2 + 8 x3 + x 4 =6
⎪⎩ x1 + x2 + x3 + 9 x4 −8
iteraţii).
R. Se poate pune sistemul sub forma x = Bx+c, unde B = D–1 ⋅ E , iar
⎛6 0 0 0⎞ ⎛ 0 −1 1 2⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 7 0 0⎟ ⎜ −1 0 − 1 1⎟
D= ⎜ , E = D–A = ⎜ ,
0 0 8 0⎟ − 1 − 2 0 − 1⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 0 9⎟ ⎜ 1 1 1 0 ⎟⎠
⎝ ⎠ ⎝
78 Bazele Analizei Numerice

⎛ 0 − 0.16667 0.16667 − 0.33333⎞


⎜ ⎟
⎜ − 0.14286 0 − 0.14286 0.14286 ⎟
B= ⎜ ,
− 0.125 − 0.25 0 − 0.125 ⎟
⎜ ⎟
⎜ − 0.11111 − 0.11111 − 0.11111 0 ⎟
⎝ ⎠
⎛ 0.33333 ⎞
⎜ ⎟
⎜ − 0.57143⎟
c=D ⋅ b = ⎜
–1
, B 2 =0.5989, ρ(B)= 0.27926. Soluţia pentru primele
0.75 ⎟
⎜ ⎟
⎜ − 0.88889⎟
⎝ ⎠
⎛0⎞ ⎛ 0.33333 ⎞
⎜ ⎟ ⎜ ⎟
(0) ⎜ 0 ⎟ (1) ⎜ − 0.57143⎟
4 iteraţii, pornind cu x = ⎜ ⎟ , este: x = ⎜ ,
0 0.75 ⎟
⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ − 0.88889⎟
⎝ ⎠ ⎝ ⎠
⎛ 0.84987 ⎞ ⎛ 0.95117 ⎞ ⎛ 0.9886 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(2) ⎜ − 0.85317⎟ (3) ⎜ − 0.96542 ⎟ ( 4) ⎜ − 0.98884 ⎟
x =⎜ , x =⎜ , x =⎜ .
0.9623 ⎟ 0.97528 ⎟ 0.99689 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ − 0.94577⎟ ⎜ − 0.99544 ⎟ ⎜ − 0.99567 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 1⎞
⎜ ⎟
⎜ − 1⎟
Soluţia exactă fiind x* = ⎜ ⎟ , eroarea care se face dacă se reţine ca soluţie
1
⎜ ⎟
⎜ − 1⎟
⎝ ⎠
aproximativă x(4) , este x* − x ( 4) = 0.01682 .

⎧4 x1 − x2 − x3 + x4 = 3
⎪ x + 7 x + x − x = 14
⎪ 1 2 3 4
14. ⎨
x
⎪ 1 2 − x + 6 x3 + x 4 = 21
⎪⎩ x1 − x2 − x3 + 9 x4 = 38
R. Se poate pune sistemul sub forma x=Bx+c, unde B=D–1⋅E , iar
⎛ 4 0 0 0⎞ ⎛ 0 1 1 − 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 7 0 0⎟ ⎜ − 1 0 − 1 1⎟
D= ⎜ , E = D–A = ⎜ ,
0 0 6 0⎟ − 1 1 0 − 1⎟
⎜ ⎟ ⎜ ⎟
⎜ 0 0 0 9⎟ ⎜ −1 1 −1 0⎟
⎝ ⎠ ⎝ ⎠
Sisteme de ecuaţii liniare 79

⎛ 0 0.25 0.25 − 0.25 ⎞


⎜ ⎟
⎜ − 0.14286 0 − 0.14286 0.14286 ⎟
B= ⎜ ,
− 0.16667 0.16667 0 − 0.16667⎟
⎜ ⎟
⎜ − 0.11111 0.11111 − 0.11111 0 ⎟
⎝ ⎠
⎛ 0.75 ⎞
⎜ ⎟
⎜ 2 ⎟
–1
c=D ⋅b = ⎜ , B 2 =0.60753, ρ(B)= 0.22758. Pentru primele 4 iteraţii,
3.5 ⎟
⎜ ⎟
⎜ 4.22222⎟
⎝ ⎠
⎛0⎞ ⎛ 0.75 ⎞
⎜ ⎟ ⎜ ⎟
(0) ⎜ 0 ⎟ (1) ⎜ 2 ⎟
pornind cu x = ⎜ ⎟ , soluţia este: x = ⎜ ,
0 3 .5 ⎟
⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ 4.22222 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 1.06944 ⎞ ⎛ 1.00711 ⎞ ⎛ 0.99663 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 2) ⎜ 1.99603 ⎟ (3) ⎜ 1.98545 ⎟ ( 4) ⎜ 1.99883 ⎟
x =⎜ , x =⎜ , x =⎜ .
3.00463 ⎟ 2.99239 ⎟ 2.99784 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 3.97222 ⎟ ⎜ 3.99133 ⎟ ⎜ 3.99844 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛1⎞
⎜ ⎟
⎜ 2⎟
Soluţia exactă fiind x* = ⎜ ⎟ , eroarea care se face dacă se reţine ca soluţie
3
⎜ ⎟
⎜ 4⎟
⎝ ⎠
aproximativă x(4) , este x* − x ( 4) = 0.00417 .
Să se rezolve cu metoda Gauss–Seidel următoarele sisteme:
⎧5 x1 − 2 x2 − 2 x3 = −3

15. ⎨− x1 + 6 x2 − x3 = 2
⎪− x − 3 x + 4 x = 8
⎩ 1 2 3
⎛ 5 − 2 − 2⎞
⎜ ⎟
R. Se observă că matricea coeficienţilor sistemului A = ⎜ − 1 6 − 1⎟ este tare
⎜ −1 − 3 4 ⎟⎠

diagonal dominantă şi atunci algoritmul Gauss–Seidel este convergent.
Sistemul se poate pune sub forma x(m+1)=(D+L)–1(–Ux(m)+b), m≥0, unde:
⎛ 0 0 0⎞ ⎛ 0 − 2 − 2⎞ ⎛5 0 0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
L = ⎜ −1 0 0⎟ , U = ⎜ 0 0 − 1⎟ , D = ⎜ 0 6 0 ⎟ .
⎜ −1 − 3 0⎟ ⎜0 0 0 ⎟⎠ ⎜ 0 0 4⎟
⎝ ⎠ ⎝ ⎝ ⎠
Atunci
80 Bazele Analizei Numerice

⎛ 0.2 0 0 ⎞
−1 ⎜ ⎟
( D + L) = ⎜ 0.03333 0.16667 0 ⎟ ,
⎜ 0.075 0.125 0.25 ⎟⎠

⎛0 0 .4 0 .4 ⎞

–1

–(D+L) U = ⎜ 0 0.06667 0.23333 ⎟ ,
⎜0 0.15 0.275 ⎟⎠

⎛ − 0.6 ⎞ ⎛ 0⎞

–1
⎟ ( 0) ⎜ ⎟
(D+L) b = ⎜ 0.23333 ⎟ . Se obţin pornind cu x = ⎜ 0 ⎟ , vectorii:
⎜ 2.025 ⎟ ⎜ 0⎟
⎝ ⎠ ⎝ ⎠
⎛ − 0.6 ⎞ ⎛ 0.30333 ⎞ ⎛ 0.73531 ⎞
(1) ⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟
x = ⎜ 0.23333 ⎟ , x = ⎜ 0.72139 ⎟ , x = ⎜ 0.89203 ⎟ ,
⎜ 2.025 ⎟ ⎜ 2.61687 ⎟ ⎜ 2.85285 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0.89795 ⎞
( 4) ⎜ ⎟
x = ⎜ 0.95847 ⎟ .
⎜ 2.94334 ⎟
⎝ ⎠
⎧ 6 x1 − x2 − 2 x3 + x4 =2
⎪ 2x + 6x − x − x =8
⎪ 1 2 3 4
16. ⎨

⎪ 1 x − 3 x 2 + 8 x3 + 2 x4 =2
⎪⎩ x1 + x2 + x3 + 4 x4 = −1

R. Se observă că matricea coeficienţilor sistemului


⎛ 6 −1 − 2 1⎞
⎜ ⎟
⎜ 2 6 − 1 − 1⎟
A=⎜
−1 − 3 8 2⎟
⎜ ⎟
⎜ 1 1 1 4 ⎟
⎝ ⎠
este tare diagonal dominantă şi algoritmul Gauss–Seidel este convergent.
Sistemul se poate pune sub forma x(m+1) = (D+L)–1(–Ux(m)+b) , m≥0, unde:
⎛ 0 0 0 0⎞ ⎛0 −1 − 2 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 2 0 0 0⎟ ⎜ 0 0 − 1 − 1⎟
L=⎜ , U =⎜ ,
−1 − 3 0 0⎟ 0 0 0 2⎟
⎜ ⎟ ⎜ ⎟
⎜ 1 1 1 0 ⎟⎠ ⎜0 0 0 0 ⎟⎠
⎝ ⎝
Sisteme de ecuaţii liniare 81

⎛6 0 0 0⎞
⎜ ⎟
⎜0 6 0 0⎟
D=⎜ .
0 0 8 0⎟
⎜ ⎟
⎜0 0 0 4 ⎟⎠

⎛ 0.16667 0 0 0 ⎞
⎜ ⎟
−1 ⎜ − 0.05556 0.16667 0 0 ⎟
Atunci ( D + L) = ⎜ ,
0 0.0625 0.125 0 ⎟
⎜ ⎟
⎜ − 0.02778 − 0.05729 − 0.03125 0.25 ⎟
⎝ ⎠
⎛ 0 0.16667 0.33333 − 0.16667 ⎞
⎜ ⎟
–1 ⎜ 0 − 0.05556 0.05556 0.22222 ⎟
–(D+L) U = ⎜ ,
0 0 0.0625 − 0.1875 ⎟
⎜ ⎟
⎜ 0 − 0.02778 − 0.11285 0.03299 ⎟
⎝ ⎠
⎛ 0.33333 ⎞
⎜ ⎟
–1 ⎜ 1.22222 ⎟
(D+L) b = ⎜ .
0.75 ⎟
⎜ ⎟
⎜ − 0.82639 ⎟
⎝ ⎠
⎛0⎞ ⎛ 0.5 ⎞ ⎛ 0.95573 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(0) ⎜ 0 ⎟ (1) ⎜ 1 ⎟ ( 2) ⎜ 1.02778 ⎟
Alegând x = ⎜ ⎟ , obţinem: x = ⎜ , x =⎜ ,
0 0.9375 ⎟ 0.96973 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ − 0.85938 ⎟ ⎜ − 0.98831⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0.99259 ⎞ ⎛ 0.99803 ⎞ ⎛ 0.99971 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(3) ⎜ 0.99937 ⎟ ( 4) ⎜ 1.00048 ⎟ (5) ⎜ 1.00006 ⎟
x =⎜ , x =⎜ , x =⎜ .
0.99592 ⎟ 0.99918 ⎟ 0.99984 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ − 0.99697 ⎟ ⎜ − 0.99942 ⎟ ⎜ − 0.9999 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎧10 x1 − x2 − x3 + x4 =7
⎪ x + 11x − x − x = −10
⎪ 1 2 3 4
17. ⎨
⎪− x1 − x2 + 12 x3 + x4 = 22
⎪⎩ x1 + x2 + x3 + 13x4 = −24
R. Se observă că matricea coeficienţilor sistemului
⎛ 10 − 1 − 1 1⎞
⎜ ⎟
⎜ 1 11 − 1 − 1⎟
A=⎜
− 1 − 1 12 1⎟
⎜ ⎟
⎜ 1 1 1 13 ⎟
⎝ ⎠
este tare diagonal dominantă şi algoritmul Gauss–Seidel este convergent.
82 Bazele Analizei Numerice

Sistemul se poate pune sub forma x(m+1)=(D+L)–1(–Ux(m)+b) , m≥0, unde:


⎛ 0 0 0 0⎞ ⎛ 0 − 1 − 1 1⎞
⎜ ⎟ ⎜ ⎟
⎜ 1 0 0 0⎟ ⎜ 0 0 − 1 − 1⎟
L=⎜ , U =⎜ ,
−1 −1 0 0⎟ 0 0 0 1⎟
⎜ ⎟ ⎜ ⎟
⎜ 1 1 1 0 ⎟⎠ ⎜0 0 0 0 ⎟⎠
⎝ ⎝
⎛10 0 0 0 ⎞
⎜ ⎟
⎜ 0 11 0 0 ⎟
D=⎜
0 0 12 0 ⎟
⎜ ⎟
⎜ 0 0 0 13 ⎟
⎝ ⎠
Atunci
⎛ 0 .1 0 0 0 ⎞
⎜ ⎟
−1 ⎜ − 0.00909 0.09091 0 0 ⎟
( D + L) = ⎜ ,
0.00758 0.00758 0.08333 0 ⎟
⎜ ⎟
⎜ − 0.00758 − 0.00758 − 0.00641 0.07692 ⎟
⎝ ⎠
⎛0 0 .1 0.1 − 0.1 ⎞
⎜ ⎟
–1 ⎜ 0 − 0.00909 0.08182 0.1 ⎟
–(D+L) U = ⎜ ,
0 0.00758 0.01515 − 0.08333 ⎟
⎜ ⎟
⎜ 0 − 0.00758 − 0.01515 0.00641 ⎟
⎝ ⎠
⎛ 0 .7 ⎞
⎜ ⎟
–1 ⎜ − 0.97273 ⎟
(D+L) b = ⎜ .
1.81061 ⎟
⎜ ⎟
⎜ − 1.96445 ⎟
⎝ ⎠
⎛0⎞ ⎛ 0 .7 ⎞
⎜ ⎟ ⎜ ⎟
(0) ⎜ 0 ⎟ (1) ⎜ − 0.97273 ⎟
Alegând x = ⎜ ⎟ , obţinem: x = ⎜ ,
0 1.81061 ⎟
⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ − 1.96445 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0.98023 ⎞ ⎛ 0.99793 ⎞ ⎛ 0.99993 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 2) ⎜ − 1.01219 ⎟ (3) ⎜ − 1.00001 ⎟ ( 4) ⎜ − 1.00001 ⎟
x =⎜ , x =⎜ , x =⎜ ,
1.99437 ⎟ 1.99958 ⎟ 1.99998 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ − 1.99711 ⎟ ⎜ − 1.99999 ⎟ ⎜ − 1.99999 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 1⎞
⎜ ⎟
( 5 ) ⎜ − 1⎟
x =⎜ ⎟ .
2
⎜ ⎟
⎜ − 2⎟
⎝ ⎠
Sisteme de ecuaţii liniare 83

Folosind metoda relaxării simple să se scrie soluţia aproximativă pentru


următoarele sisteme:
⎧8 x1 − x2 + x3 =3

18. ⎨− x1 + 6 x2 − x3 = 14
⎪x − x + 9x = −28
⎩ 1 2 3
⎛ 8 − 1 1⎞
⎜ ⎟
R. Matricea sistemului este A = ⎜ − 1 6 − 1⎟ .
⎜ 1 −1 9⎟
⎝ ⎠
⎛ 0⎞ ⎛ − 3⎞
(1) ⎜ ⎟ (1) ⎜ ⎟
Luând vectorul de probă x = ⎜ 0 ⎟ se obţine r = ⎜ − 14 ⎟ , deci prima direcţie
⎜ 0⎟ ⎜ 28 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0⎞ ⎛ 0 ⎞
(1) ⎜ ⎟ ( 2) ⎜ ⎟
de relaxare este p = e3 = ⎜ 0 ⎟ . Rezultă x = ⎜ 0 ⎟ .
⎜1⎟ ⎜ − 3.11111⎟
⎝ ⎠ ⎝ ⎠
Analog :
⎛ − 6.11111 ⎞ ⎛0⎞ ⎛ 0 ⎞
( 2)⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟
r = ⎜ − 10.88889 ⎟ , p = e2 = ⎜ 1 ⎟ , x = ⎜ 1.81481 ⎟ ;
⎜ 0 ⎟ ⎜0⎟ ⎜ − 3.11111⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ − 7.92593 ⎞ ⎛1⎞ ⎛ 0.99074 ⎞
⎜ ⎟ ⎜ ⎟ (3) ⎜ ⎟
r (3) = ⎜ 0 (3)
⎟ , p = e1 = ⎜ 0 ⎟ , x = ⎜ 1.81481 ⎟ ;
⎜ − 1.81481 ⎟ ⎜ 0⎟ ⎜ − 3.11111⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0 ⎞ ⎛ 0⎞ ⎛ 0.99074 ⎞
( 4) ⎜ ⎟ ( 4) ⎜ ⎟ ( 4) ⎜ ⎟
r = ⎜ − 0.99074 ⎟ , p = e2 = ⎜ 1 ⎟ , x = ⎜ 1.91994 ⎟ .
⎜ − 0.824070 ⎟ ⎜ 0⎟ ⎜ − 3.11111⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
ş. a. m. d.
⎧10 x1 + x2 − x3 − x4 =9
⎪x + 9x − x + x = −24
⎪ 1 2 3 4
19. ⎨
− x
⎪ 1 2 − x + 11 x +
3 x4 = 30
⎪⎩− x1 + x2 + x3 + 8 x4 = −32
⎛ 10 1 − 1 − 1⎞
⎜ ⎟
⎜ 1 9 − 1 1⎟
R. Matricea sistemului este A = ⎜ .
− 1 − 1 11 1⎟
⎜ ⎟
⎜ −1 1 1 8⎟
⎝ ⎠
84 Bazele Analizei Numerice

⎛ 0⎞ ⎛ − 9⎞
⎜ ⎟ ⎜ ⎟
(1) ⎜ 0 ⎟ (1) ⎜ 24 ⎟
Alegând x = ⎜ ⎟ se obţine r = ⎜ .
0 − 30 ⎟
⎜ ⎟ ⎜ ⎟
⎜ 0⎟ ⎜ 32 ⎟
⎝ ⎠ ⎝ ⎠
⎛ 0⎞ ⎛ ⎞0 ⎛ − 5⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(1) ⎜ 0⎟ ( 2) ⎜ 0 ⎟ ( 2) ⎜ 20 ⎟
Deci p = e4 = ⎜ ⎟ , x =⎜ ⎟ r =⎜ .
0 0 − 34 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜1⎟ ⎜ − 4⎟ ⎜ 0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Mai departe obţinem :
⎛0⎞ ⎛ 0 ⎞ ⎛ − 8.09091⎞ ⎛0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 2) ⎜0⎟ (3) ⎜ 0 ⎟ (3) ⎜ 16.90909 ⎟ (3) ⎜1⎟
p = e3 = ⎜ ⎟ , x = ⎜ ; r =⎜ ⎟ , p = e2 = ⎜ ⎟ ,
1 3.090901⎟ 0 0
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ −4 ⎟ ⎜ 3.09091 ⎟ ⎜0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0 ⎞ ⎛1⎞ ⎛ 0.99697 ⎞ ⎛ 0 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
( 4) ⎜ − 1.87879 ⎟ ( 4) ⎜ 0⎟ (5) ⎜ − 1.87879 ⎟ (5) ⎜ 0.99697 ⎟
x =⎜ ; p = e1 = ⎜ ⎟ , x = ⎜ ; r =⎜
3.09091 ⎟ 0 3.09091 ⎟ 0.88182 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ −4 ⎟ ⎜ 0⎟ ⎜ −4 ⎟ ⎜ 0.21515 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛0⎞ ⎛ 0.99697 ⎞
⎜ ⎟ ⎜ ⎟
( 5) ⎜1⎟ (6) ⎜ − 1.98956 ⎟
, p = e1 = ⎜ ⎟ x =⎜ .
0 3.09091 ⎟
⎜ ⎟ ⎜ ⎟
⎜0⎟ ⎜ −4 ⎟
⎝ ⎠ ⎝ ⎠

⎧4 x1 − 2 x2 + x3 =9

20. ⎨− 2 x1 + 6 x2 − x3 =5
⎪x − x + 5x =6
⎩ 1 2 3
⎛ 4 −2 1⎞
⎜ ⎟
R. Matricea A = ⎜ − 2 6 − 1⎟ este simetrică, tare diagonal dominantă:
⎜ 1 −1 5⎟
⎝ ⎠
4 > − 2 + 1 , 6 > − 2 + − 1 , 5 > 1 + − 1 , ∆1=4 , ∆2=20 , ∆3=94 , deci pozitv
definită şi se poate aplica metoda. Luând vectorul de probă
Sisteme de ecuaţii liniare 85

⎛0⎞ ⎛ − 9⎞ ⎛1⎞ ⎛ 2.25 ⎞


⎜ ⎟
(1) (1) ⎜ ⎟ (1) ⎜ ⎟ ( 2) ⎜ ⎟
x = ⎜ 0 ⎟ se obţin: r = ⎜ − 5 ⎟ , p = e1 = ⎜ 0 ⎟ , x = ⎜ 0 ⎟ ;
⎜0⎟ ⎜ − 6⎟ ⎜ 0⎟ ⎜ 0 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0 ⎞ ⎛0⎞ ⎛ 2.25 ⎞ ⎛ − 3.16667 ⎞
( 2) ⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟ (3) ⎜ ⎟
r = ⎜ − 9.5 ⎟ , este p = e2 = ⎜ 1 ⎟ , x = ⎜1.58333 ⎟ ; r = ⎜ 0 ⎟
⎜ − 3.75 ⎟ ⎜0⎟ ⎜ 0 ⎟ ⎜ − 5.33333 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0⎞ ⎛ 2.25 ⎞ ⎛ − 2.1 ⎞ ⎛1⎞
(3) ⎜ ⎟ (3) ⎜ ⎟ ( 4) ⎜ ⎟ ( 4) ⎜ ⎟
, p = e3 = ⎜ 0 ⎟ , x = ⎜ 1.5833 ⎟ ; r = ⎜ − 1.06667 ⎟ , p = e1 = ⎜ 0 ⎟ ,
⎜1⎟ ⎜1.06667 ⎟ ⎜ 0 ⎟ ⎜ 0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 2.775 ⎞
( 4) ⎜ ⎟
x = ⎜ 1.58333 ⎟ .
⎜1.06667 ⎟
⎝ ⎠

Să se scrie soluţia aproximativă pentru următoarele sisteme de ecuaţii


liniare obţinută cu metoda suprarelaxării:
⎧2 x1 − x2 =3

21. ⎨− x1 + 3 x2 − x3 = −5
⎪ − x2 + 4 x3 = 5

R. Matricea coeficienţilor sistemului este bloc tridiagonală, simetrică şi pozitiv
definită, deci metoda suprarelaxării este convergentă. Sistemul se poate pune sub
forma:
−1
⎛ 1 ⎞ ⎡ ⎛ 1⎞ ⎤
x(m+1)=Mx(m)+C, m≥0, unde: M = −⎜ E + D ⎟ ⋅ ⎢ F + ⎜1 − ⎟ D ⎥ ,
⎝ ω ⎠ ⎣ ⎝ ω⎠ ⎦
−1 ⎛ 0 0 0⎞ ⎛2 0 0⎞
⎛ 1⎞ ⎜ ⎟ ⎜ ⎟
C = ⎜ E + ⎟ ⋅ b , E = ⎜ −1 0 0⎟ , D = ⎜ 0 3 0 ⎟ , F=ET ,
⎝ ω⎠ ⎜ 0 −1 0⎟ ⎜0
⎝ ⎠ ⎝ 0 4 ⎟⎠
2
ω= , λ1 fiind cea mai mare valoare proprie a matricei –D–1(E+F),
1+ 1 − λ12
λ1=0.5 , ω =1.0718 şi considerând vectorul iniţial x(0)=b, rezultă
86 Bazele Analizei Numerice

⎛ − 1.28719 ⎞ ⎛ 1.64605 ⎞ ⎛ 1.03385 ⎞


(1) ⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟
x = ⎜ − 0.10088 ⎟ , x = ⎜ − 0.85027 ⎟ , x = ⎜ − 0.98314 ⎟ ,
⎜ 0.95373 ⎟ ⎜ 1.04344 ⎟ ⎜ 1.0014 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 1.00661 ⎞
( 4) ⎜ ⎟
x = ⎜ − 0.99835 ⎟ .
⎜ 1.00034 ⎟
⎝ ⎠
⎧14 x1 + x2 = 13
⎪x + 5 x2 − x3 = −3
⎪ 1
22. ⎨
⎪ − x2 + 14 x3 − 2 x4 = −15
⎪⎩ − 2 x3 + 5 x4 = 7
R. Matricea coeficienţilor sistemului este bloc tridiagonală, simetrică şi pozitiv
definită, deci metoda suprarelaxării este convergentă. Sistemul se poate pune sub
forma
−1
(m+1) (m) ⎛ 1 ⎞ ⎡ ⎛ 1⎞ ⎤
x =Mx +C, m≥0, unde M = −⎜ E + D ⎟ ⋅ ⎢ F + ⎜1 − ⎟ D ⎥ ,
⎝ ω ⎠ ⎣ ⎝ ω⎠ ⎦
⎛0 0 0 0⎞ ⎛14 0 0 0 ⎞
−1 ⎜ ⎟ ⎜ ⎟
⎛ 1⎞ ⎜1 0 0 0⎟ ⎜ 0 5 0 0⎟
C = ⎜E + ⎟ ⋅b , E = ⎜ , D=⎜ , F=ET ,
⎝ ω⎠ 0 −1 0 0⎟ 0 0 14 0 ⎟
⎜ ⎟ ⎜ ⎟
⎜0 0 − 2 0 ⎟⎠ ⎜ 0 0 0 5⎟
⎝ ⎝ ⎠
2
ω= , λ1 fiind cea mai mare valoare proprie a matricei –D–1(E+F),
1+ 1 − λ12
λ1=0.2735 , ω=1.01943 şi considerând vectorul iniţial
x(0) = b, rezultă:
⎛ 0.91242 ⎞ ⎛ 1.20542 ⎞ ⎛ 0.98111 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(1) ⎜ − 3.79769 ⎟ ( 2) ⎜ − 0.79542 ⎟ (3) ⎜ − 0.99288 ⎟
x =⎜ , x =⎜ , x =⎜ ,
− 0.05784 ⎟ − 0.96444 ⎟ − 0.99882 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 1.26758 ⎟ ⎜ 1.0093 ⎟ ⎜ 1.0003 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0.99985 ⎞ ⎛ 0.99999 ⎞
⎜ ⎟ ⎜ ⎟
( 4) ⎜ − 0.99987 ⎟ (5) ⎜ − 0.99999 ⎟
x =⎜ , x =⎜ .
− 0.99997 ⎟ −1 ⎟
⎜ ⎟ ⎜ ⎟
⎜ 1.00001 ⎟ ⎜ 1 ⎟
⎝ ⎠ ⎝ ⎠

Să se găsească soluţia aproximativă obţinută cu metoda Gauss–Seidel pentru


sistemele de ecuaţii liniare următoare:
Sisteme de ecuaţii liniare 87

⎧14 x1 + x2 = 13
⎪x + 5 x2 − x3 = −3
⎪ 1
23. ⎨
⎪ − x2 + 14 x3 − 2 x4 = −15
⎪⎩ − 2 x3 + 5 x4 = 7
Să se precizeze numărul de iteraţii necesare pentru ca eroarea să se micşoreze de
10 ori.
R. Matricea A fiind simetrică şi pozitiv definită procedeul iterativ
Gauss–Seidel este convergent. Sistemul se poate pune sub forma
x(m+1)=Mx(m)+C , m≥0,
unde
⎛0 0 0 0⎞
⎜ ⎟
–1 –1 ⎜1 0 0 0⎟
M = –(D+E) F , C = (D+E) b , E = ⎜ , F = ET,
0 −1 0 0⎟
⎜ ⎟
⎜ 0 0 − 2 0⎟
⎝ ⎠
⎛14 0 0 0⎞
⎜ ⎟
⎜0 5 0 0⎟
D=⎜ .
0 0 14 0 ⎟
⎜ ⎟
⎜0 0 0 5 ⎟⎠

⎛ 0 − 0.07143 0 0 ⎞ ⎛ 0.92857 ⎞
⎜ ⎟ ⎜ ⎟
⎜ 0 0.01429 0 .2 0 ⎟ ⎜ − 0.78571⎟
Deci M = ⎜ , C =⎜ .
0 0.00102 0.01429 0.14286 ⎟ − 1.12755 ⎟
⎜ ⎟ ⎜ ⎟
⎜0 0.0004 0.000571 0.05714 ⎟⎠ ⎜ 0.94898 ⎟
⎝ ⎝ ⎠
Dacă se porneşte cu v(0) = b obţin vectorii:
⎛ 1.14286 ⎞ ⎛ 1.20204 ⎞ ⎛ 0.99353 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
(1) ⎜ − 3.82857 ⎟ ( 2) ⎜ − 0.90939 ⎟ (3) ⎜ − 0.98992 ⎟
v =⎜ , v =⎜ , v =⎜ ,
− 0.3449 ⎟ − 0.95609 ⎟ − 0.99677 ⎟
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
⎜ 1.26204 ⎟ ⎜ 1.01756 ⎟ ⎜ 1.00129 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 0.99928 ⎞ ⎛ 0.99994 ⎞
⎜ ⎟ ⎜ ⎟
( 4) ⎜ − 0.99921 ⎟ (5) ⎜ − 0.99994 ⎟
v =⎜ , v =⎜ .
− 0.99976 ⎟ − 0.99998 ⎟
⎜ ⎟ ⎜ ⎟
⎜ 1.0001 ⎟ ⎜ 1.00001 ⎟
⎝ ⎠ ⎝ ⎠
Raza spectrală este ρ(M)=0.0748, rata de convergenţă este
R(M)= –lg(ρ(M))=1.12609 şi numărul de iteraţii după care eroarea scade de 10 ori
1
este K≈ =0.88803, adică la fiecare iteraţie eroarea scade de 10 ori.
R(M )
88 Bazele Analizei Numerice

⎧ 5 x1 + x2 − x3 =5

24. ⎨ x1 + 8 x2 + x3 = 10
⎪− x + x + 15 x = 15
⎩ 1 2 3
Să se precizeze numărul de iteraţii necesare pentru ca eroarea să se micşoreze de
10 ori.
R. Matricea A fiind simetrică şi pozitiv definită procedeul iterativ
Gauss–Seidel este convergent. Sistemul se poate pune sub forma
x(m+1)=Mx(m)+C , m≥0,
unde
⎛ 0 0 0⎞ ⎛5 0 0 ⎞
–1 –1
⎜ ⎟ T
⎜ ⎟
M = –(D+E) F , C = (D+E) b , E = ⎜ 1 0 0 ⎟ , F = E , D = ⎜ 0 8 0 ⎟
⎜ −1 1 0⎟ ⎜ 0 0 15 ⎟
⎝ ⎠ ⎝ ⎠
.
⎛0 − 0.2 0.2 ⎞ ⎛ 1 ⎞
⎜ ⎟ ⎜ ⎟
Deci M = ⎜0 0.02 − 0.12 ⎟ , C = ⎜ 0.9 ⎟ .
⎜ 0 − 0.01467 0.02133 ⎟ ⎜1.0067 ⎟
⎝ ⎠ ⎝ ⎠
Dacă se porneşte cu v(0) = b obţin vectorii:
⎛ 2 ⎞ ⎛ 1.376 ⎞ ⎛ 1.05954 ⎞ ⎛ 1.04563 ⎞
(1) ⎜ ⎟ ( 2) ⎜ ⎟ (3) ⎜ ⎟ ( 4) ⎜ ⎟
v = ⎜ - 0.7 ⎟ , v = ⎜ 0.7444 ⎟ , v = ⎜ 0.78984 ⎟ , v = ⎜ 0.79364 ⎟ ,
⎜ 1.18 ⎟ ⎜1.04211⎟ ⎜ 1.01798 ⎟ ⎜ 1.0168 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
⎛ 1.04463 ⎞
( 5) ⎜ ⎟
v = ⎜ 0.79386 ⎟ .
⎜1.01672 ⎟
⎝ ⎠
Raza spectrală este ρ(M)=0.06262, rata de convergenţă este
R(M)= –lg(ρ(M))=1.20326 şi numărul de iteraţii după care eroarea scade de 10 ori
1
este K≈ =0.83108, adică la fiecare iteraţie eroarea scade de 10 ori.
R(M )

Să se scrie soluţia aproximativă obţinută cu metoda gradienţilor conjugaţi aplicată


sistemelor de ecuaţii liniare:
⎧6 x1 + x2 − x3 =6

25. ⎨ x1 + 8 x2 + x3 = −8 .
⎪− x + x + 10 x3 = −12
⎩ 1 2
Sisteme de ecuaţii liniare 89

R. Matricea coeficienţilor sistemului este simetrică şi pozitiv definită şi deci se


⎛ 0⎞
(0)
⎜ ⎟
poate aplica metoda. Luând x = ⎜ 0 ⎟ ca vector de probă, se obţin rezultatele.
⎜ 0⎟
⎝ ⎠
Iteraţia I.
⎛ − 6⎞
⎜ ⎟
r =Ax0 – b= ⎜ 8 ⎟ , prima direcţie de relaxare, p(1)= –r(0) ,
(0)

⎜ 12 ⎟
⎝ ⎠
r (0) , p (1) ⎛ 0.60797 ⎞
⎜ ⎟
q1 = − = 0.10133 , x =x + q1p = ⎜ − 0.81063 ⎟ .
(1) (0) (1)
(1) (1)
Ap , p ⎜ − 1.21595 ⎟
⎝ ⎠
Iteraţia a II-a .
⎛ − 1.94684 ⎞ r (1) , r (1)
(1) ( 0) (1) ⎜ ⎟
r =r + q1 Ap = ⎜ 0.90698 ⎟ , c1 = = 0.02911
⎜ − 1.57807 ⎟ r ( 0) , r ( 0)
⎝ ⎠

⎛ 2.12151 ⎞ r (1) , p ( 2)
(2)
⎜ (1)
⎟ (1)
p = –r +c1p = ⎜ − 1.13987 ⎟ , q2 = − = 0.17916 ,
⎜ 1.22874 ⎟ Ap ( 2) , p ( 2)
⎝ ⎠
⎛ 0.98807 ⎞
(2)

(1) (2)

x =x + q2p = ⎜ − 1.01485 ⎟ .
⎜ − 0.9958 ⎟
⎝ ⎠
Iteraţia a III-a.
⎛ − 0.09062 ⎞ r ( 2 ) , r ( 2)
⎜ ⎟
r ( 2)
=r (1)
+ q2 Ap ( 2)
= ⎜ − 0.12656 ⎟ , c2 = = 3.62608 ⋅ 10 −3
(1) (1)
⎜ 0.03906 ⎟ r ,r
⎝ ⎠

⎛ 0.09832 ⎞ r ( 2) , p (3)
(3)
⎜ (2)
⎟ (2)
p = –r +c2p = ⎜ 0.12243 ⎟ , q3 = − = 0.12133 ,
⎜ − 0.03461⎟ Ap (3) , p (3)
⎝ ⎠
⎛1⎞
(3) (2) (3)
⎜ ⎟
x =x + q3p = ⎜ − 1⎟ .
⎜ − 1⎟
⎝ ⎠
90 Bazele Analizei Numerice

26. Să se determine traseul optim pentru o conductă de gaze naturale care să treacă
prin "apropierea" localităţilor Li , i=1,...,10 , care raportate la un sistem cartezian
de referinţă au coordonatele următoare:
L1(1,2), L2(2,2), L3(5,3), L4(7,4), L5(10,2), L6(11,3), L7(15,4), L8(16,5), L9(18,1),
L10(20,4).
R. Luând traseul după o dreaptă, se obţine sistemul:
⎧ a+b =2
⎪ 2a + b = 2

⎪ 5a + b = 3

⎪ 7a + b = 4
⎪⎪10a + b = 2

⎪11a + b = 3
⎪15a + b = 4

⎪16a + b = 5
⎪18a + b = 1

⎪⎩20a + b = 4
care este supradimensionat. Se formează sistemul normal al lui Gauss Bu=c, unde
⎛1505 105 ⎞ ⎛ 340 ⎞
B=ATA, c=ATb , adică: B = ⎜⎜ ⎟⎟ , c = ⎜⎜ ⎟⎟ , a cărui soluţie este
⎝ 105 10 ⎠ ⎝ 30 ⎠
u1=0.06211 , u2=2.34783 . Raportat la acel sistem de coordonate traseul conductei
trebuie să urmeze dreapta y = 0.06211x+2.34783 .

S-ar putea să vă placă și