Sunteți pe pagina 1din 78

Sisteme de ecuaii liniare

13

1. Sisteme de ecuaii liniare


Reamintim c un sistem de n ecuaii 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 notm cu A matricea coeficienilor, 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 ecuaii liniare sunt de dou tipuri: metode directe i metode indirecte (sau iterative). Metodele directe constau n transformarea sistemului (1) ntrun sistem triunghiular echivalent, care se rezolv uor. 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 soluiei exacte a sistemului n cazul ideal, cnd nu avem erori de rotunjire. Numrul operaiilor aritmetice efectuate este de ordinul n3. Pentru sisteme cu un numr de ecuaii mai mare de 100, metodele directe devin inutilizabile datorit acumulrii erorilor de rotunjire care altereaz soluia. Metodele indirecte (sau iterative) constau n construcia unui ir {x(k)} de vectori ndimensionali, care converge la soluia exact a sistemului. Se alege ca

14

Bazele Analizei Numerice

soluie aproximativ a sistemului un termen x(s) al irului, al crui ordin depinde de precizia impus. O iteraie presupune efectuarea unui numr de operaii aritmetice de ordinul n2. Metodele iterative sunt utilizate la rezolvarea sistemelor mari de ecuaii. Cele mai cunoscute metode iterative sunt: Jacobi, GaussSeidel, metodele de relaxare.

1.1. Metoda Gauss. Factorizarea LU


Fie

0 0 M M 0 i e = 1 mr = r mr +1,r 0 M M 0 mn , r (elementul 1 din er se afl pe linia r). O matrice de forma Mr = In mrer T, unde erT= (0, ... , 1, ... ,0) , se numete matrice Frobenius. O astfel de matrice are urmtoarea structur: 0 0 L 0 1 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 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 (0 1 0 0) = = M2 = 0 0 1 0 0 m32 0 0 0 0 1 0 m32 0 0 0 1 0 m 0 0 0 1 m 42 0 0 42 0 0 0 1 1 0 0 0 = 0 m32 1 0 0 m 0 1 42

Sisteme de ecuaii liniare

15

Propoziia 1. Orice matrice Frobenius Mr este inversabil i inversa sa este: Mr1 = In + mr erT. Demonstraie. (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 Mr1 = In + mr erT. Teorema 1. Fie A o matrice ptrat de ordinul n care satisface condiia: a11 K a1r M 0 pentru orice r = 1, n 1 . (*) det M a r1 K arr Atunci exist o matrice inferior triunghiular MM n(R) astfel nct matricea = MA este superior triunghiular. Demonstraie. Deoarece a110 , putem considera matricea Frobenius 0 K 0 1 a 21 1 0 K 0 a . M 1 = 11 M M a n1 0 K 1 a 11 Dac notm A1 = A i A2 =M1A1 , atunci avem a ( 2 ) a ( 2) K a ( 2) 11 12 1n ( 2) ( 2) 0 a22 K a2 n , A2 = M M M ( 2) 0 ( 2) an 2 K ann

unde, notnd cu j = 1, n ;
( 2) aij

(1) aij = aij,

pentru i, j = 1, n , ,

avem:

( 2) (1) a1 j = a1 j

pentru

(1) = aij

1) (1) ai(1 a1 j (1) a11

pentru orice i, j = 2, n .

Observm c
( 2) a22 = a22

a21a12 a11

1 a11

a11 a12 0. a21 a22

Dac notm

16

Bazele Analizei Numerice

0 1 1 0 ( 2) a32 0 ( 2) a22 M2 = M M ( 2) an 2 0 ( 2) a22 atunci


a (3) 11 0 A3 = M 2 A2 = 0 M 0
(3) a12 (3) a22

0 K 0 0 K 0 1 K 0 , M M 0 K 1
(3) (3) K a1 a13 n (3) (3) K a2 a23 n (3) (3) , a33 K a3n M M (3) 0 K ann

0 M 0

unde

(3) aij

( 2) = aij

pentru i=1, 2, j = 1, n i

) ai(3 j

ai( 2j )

2) ( 2) ai(2 a2 j ( 2) a22

, i, j = 3, n .

Un calcul simplu ne arat c


(3) a33

a11 a12 = a a22 (1) ( 2) 21 a11 a22 a31 a32 1

a13 a23 0 . a33

(r ) n general, arr 0 i se poate considera matricea Frobenius: 0 0 L 0 1 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 notm cu Ar+1=MrAr , atunci

Sisteme de ecuaii liniare

17

a(r +1) a(r +1) 11 12 (r +1) 0 a22 M M 0 Ar +1 = 0 0 0 M M 0 0 unde


+1) ai(r j ) = ai( r j ,

(r +1) K a1 r (r +1) K a2 r M

(r +1) a1 n (r +1) K a2 n M (r +1) (r +1) K ar r K ar n , (r +1) (r +1) K 0 ar +1, r +1 K ar +1, n . M M M (r +1) (r +1) K 0 an, r +1 K an n

pentru i=1,r , j = 1, n , ai j

( r + 1)

) = ai( r j

) (r ) ai( r a r r j (r ) ar r

i, j = r + 1, n . n final se obine matricea superior triunghiular a ( n) a ( n) K a ( n) 11 12 1n 0 a ( n) K a ( n) 22 2n . U = An = M n1...M 2 M1 A = .M M M 0 ( n) 0 K ann Notm cu M=Mn1 Mn2 ... M2 M1 i demonstraia teoremei este complet.
Exemplu.

5 2 1 8 1 A2 = , 0 18 9 0 5 5 0 0 2 1 1 0 0 1 5 M 2 = 0 1 0 , U = A3 = 0 8 1 , M = M 2 M 1 = 1 1 0 . 7 9 9 9 0 0 1 1 0 4 20 20 20 Considerm sistemul 5 x1 + 2 x2 + x3 = 12 5 x1 6 x2 + 2 x3 = 1 , 4x + 2x + x = 3 1 2 3
2 1 5 A1 = A = 5 6 2 , 4 2 1

1 0 0 1 1 0 M1 = 4 , 0 1 5

18

Bazele Analizei Numerice

a crui soluie este x1=1, x2=2, x3=3. Sub form matriceal sistemul se scrie: 12 Ax=b , unde b = 1 . Acest sistem este echivalent cu urmtorul sistem: 3 (M2M1A)x=(M2M1)b . Efectund calculele obinem 5 x1 + 2 x2 + x3 = 12 8 x2 + x3 = 13 . 9 27 x3 = 4 4 Numrul operaiilor pentru determinarea matricei U i a vectorului Mb

a (r ) Pentru o linie fixat i se calculeaz ir , apoi se fac nmulirile cu (r ) arr


(r ) arj , r + 1 j n , i se adun (r ) aij , r + 1 j n . La fel i cu

bi( r +1) . Sunt

2(nr)+3 operaii elementare pentru fiecare linie i, r + 1 i n , i pentru fiecare (n r )[2(n r ) + 3] operaii. n total vor fi etap r vor fi
r =1

[2(n r )2 + 3(n r )] = 3 n3 + 2 n 2 6 n
n

operaii elementare. Dac adugm i

cele n2 operaii pentru rezolvarea sistemului triunghiular, rezult c numrul de 2 3 7 operaii pentru rezolvarea sistemului Ax=b este n3 + n 2 n . 3 2 6
1 . Din Propoziia 1 rezult c Lr este de n continuare notm cu Lr = M r

forma:
K 0 0 1 K M M M O 0 1 0 K (r ) ar +1,r Lr = 0 0 . L (r ) arr M M M (r ) 0 K anr 0 K 1 (r ) arr Dac notm cu L=L1L2...Ln1, atunci L este o matrice inferior triunghiular de tipul urmtor

Sisteme de ecuaii liniare

19

0 1 1 l L = 21 M M l n1 l n 2

0 K 0 .0 K 0 . M M l n3 K 1

1 1 1 Deoarece A = M 1 M 2 ...M n 1U , rezult c: A=LU (3) Aadar, orice matrice ptratic ce ndeplinete condiia (*) din Teorema 1 admite o descompunere unic de forma (3), unde L este inferior triunghiular avnd 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 pstrarea 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 ; sfrit pentru j ; sfrit pentru i ; Pentru r:=1,n1 execut Pentru i:=r+1,n execut Pentru j:=r+1,n execut uir u rj ; uij := uij u rr sfrit pentru j ; u lir := ir ; urr sfrit pentru i ; sfrit pentru r ; Pentru i:=2,n execut Pentru j:=1,i1 execut uij:=0 ; sfrit pentru j ; sfrit pentru i . Algoritmul se afl programat n MATLAB i poate fi apelat cu secvena: [L,U ] = lu ( A) { se afieaz cele dou matrice } n exemplul precedent avem:

20

Bazele Analizei Numerice

1 L1 = 1 4 5 1 A = LU = 1 4 5

0 0 1 0 0 1 0 , L2 = 0 1 0 , 9 0 1 0 1 20 0 0 5 2 1 5 2 1 1 0 0 8 1 = 5 6 2 9 9 4 2 1 1 0 0 20 4

Observaia 1. Dac pivotul este

foarte mic

, adic

(r ) arr << 1 ,

atunci

mpririle la acest pivot produc erori de rotunjire foarte mari, care altereaz soluia. n acest caz se recomand schimbarea pivotului. Se poate alege un nou pivot
(r ) r = a ir = max

sau

r) r = a (jr

{a = max { a

(r ) ij

; r jn

(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 ecuaii liniare Pentru r:=1,n1 execut Pentru i:=r+1,n execut Pentru j:=r+1,n execut gsete pivotul conform cu () ; schimb linia i cu linia pivotului i coloana j cu coloana pivotului dac este cazul ; sfrit pentru j sfrit 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 sfrit pentru j ; sfrit pentru i ; sfrit pentru r ; b xn := n ; ann

Sisteme de ecuaii liniare

21

Pentru i:=n1,1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+aijxj ; sfrit pentru j ; (b s ) xi := i ; aii sfrit pentru i .

1.2. Matrice simetrice pozitiv definite


Reamintim c o matrice simetric se numete pozitiv definit, dac forma ptratic asociat este pozitiv definit. Mai precis, dac A este o matrice simetric, atunci A se numete pozitiv definit dac (x)=xTAx > 0 , pentru orice x0 , 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 M . r = det M a r1 K arr n practic aceste condiii sunt greu de verificat pentru matrice de dimensiuni mari. De aceea, n continuare vom prezenta unele condiii necesare, respectiv i suficiente, pentru ca o matrice simetric s fie pozitiv definit.
Propoziia 1. Dac A este o matrice simetric pozitiv definit, atunci: pentru orice i = 1, n , (a) aii > 0

(b) aiiajj>aij2 Demonstraie.


T

pentru orice i, j = 1, n .

+ (a21x1 + a22 x2 + ... + a2n xn )x2 + ... + (an1x1 + an 2 x2 + ... + ann xn )xn innd seama c aij = aji , n continuare avem

a11x1 + ... + a1n xn (x ) = x Ax = (x1 ,..., xn ) M = (a11x1 + a12 x2 + ... + a1n xn )x1 + a x + ... + a x nn n n1 1

22

Bazele Analizei Numerice

(x ) =

aij xi x j =
i =1 j =1

n n

2 a11 x1 + 2a12 x1 x2 +...+ 2a1n x1 xn + 2 + a22 x2 +....+ 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 numr real oarecare avem (ei+ej)=aii2+2aij+ajj > 0 . (1) Pentru ca inegalitatea (1) s fie adevrat pentru orice R, trebuie ca 2 = 4 aij aii a jj < 0 .

2 < aii a jj pentru orice i, j = 1, n , adic (b). Aadar am demonstrat c aij

Observaia 2. Condiiile care apar n Propoziia 1 sunt doar necesare nu i suficiente. Exemplu.

3 2 2 Matricea A = 2 3 2 satisface condiiile din Propoziia 1, dar nu este 2 2 3 pozitiv definit. ntradevr, 2 2 2 (x ) = 3 x1 + x2 + x3 + 4(x1 x2 x1 x3 + x2 x3 ) . 1 Dac x = 1 , atunci (x)=912=3<0, deci nu este pozitiv definit. 1

Definiia 1. Spunem c matricea A este tare diagonal dominant dac elementele sale satisfac inegalitile:

aii > aij , i = 1, n .


j =1 j i

(d)

Sisteme de ecuaii liniare

23

Dac inegalitile (d) devin egaliti pentru anumii indici, dar nu pentru toi, matricea se numete slab diagonal dominant.
Teorema 1. Fie A o matrice simetric cu urmtoarele proprieti: (i) A este tare diagonal dominant, (ii) aii > 0 pentru i = 1, n . Atunci A este pozitiv definit. Demonstraie. Din condiia (i) rezult c dac x0 , atunci:

(x ) = aii xi2 + aij xi x j > aij xi2 aij xi x j =


i =1 i =1 j =1 j i n n i =1 j =1 j i i =1 j =1 j i

n n

n n

n n

= aij xi xi x j
i =1 j =1 j i

)
)

Deoarece aij=aji avem i inegalitatea:


n n i =1 j =1 j i
n n

(x ) > aij x j x j xi .
Adunnd cele dou inegaliti rezult
2 ( x ) > aij xi x j
i =1 j =1 j i

0.

Aadar, (x) > 0 pentru orice x0 , deci este pozitiv definit.


Definiia 2. Fie M={1,2,...,n}. O matrice A se numete reductibil dac exist dou submulimi S, T M cu proprietile: (i) S , T (ii) ST= (iii) ST=M (iv) aij = 0 pentru orice iS i jT . Matricea A se numete ireductibil dac oricare ar fi submulimile S i T ale lui M cu proprietile (i)(iii), exist i0S i j0T astfel nct ai0 j0 0 .

Cel mai simplu exemplu de matrice reductibil este matricea diagonal. Teorema 2. Fie A o matrice simetric avnd urmtoarele proprieti: (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. Demonstraie. Procednd ca n demonstraia Teoremei 1, rezult:

( x)

1 n n aij xi x j 2 i =1 j =1
j i

0.

Vom arta c situaia (x)=0 pentru x0 nu poate avea loc. ntradevr, (x) se anuleaz n urmtoarele cazuri: 1) aij = 0 pentru orice ij . Atunci matricea A are forma diagonal i este reductibil. 2) xi = x j = 0 pentru orice i i j.

(x ) = aii 2 + aij xi x j (aii aij ) 2 0 .


i =1 i =1 j =1 j i i =1 j =1 j i

n n

Cum exist cel puin un indice i0 astfel nct

j =1 j i0

ai0 j < ai0i0 , rezult

(x) > 0 pentru x0.


3) aij=0 pentru orice pereche de indici aij0 dac xi = x j 0 . (i,j) pentru care
xi x j i

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
x0. Aadar, putem presupune c SM (incluziune strict). Dac notm cu T=M \ S atunci S i T satisfac condiiile (i)(iv) din Definiia 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 ecuaii liniare

25

Oservaia 2. Teorema 2 este util la stabilirea faptului c anumite matrice care apar n rezolvarea numeric a ecuaiilor cu derivate pariale de tip eliptic sunt pozitiv definite.

1.3. Metoda Cholesky


Fie A o matrice simetric, pozitiv definit i

(x ) = xT Ax = aij xi x j
i =1 j =1
n

n n

forma ptratic asociat. Deoarece a11 > 0 avem:


n a 1j 2 xj + (x ) = a11x1 + 2a12 x1x2 +...+ 2a1n x1xn + aij xi x j = a11 x1 + i =2 j =2 j =2 a11 n n a1i a1 j (1) (1) + aij xi x j , unde aij = aij , i, j = 2, n a11 i =2 j =2 n 2

Dac notm cu
(1) 1 (x ) = aij xi x j , i =2 j =2 n n

atunci 1 este la rndul su o form ptratic pozitiv definit. z2 ntradevr, s presupunem prin absurd c exist z = M 0 astfel nct z n

1(z) 0.
z1 a1 j z z j i z = 2 . Fie z1 = . j= 2 a11 z n n continuare avem
n
n a 1j ( z ) = a11 z1 + z j + 1 (z ) = 0 + 1 (z ) 0 , j = 2 a11 ceea ce contrazice faptul c este pozitiv definit. Aadar, am demonstrat c 1 este pozitiv definit. n particular, rezult c (1) a22 > 0 . Mai departe procedm cu 1 aa cum am procedat cu i obinem 2

26

Bazele Analizei Numerice

n (1) 1 (x ) = a22 x2 + j =3
unde
n

(1 ) a2 j

x j + 2 (x ) (1) a22

( 2) 2 (x ) = aij xi x j i =3 j = 3

este pozitiv definit. n final (x) se reprezint ca o sum de ptrate. Mai precis (x) admite urmtoarea scriere:
(i 1) n aij (i 1) (x ) = aii xi + xj , (i 1) i =1 j =i +1 aii n 2

unde
( 0) aij

= aij i

( p) aij

( p 1) = aij

p 1) ( p 1) a( a pj pi p 1) a( pp

, p = 1, n 1 .

Introducem notaiile:
(i 1) rii = aii , i = 1, n (i 1) aij

rij =

rii

, i< j j<i

(1)

rij = 0,

( p) ( p 1) aij = aij rpi rpj , p = 1, n 1, i, j = p + 1, n. Cu aceste notaii avem

n (x ) = rij x j = (r11x1 + r12 x2 + ... + r1n xn )2 + (r22 x2 + ... + r2n xn )2 + i =1 j =i


n

+ ... + (rnn xn )2 Dac notm cu R urmtoarea matrice superior triunghiular r11 r12 K r1n 0 r22 K r2 n R= , M M M 0 0 K rnn T T T T atunci (x)=(x R )(Rx)=x (R R)x . Pe de alt parte, (x)=xTAx. Se obine astfel urmtoarea descompunere a matricei A (2) A=RTR

Sisteme de ecuaii 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. Numrul de operaii pentru determinarea matricei R Pentru a calcula elementele liniei a ia a matricei R sunt necesare (ni)(2i1)+2i 2 operaii elementare i o extragere de rdcin ptrat. Pentru toate liniile sunt necesare n n 3 n 2 5n [ (n i)(2i 1) + 2i 2 ] = 3 + 2 6 i =1 operaii elementare plus n extrageri de rdcin ptrat.
Exemplu. S se determine descompunerea Cholesky a matricei 3 2 2 A = 2 3 2 2 2 3

r11 = 3 , r12 =

2 3

, r13 =

5 5 (1) 2 = a22 r12 = , r22 = , a22 , 3 3 3


(1) a23

(1) a23 = a23 r12 r13 =

2 , r23 = 3

r22

2 15

(1) 2 = a33 r13 = , a33

5 , 3

7 7 ( 2) (1) 2 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 cnd 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 ecuaii liniare Pentru p:=1,n1 execut

28

Bazele Analizei Numerice

rpp: = a pp ; Pentru k:=p+1,n1 execut a pk rpk := ; rpp sfrit pentru k ; Pentru i:=p+1,n execut Pentru j:=i,n execut aij:=aijrpirpj ; sfrit pentru j ; sfrit pentru i ; sfrit pentru p ; { Rezolvarea sistemului RTy=b } b y1 = 1 ; r11 Pentru i:=2,n execut s:=0 ; Pentru j:=1,i execut s:=s+rijyj ; sfrit pentru j ; b s yi := i ; rii sfrit pentru i ; { Rezolvarea sistemului Rx=y } y xn = n ; rnn Pentru i:=n1,1 execut s:=0 ; Pentru j:=i+1,n execut s:=s+rijxj ; sfrit pentru j ; y s xi := i ; rii sfrit pentru i . Algoritmul se afl programat i n MATLAB i se apeleaz cu secvena: R=chol(A); x=R\R'\b { pentru afiarea soluiei }

Sisteme de ecuaii liniare

29

1.4. Metoda Householder. Factorizarea QR


O matrice Householder este o matrice de forma H = In 2hhT, unde
2 h 2 = hi2 + ... + hn = 1 . Se observ imediat c o matrice Householder este simetric i are urmtoarea structur: 0 1 O 1 H = 1 2hi2 2hi hi +1 K 2hi hn 0 M M M 2 2hn hi 2hn hi +1 K 1 2hn Mai mult, constatm c H este ortogonal. ntradevr, H2 = (In 2hhT)(In 2hhT) = In 2hhT 2hhT + 4h(hTh)hT. T Cum h h = 1, rezult H2 = In. Aadar, avem H1 = H = HT. Un calcul simplu ne arat c (hhT)x = (hTx)h , pentru orice x = (x1 , x 2 ,..., x n )T . n continuare ne punem urmtoarea problem: dat fiind un vector coloan x 0, se poate determina o matrice Householder H , astfel nct 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 numr

hT=(0,..., 0, hi, ..., hn) i

real astfel nct Hx=x2hhTx=e1 ? innd seama de observaia de mai sus, aceasta revine la x2(hTx)h=e1, de unde rezult x e1=2(hTx)h. Aadar, h trebuie s fie colinear cu xe1. Cum h 2 = 1 rezult
x e1 . x e1 2 Pe de alt parte, H fiind ortogonal avem x 2 = Hx 2 = e1 = . h=

(1)

Alegem = sgn(x1) x 2 i facem convenia 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

x e1 2 = 2 x 2 + 2 x1 x 2 = 2 x 2 x 2 + x1 nlocuind n (1) obinem x1 + x 2 sgn x1 x2 1 h= . M 2 x 2 x 2 + x1 x n

(2)

Se obine astfel urmtorul algoritm pentru determinarea lui h i deci a matricei H: H = In u uT

( 2 ( x 2 + x1 ))1 T u = (( x1 + x 2 )sgn( x1 ), x2 , ..., xn )


= x

(3)

sgn(x1) = 1 dac x1 = 0.
Teorema 1. Pentru orice matrice AM n(R) nesingular exist o matrice ortogonal H astfel nct matricea R = HA este superior triunghiular. Demonstraie. a11 a21 Fie a1 = , prima coloan a matricei A. Din cele artate mai nainte rezult M a n1 c exist o matrice Householder H1 astfel nct H1a1=e1. Matricea H1 se determin astfel:

n s = a2 j1 j =1

1/ 2

, = (s (s + a11 ))

, u = (( a11 + s )sgn(a11 ), a 21 , ..., a n1 ) ,


T

sgn( a11 ) = 1 daca a11 = 0 , H 1 = I n uu T . Dac notm cu A1 = H1A, atunci A1 are urmtoarea form: sgn(a ) s a (1) K a (1) 11 12 1n (1) (1) 0 K a2 a22 n A1 = M M M (1) (1) 0 a K a nn n2

(4)

Sisteme de ecuaii liniare

31

a (1) 22 (1) = M i determinm o matrice n continuare considerm vectorul a2 (1) an 2 ~ ortogonal H 2 Mn1(R) astfel nct ~ ~, H a (1) = e
unde ~ e1T = (1, 0 , ..., 0) Rn1.
2 2 1

1 0 Notm cu H 2 = ~ 0 H M n(R) i cu A2 = H2A1. 2 a ( 2) a ( 2) a ( 2) K a ( 2) 12 13 1n 11 ( 2) ( 2) ( 2) 0 a22 a23 K a2 n ( 2) ( 2) , unde A2 = 0 0 a33 K a3n M M M M ( 2) ( 2) 0 0 an 3 K ann


n continuare se determin o ~ ~ ( 2) ~ , unde proprietatea c H 2 a 3 = e 1

Matricea A2 va arta astfel

( 2) (1) a1 j = a1 j , j = 1, n .

~ matrice Householder H 3 Mn2(R) cu ~ ~ T = (1, 0, ..., 0) M (R). Vom nota cu e n2 1

I2 0 H3 = ~ 0 H M n(R) i cu A3=H3A2. Matricea A3 va avea toate elementele de 3 sub diagonala principal, din primele trei coloane, zero. Procedeul continu ntr-un mod evident. n final, obinem o matrice superior triunghiular An1 = Hn1An2 = =Hn1...H2H1A. Dac notm H=Hn1...H2H1 i cu R=HA, atunci H este ortogonal i R superior triunghiular.
Corolar. Pentru orice matrice nesingular AM n(R) exist o matrice ortogonal Q i o matrice superior triunghiular R astfel nct A= QR.

Algoritmul Householder pentru rezolvarea sistemelor de ecuaii liniare Fie sistemul Ax =b cu AM n(R). Notm cu C=(A|b)=(cij)M n,n+1 (R) matricea extins. Pentru i: = 1,n1 execut

s :=

c2 ji
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

sfrit pentru i ;

Hi: = In uuT ; C: = HiC ;

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

Soluia exact este x1 = 1, x2 = 2, x1 = 3. Aplicm metoda Householder. 2 1 12 2 1 5 12 5 A = 5 6 2 ; b = 1 , C = 5 6 2 1 ; 4 2 1 3 3 4 2 1 Iteraia 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 0 A1 = H1 A = 5.44888848 1.10316995 ; 0 1.55911078 1.71746403 5.292934112 b1 = H1b = 7.588267109 ; C = H1 C = [A1 b1 ] 8.270613687 Iteraia a IIa
(1) 5.448888481 2 2 a2 = 1.559110785 ; s = c22 + c32 = 5.667557862 ; 0 c22=5.448888481 ; ; =0.015872234 ; u = 11.116446343 ; 1.559110785

Sisteme de ecuaii liniare

33

0 0 1 H 2 = 0 0.961417354 0.275093933 ; 0 0.275093933 0.961417354 - 8.124038405 3.446561747 1.354006401 0 5.667557862 0.588142797 ; A2 = H 2 A1 = 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 Soluia sistemului iniial este x=R1Hb , unde: 0.123091491 0.074854538 0.062742657 1 R = 0 0.176442839 0.053089941 . 0 0 0.511593975 Se obine soluia 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 } n p 2) x p = xi i =1 unde xT = (x1, x2, ..., xn)Rn.
1/ p

, 1 p <

Definiia 1. Se numete norm de matrice orice aplicaie A A M : M n(R)R+

cu proprietile:

34

Bazele Analizei Numerice

(i) (ii) (iii)

A M = 0 dac i numai dac A = 0 , A M = A M , ; R, AM n(R) ,

A+ B M A M + B M , AB M A M B M , A, BM n(R). (iv) Un exemplu de norm de matrice este norma euclidian de matrice, care se definete astfel
1/ 2

n n 2 A E = aij . (1) 1 1 i = j = Proprietile (i) i (ii) sunt evidente. Pentru a demonstra proprietile (iii) i (iv) se folosete inegalitatea CauchyBuniakovskiSchwarz pe Rn. Pentru exemplificare demonstrm (iv). Fie C = AB. Atunci
2 cij

n n 2 n 2 bkj = aik bkj aik k =1 k =1 k =1

n continuare avem
n n n n n n 2 2 2 2 bkj = A 2 B 2 , aik AB E = cij E E i =1 j =1 i =1 k =1 j =1 k =1 de unde rezult AB E A E B E .

Definiia 2. O norm de matrice

vectorial

p dac

Ax p A M

M se numete compatibil cu norma x p pentru orice x.

Observaia 1.

Ax 2 A E x 2 , () x.
n n n n 2 2 2 2 Ax 2 = (ai1x1 + ... + ain xn )2 aij x2 = A E x 2 . j i =1 i =1 j =1 j =1

ntradevr,

Observaia 2. Dac este o valoare proprie a matricei A, atunci A M pentru orice norm de matrice compatibil cu o norm vectorial.

ntradevr, fie v un vector propriu al matricei A care corespunde valorii proprii . Atunci avem v = v = Av A M v ,

Sisteme de ecuaii liniare

35

deci

AM.

Dup cum se tie, ntre mulimea M n(R) a matricelor ptratice cu elemente din R i mulimea L(Rn) a aplicaiilor liniare i continue, U : RnRn , exist o coresponden bijectiv. Mai precis, dac A este matricea asociat transformrii liniare U, atunci U(eiT) = (a1i, a2i, ..., ani), unde eiT = (0, ..., 1, ..., 0)Rn i U(xT) = (Ax)T. Pe de alt parte, spaiul L(Rn) este un spaiu normat n raport cu norma operatorial:
U o = sup

{ U (x ) ;
T

xT = 1

(2)

unde cu
U

am notat o norm oarecare pe Rn.


= inf c > 0 ; U x T

Se tie de asemenea c:
o

( ) c xT

, () x T R n

(3)

Definiia 3. Se numete norma matricei A subordonat normei vectoriale urmtorul numr: Ax A = sup { Ax ; x = 1 } = sup (4) x0 x

Ca i n cazul normei operatoriale, avem A = inf { c > 0 ; Ax c x , () x } .

(5)

Ax A x , x R n , deci norma Din relaia (5) rezult n particular c matriceal definit de (4) este compatibil cu norma vectorial creia i este subordonat. Este evident c aplicaia A A definit de (4) satisface proprietile (i)(iii) din definiia 1. De asemenea avem ABx A Bx A B x ,
de unde rezult A B A B . Aadar, formula (4) definete ntradevr o norm de matrice.
Definiia 4. Dac 1, ..., n sunt valorile proprii ale matricei A , atunci se noteaz cu (A)= max i i (A) se numete raza spectral a matricei A (n aceast
1i n

definiie i pot fi reale sau complexe)


Teorema 1. Pentru AM n(R) avem:

(1)

A = max aij ,
1i n j =1

36

Bazele Analizei Numerice

(2) (3) unde cu

A 1= max aij ,
1 j n i =1

A 2= A A , A p am notat norma matricei A subordonat normei vectoriale x p .

((

))

1 2

Demonstraie.

Ax = max
n

aij x j 1max aij x j x 1max aij 1i n j =1 i n j =1 i n j =1

Rezult

A max aij . Rmne s artm c exist ~ x cu ~ x = 1


1i n j =1

astfel nct
n

A~ x = max aij . Pentru aceasta, fie k astfel nct s avem = max aij
1i j =1
1i n j =1 n

akj
j =1

(6)

0 i fie ~ x j = akj a kj

dac dac

akj = 0 akj 0

.
n n

x = 1 i Evident c ~
(1). n continuare avem
n

A~ x = akj = max aij . Aadar, am demonstrat


j =1 1i n j =1
n

Ax 1= ai1x1 + ... + ain xn ( ai1 x1 + ... + ain xn )


i =1 i =1 n max aij 1 j n i =1

n ( x1 + ... + xn ) = max aij 1 j n i =1

x 1

de unde rezult

A 1 max aij .
1 j n i =1

Sisteme de ecuaii liniare


n

37

Pe de alt parte dac eTj=(0,...,1,...,0) , atunci

e j = 1 i
1

Ae j = aij , de
1 i =1

unde rezult

A 1 aij , pentru orice


i =1

j = 1, n . Aadar,

A 1 max

1 j n i = 1

aij

i cu aceasta afirmaia (2) este dovedit. Fie B=ATA i fie

{ } 2 Evident 1 = sup{( Ax )T Ax ; x 2 = 1 }= A 2 , deci


1 = sup xT Bx ; x 2 = 1
Deoarece mulimea S = x ; x 2 = 1 proprietile: 1=vTBv i v 2 = 1 .

(7) A 2 = 1

este compact, rezult c exist v cu

Vom arta n continuare c Bv=1v , deci c v este un vector propriu pentru B i corespunde valorii proprii 1.
z z B i deci ntr-adevr, pentru orice z0 avem: z z 1 2 2
T

z T Bz 1 z 2 = 1z T z (8) Pe de alt parte este evident c relaia (8) este verificat i pentru z=0. Deci relaia (8) are loc pentru orice z. De asemenea avem: (9) vTBv=1vTv Dac notm cu C=B1In , atunci avem: (8') zTCz0 , () z i (9') vTCv=0 Fie z=v+ty , unde tR este oarecare i y este un vector oarecare. Din (8') i din faptul c C este simetric rezult vTCv+2tyT(Cv)+t2yTCy0 . innd seama de (9') avem (10) t 2 y T Cy + 2ty T (Cv ) 0 . T Pentru ca (10) s fie adevrat pentru orice tR trebuie ca y Cv = 0. Cum y a fost arbitrar rezult 0=Cv=(B1In)v=Bv1v.
Aadar, 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 u0, u 2 = 1 , astfel nct Bu=u. n continuare avem
2

1 = A 2 Au

2 2

= u T Bu = u T u = .

Aadar, 1 este cea mai mare valoare proprie a matricei B, deci am demonstrat i afirmaia (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 2 2 reale. Se tie c 1 sunt valorile proprii ale matricei A2. S , 2 , ..., 2 n
2 presupunem c 1 = max 2 j. 1 j n

Din Teorema 1 rezult c

i>0
rezult

A 2 = 1 . Dac, n plus, A este pozitiv definit, atunci pentru orice i. S presupunem c: 1 2 ... n . Din cele de mai sus

A 2 = 1 , unde 1 este cea mai mare valoare proprie a matricei simetrice i pozitiv definite A.

1.6. Perturbarea sistemelor liniare. Numrul de condiionare al unei matrice


Considerm urmtorul sistem de ecuaii liniare 10 x1 + 7 x2 + 8 x3 + 7 x4 = 32 7 x + 5 x + 6 x + 5 x = 23 1 2 3 4 (1) + + + x x x x 8 6 10 9 2 3 4 = 33 1 7 x1 + 5 x2 + 9 x3 + 10 x4 = 31 a crui soluie exact este x1=x2=x3=x4=1. S considerm acum sistemul (1') n care am modificat puin 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 Soluia sistemului (1') este x1= 9.2 ; x2= 12.6 ; x3= 4.5 ; x4= 1.1 . Aadar, o eroare mic, de ordinul 0.1, a termenilor liberi, produce o eroare mare, de ordinul 10, a soluiei sistemului. Fie acum sistemul (1") n care modificm puin coeficienii 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") + + + x x x x 8 5 . 98 9 . 89 9 2 3 4 = 33 1 6.99 x1 + 4.99 x2 + 9 x3 + 9.98 x4 = 31 Soluia sistemului (1") este: x1= 81 ; x2= 137 ; x3= 34 ; x4= 22 . S analizm acum efectul perturbrii membrului drept asupra soluiei unui sistem liniar Ax=b, n care matricea A este nesingular.

Sisteme de ecuaii liniare

39

Notm cu b perturbarea membrului drept i cu x perturbarea care rezult pentru soluie. Avem: A(x+ x )=b + b , de unde rezult A x = b i deci x =A1 b . Pentru orice norm de matrice compatibil avem:

x A 1 b
Pe de alt parte b = Ax A x , de unde rezult:

(2)

A 1 x b
Din relaiile (2) i (3) obinem

(3)

x
x

A A1

b
b

Numrul de condiionare al unei matrice se definete astfel


cond ( A) = A A 1

(4)

Aadar, ntre eroarea relativ a membrului drept i eroarea relativ a soluiei sistemului avem urmtoarea inegalitate x b cond ( A) . (5) b x Observm c dac numrul de condiionare al matricei coeficienilor sistemului este mare, atunci la erori relativ mici ale termenilor liberi, pot apare erori relativ mari pentru soluia sistemului. n cazul exemplului (1) avem 10 6 10 7 8 8 25 41 68 17 10 7 5 6 5 1 41 , A = A= 10 17 5 3 8 6 10 9 7 5 9 10 6 10 3 2 i cond2(A) 2984. (Sa folosit norma de matrice 2 ). Dup cum se vede, numrul de condiionare este destul de mare, ceea ce explic instabilitatea soluiei sistemului. Numrul de condiionare are urmtoarele proprieti: (i) cond(In)1 (ii) cond(A)=cond(A1) (iii) cond(A)=cond(A) pentru orice 0 1 , unde 12...n>0 sunt valorile proprii ale matricei (iv) cond 2 ( A) = n B=ATA

40

Bazele Analizei Numerice

(v)

Dac A este simetric, atunci cond 2 ( A) =

max i min i

, unde 1, ..., n sunt

valorile proprii ale matricei A (vi) Dac A este ortogonal, atunci cond(A)=1 . Pentru a evalua eroarea soluiei sistemului la o perturbare a coeficienilor sistemului, avem nevoie de urmtoarele dou leme.
Lema 1. Dac AM n(R) i A < 1 , atunci: (i) A+In i AIn sunt nesingulare, i 1 1 ( A I n )1 . (ii) A +1 1 A Demonstraie. Prezentm demonstraia pentru A+In . Presupunem prin absurd c A+In este singular. Atunci exist x 0, x = 1 astfel nct (A+In)x = 0. n continuare avem x = Ax, deci x A x .

Rezult A 1 ceea ce contrazice ipoteza Pentru a demonstra (ii) observm c de unde rezult

A < 1.

1 = I n = (I n + A)(I n + A)1 I n + A (I n + A)1 (1 + A ) (I n + A)1

1 ( A + I n )1 . A +1 Pe de alt parte avem de unde rezult In=(In+A)1+A(In+A)1 ,


= I n A(I n + A)1 1 + A (I n + A)1

(I n + A)1
i mai departe

(I n + A)1

1 . 1 A

Lema 2 (a perturbrii). Fie A, BM n(R) cu proprietile:

(i) (ii)

A 1 A 1 ( B A ) k < 1 .

Atunci B este nesingular i

B 1

1 k

Demonstraie. Din Lema 1 rezult c In+A1(BA)=A1B este nesingular.

Sisteme de ecuaii liniare

41

Cum det(A1B) = det(A1)detB, va rezulta detB 0, deci B este nesingular. Tot din Lema 1 rezult 1 1 1 . B 1 A = I n + A 1 (B A) 1 A 1 (B A) 1 k

Mai departe avem

B 1 = B 1 A A1 B 1 A A1

1 k

Teorema 1. Dac perturbm matricea coeficienilor sistemului Ax = b cu A i


A1A < 1 , atunci ntre eroarea relativ a soluiei i eroarea relativ a matricei

coeficienilor are loc inegalitatea x x

cond( A) 1 cond( A)

A A
A A

Demonstraie. Din egalitile Ax=b i (A+A)(x+x)=b rezult Ax+Ax+Ax=0. n continuare avem x = (A+A)1A 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) = A1A < 1

i va rezulta B
1

= ( A + A )

A1 1 A1A

A1 1 A1 A
A 1 A

(7)

Din (6) i (7) obinem

x
x

A 1 A 1 A
1

1 A

A
A

A
A

innd seama de definiia numrului de condiionare, ultima inegalitate devine x A cond( A) . A A x 1 cond( A) A

42

Bazele Analizei Numerice

Observaia 1. Dac presupunem n plus c perturbm i membrul drept al sistemului cu b atunci rezult

x
x

A b . + A A b 1 cond ( A) A cond ( A)

Observaia 2. Rezolvarea sistemului Ax=b, cu metoda Gauss revine la rezolvarea a dou sisteme triunghiulare Uy=b i Lx=y. Rezolvarea fiecrui sistem necesit n2 operaii. Dac unul din aceste sisteme este ru condiionat (ceea ce se poate ntmpla chiar dac sistemul iniial Ax=b este bine condiionat) 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 condiionat i deci c sistemul Ax = b are aceeai condiionare ca sistemul Rx = y. Aadar, algoritmul Householder are proprieti de stabilitate mai bune dect algoritmul Gauss.
Observaia 3. Pentru evaluarea numrului de condiionare cond(A), este suficient
A1 . A1

s cunoatem un majorant pentru Calculul lui

(LU )1

este mai uor dect calculul lui

, deoarece

inversarea matricelor triunghiulare este uoar. S presupunem c (LU )1 = i A LU < k unde 0<k<1. Atunci din Lema 2 rezult . 1 k ntradevr, s alegem n Lema 2 matricea LU n loc de A i matricea A n loc de B. Avem k A1 ( A LU ) A1 A LU = k < 1 .

A1

Atunci rezult

A1

1 k

i deci cond ( A)

A
1 k

Sisteme de ecuaii liniare

43

1.7. Metode iterative de rezolvare a sistemelor de ecuaii liniare


Metodele directe de rezolvare numeric a sistemelor de ecuaii liniare se utilizeaz pentru sisteme care au matricea coeficienilor dens (aproape toi coeficienii sunt nenuli) i cu un numr de ecuaii moderat (pn la 100 de ecuaii). Pentru sisteme mari de ecuaii de ordinul 103 105 i care au matricea coeficienilor 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 urmtorul proces iterativ: x (m+1) = Bx (m ) + c, m 0 , (3) unde x(0) este un vector arbitrar. Dac notm cu x* soluia exact a sistemului, atunci avem (4) x*=Bx*+c Fie e(m) = x*x(m) vectorul eroare. Din (3) i (4) rezult e ( m+1) = Be ( m) , mN* i mai departe

e ( m ) = B m e ( 0)

(5)
m

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

Este suficient s artm c lim e (m ) = 0 .


m

Din (5) avem


m

e (m ) B m e (0 ) B

e (0 )

.

Deoarece

lim B

= 0 , rezult

lim e (m ) = 0 .

Teorema 2. Condiia necesar i suficient ca irul ( x (m ) ) definit de (3) s fie convergent este ca ( B ) < 1 , unde cu ( B ) sa notat raza spectral a matricei B.

44

Bazele Analizei Numerice

Demonstraie.

Este suficient s artm c

lim B m = 0 dac i numai dac

( B ) < 1 . Din

Algebra liniar se tie c matricea B se poate aduce la forma canonic Jordan, deci c exist o matrice nesingular C astfel nct J p (1 ) 0 L 1 1 , M M C B C = J = J p2 ( 2 ) 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

0 0 O r este o matrice diagonal de ordinul n, iar N este o matrice nilpotent de ordinul n, adic Nn = 0 .
k m k k n continuare avem J m = C m D N . Deoarece Nk=0 pentru kn, vom k =0 m

de alt parte, J = D + N, unde 0 1 O 0 1 D= O r 0 0

avea
k m k k J m = Cm D N . k =0 n

(6)

Observm c

D = max 1 = ( B ) < 1 . Din (6) rezult: 1i r


n mk m(m 1)...(m k + 1) mk k k D N < N ( ( B ) )m k k! k =0 k =0 k! n

Jm

Sisteme de ecuaii liniare

45

Cum
m

lim m k ( ( B)) mk = 0 ,

rezult c

lim J m = 0 ,

deci c

lim J m = 0 .
Reciproc, s presupunem c
m

lim B m = 0 i c (B ) 1 . Atunci exist

un vector propriu x 0 i o valoare proprie , cu 1 , astfel nct 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 fcut. 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 notm cu D = diag ( a11 , ..., a nn ) i cu E=DA, atunci obinem sistemul echivalent (DE)x=b i mai departe
x=D -1 E x + D 1b

(7)
D 1 E = max
n

1 1 Cum D -1 = diag , rezult c a , ..., a nn 11

aij

1i n j =1 a ii j i

Observm 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 este convergent pentru orice aproximaie iniial const n urmtoarele: Sistemul Ax = b se pune sub forma echivalent (7). Scris pe componente, sistemul (7) arat astfel n 1 bi aij x j , i = 1,n . xi = aii j =1 j i

(8) x . Aadar, metoda Jacobi


(0)

(7)

Se obine irul recurent

{ x (m ) }
j =1 j i

unde (8)

n 1 bi aij x (jm ) , i = 1,n . xi(m+1) = aii

46

Bazele Analizei Numerice

Dac matricea A este tare diagonal dominant, irul ( x (m ) ) converge la soluia 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 Soluia exact este x1 = 1, x2 = 2, x3 = 3, 5 0 0 0 0 1 1 0 10 0 0 1 0 1 , E= D= 0 0 5 0 1 1 0 0 0 0 10 1 1 1

x4 = 4. 1 0 0,2 0,2 0,2 1 0,1 0 0,1 0,1 -1 , D E = , 1 0,2 0,2 0 0,2 0,1 0,1 0,1 0 0

0,8 1,2 -1 , D -1 E = 0.6 < 1 . D b= 1,6 3,4 Obinem urmtorul proces iterativ: x (m+1 ) = 0.2 x (m) + 0.2 x (m) + 0.2 x (m) 0.8 2 3 4 1 (m) (m) x (m+1 ) = 0.1x (m) + 0.1x3 + 0.1x 4 1.2 2 1 (m+1 ) (m) (m) (m) = 0.2 x1 + 0 .2 x 2 + 0 .2 x 4 + 1 .6 x3 (m+1 ) (m) (m) (m) x4 = 0.1x1 + 0.1x 2 + 0.1x3 + 3 .4

Dac alegem aproximaia iniial iteraii obinem

0 0 0 0 x1 = x2 = x3 = x4 = 0 atunci dup 5

(5) (5) (5) (5) x1 = 0,948; x 2 = 1,969; x3 = 2,948; x 4 = 3,969

O alt metod iterativ cunoscut este metoda GaussSeidel corespunde urmtoarei spargeri a matricei coeficienilor: A = (D+L ) + U unde D = diag (a11, ..., ann ),

i care

0 a L = 21 ... a n1

0 0 ... an2

... ... ... ...

0 0 a12 0 0 0 , iar U = ... ... ... 0 0 0

... a1n ... a 2n . ... ... ... 0

Sisteme de ecuaii liniare

47

Sistemul (1) devine (D+L) x = Ux +b iterativ: (D+L) x(m+1) = Ux(m) +b . Pe componente obinem i-1 1 bi aij x (m+1) xi(m+1) = j aii j =1

i mai departe obinem urmtorul proces (9)


n (m ) , i = 1,n . aij x j

j =i +1

(10)

, este imediat Din algoritmul (10) se observ c fiecare nou component, x j utilizat la calculul urmtoarei componente. Se poate arta c procesul iterativ GaussSeidel este convergent dac matricea A este tare diagonal dominant. n cazul exemplului precedent obinem (m+1) (m ) x1 0 1 1 1 0 0 0 4 5 x1 ( ) ( ) + 1 m m 0 0 1 1 x 12 x2 1 10 0 0 2 + = 1 1 5 0 ( ) (m ) + 1 m 8 0 0 0 1 x3 x3 0 0 0 0 (m ) 34 1 1 1 10 ( ) + 1 m x4 x4
(m+1 ) x1 x (m+1 ) 2 x (m+1 ) 3 x (m+1 ) 4
(5) x1

( m+1)

sau

1 (m) (m) (m) = x 2 + x3 + x 4 4 5 1 ( m+1) m m ( ) ( ) = x1 + x3 + x 4 + 12 10 . 1 ( m+1) m+1) m) ( ( = x1 + x2 + x4 + 8 5 1 ( m+1) 1 1 m+ m+ ( ) + x ( ) + 34 = x1 + x2 3 10 dup 5 iteraii obinem
(5) x3 (5) x2

(0) Pentru x1

(0) (0) ( 0) = x2 = x3 = x4 = 0,

= 0.995 ;

= 1.998 ;

= 2.998 ;

(5) x4

= 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 coeficienilor 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 notm cu r= Av b . (2) Vectorul r se numete vectorul rezidual. Scopul oricrei metode de relaxare este ca prin schimbarea sistematic a vectorului v, vectorul rezidual corespunztor r s se micoreze, 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) funcia ptratic n 1 n n 1 F (v) = aij vi v j bi vi = Av,v b,v (4) 2 i =1 j =1 2 i =1
Deoarece A este pozitiv definit, rezult Q(v)>0 pentru orice v0, unde Q(v) = Av,v . Observm 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 determinrii soluiei sistemului (1) este echivalent cu problema determinrii punctului de minim al funciei ptratice (4). Demonstraie. Fie v0 soluia sistemului (1). Atunci r0=Av0b=0. Cum F (v0 ) = 0 . Aadar, v=v0 este punct critic pentru F. Pe r0=gradF(v0), rezult vi de alt parte,

d 2 F(v0 ) = aij dvi dv j > 0 .


i=1 j =1

n n

Rezult c v=v0 este un punct de minim global pentru F.

Sisteme de ecuaii liniare

49

Reciproc, dac v=v0 este punct de minim pentru F atunci F (v0 ) = 0 , i = 1,n . vi Rezult
j =1 0 aij v j bi = 0, i=1,n , deci v=v0 este soluie pentru (1). n

n continuare prezentm principiul de baz al metodei relaxrii. Fie v un vector de prob oarecare, p o direcie dat i D = { v = v + tp; t R } , dreapta D care trece prin v i este paralel cu p. Ne propunem s determinm v 0 ) = min{F (v ); v D} . innd seama de (4), rezult astfel nct F (v 0
F (v ) = = 1 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 Ap,p + t Av,p t b,p = F (v) + Ap,p + t Av b,p = 2 2 = F (v ) + t2 Ap,p + t r,p . 2

= F (v ) +

Folosim notaia

t2 Ap,p + t r,p (6) 2 Determinm pe t astfel nct f (t ) = F (v ) s fie minim. Pentru aceasta trebuie s avem f (t ) = 0 , de unde rezult t Ap,p + r,p = 0 . Aadar, obinem: f (t ) = F (v ) = F (v + tp ) = F (v) + t min =
Cum

r,p Ap,p

(7)

f (t ) = Ap,p > 0 , rezult c vectorul v 0 minim pentru F( v ) . n continuare avem

= v + t min p
2

este un punct de

1 r,p ) = F (v) f (t min ) = F (v0 2 Ap,p de unde rezult


2

1 r,p ) F(v) = 0 . F = F(v0 2 Ap,p r,p 0 . Rezult c direcia Pentru ca F<0, trebuie ca astfel nct p s nu fie perpendicular pe r. p se alege

50

Bazele Analizei Numerice

= Av 0 b este vectorul rezidual corespunztor vectorului Observaia 1. Dac r0 ,p = 0 . = v + t min p , atunci r0 v0

ntradevr,

,p = Av-b,p + t min Ap,p = r,p r0

r,p Ap,p

Ap,p = 0 .

Pentru interpretarea geometric a principiului relaxrii s considerm cazul particular n = 2. Ecuaiile F(v) = constant, reprezint ecuaiile unor elipse concentrice, al cror centru comun, coincide cu punctul de minim al funciei F. ntradevr, ecuaia F(v) = c revine la 2 2 (8) a11v1 + 2a12 v1v 2 + a 22 v 2 2b1v1 2b2 v 2 = 2c . Deoarece A este pozitiv definit, rezult c a11 a12 = a >0 , 12 a 22 deci (8) reprezint o elips. Fie v0 un vector de prob oarecare i c0=F(v0). Ecuaia F(v)=c0 reprezint o elips i v=v0 aparine acestei elipse. Deoarece r0=gradF(v0), rezult c r0 este perpendicular pe tangenta n v=v0 la elips. Direcia p1 o alegem astfel nct s nu fie perpendicular pe r0. Fie v1=v0+tminp1 i fie c1=F(v1). Punctul v=v1 aparine elipsei F(v)=c1 i de asemenea aparine dreptei ce trece prin v0 i are direcia p1. Fie r1=Av1b. Din Observaia 1, r0 v0 rezult c r1 este perpendicular v1 pe direcia p1. Pe de alt parte r1=gradF(v1) este perpendicular pe tangenta n v=v1 la elipsa p1 F(v)=c1. Rezult c v=v1, este r1 punctul de tangen la elipsa F(v)=c1 al dreptei care trece prin v0 i are direcia p1.

1.9. Metoda relaxrii simple


Este o metod specific calculelor de mn, avnd mai ales o semnificaie istoric. Fie v un vector de prob oarecare i fie corespunztor. r=Av b vectorul rezidual

Sisteme de ecuaii liniare

51

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


1i n

t min =

r, p Ap,p

rj a jj rj a jj

i ej i j i= j . rj a jj (2) (1)

v = v + t min p = v Pe componente avem: vi rj = vi vj a jj

daca daca

De asemenea vom avea r = Av b = r

Ae j i mai departe

rj r1 = r1 a1 j a jj ................. r j =0 ................... rj rn = rn a nj a jj
F = F (v) F (v ) =
2 1 rj <0, 2 a jj

(3)

ceea ce asigur convergena metodei. Dei convergena este asigurat, experienele numerice arat c aceasta este foarte lent. Convergena este mbuntit dac matricea A este tare diagonal dominant.
Exemplu. x1 0.2 x1 0.2 x 1

+ 0.2 x 2 x2 + 0.2 x 2
(1)

+ 0.2 x3 + 0.2 x3 x3

+ 0.6 + 0.5 + 0,4

=0 =0 =0

Dac alegem v

0 = 0 , atunci 0

52

Bazele Analizei Numerice

0.6 (1) (1) 1 ( ) = 0.5 i max(r1(1) , r2 r , r3 ) = r1(1) = 0.6 . 0.4 Aadar 1 r1(1) r1(1) (2) (2) (1) (1) e1 i r = r Ae1 . p1 = e1 = 0 , v = v a11 a11 0 Pe componente avem

v ( 2) 1 ( 2) v 2 ( 2) v 3
Rezult

= 0.6 =0 =0 ,

( 2) (2) (2) r2 = max r1(2) , r2 , r3 = 0.62 .

r (2) 1 (2) r2 (2) r 3

=0 = 0.62 , = 0.52

0 (2) (3) (2) r2 e2 p 2 = e2 = 1 , v = v a 22 0 v (3) 1 (3) v 2 (3) v 3


r3
(3)

i r

(3)

=r

(2)

(2) r2

a 22

Ae2 ;

= 0 .6 = 0.62 , =0

= max r1 , r2

r (3) 1 (3) r 2 (3) r 3


(3)

= 0.124 =0 = 0.644

(3)

, r3

(3)

) = 0.644 .
(3)

n continuare 0 r (3) p3 = e3 = 0 , v (4) = v (3) 3 e3 a33 1

r i r (4) = r (3) 3 Ae3 . a33 = 0.2528 = 0.1288 , etc. =0

v ( 4) 1 ( 4) v 2 ( 4) v 3

= 0.6 = 0.62 = 0.644 ,

r (4) 1 (4) r2 (4) r3

Sisteme de ecuaii liniare

53

1.10. Metoda deplasrilor succesive (Gauss - Seidel)


n metoda deplasrilor succesive, direcia de relaxare urmeaz ciclic direciile 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 32 2 33 3 3 31 1 Fie v
(0)

1 vectorul de prob iniial i fie p = e1 = 0 . Conform formulei (1) din 9 0

(0) ( 0 ) r1 rezult v = v e1 , iar pe componente a11

1 (0) (0) (0) (0) = v1 a11v1 + a12 v2 + a13v3 b1 v1 a11 (0) = v2 v2 (0) v3 = v3 n continuare alegem direcia de relaxare 0 p = e2 = 1 0

)
.

i obinem vectorul v de componente v1 = v1 1 (0) = v2 b2 ) . (a v + a v + a23v3 v2 a22 21 1 22 2 (0) = v3 v3 n sfrit, pentru direcia de relaxare 0 p = e3 = 0 , 1

54

Bazele Analizei Numerice

obinem vectorul v de componente v = v 1 1 . v2 = v2 1 (0) v3 = v3 + a32 v2 + a33v3 b3 ) (a31v1 a33

Dup ncheierea acestui ciclu, vectorul gsit va fi notat cu v(1) i va avea componentele: (1) a ( 0 ) a13 ( 0 ) b1 = 12 v2 v + v1 = v1 a11 a11 3 a11 (1) a b ( 1 ) a23 ( 0 ) = 21 v1 (1) v3 + 2 v2 = v2 a22 a22 a22 (1) a b ( 1 ) a32 ( 1 ) = 31 v1 v2 + 3 v3 = v3 a33 a33 a33 Efectund calculele obinem: a v (1) + a v (0) + a v (0) = b 1 13 3 12 2 11 1 ( 0) (1) (1) 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 ecuaii, dup (m+1) cicluri se obine vectorul

v ( m+1) care verific ecuaiile: a v(m+1 ) + a v(m) + a v(m) + ... + a v(m) = b 12 2 13 3 1n n 1 11 1 (m+1 ) (m+1 ) (m) (m) + a22v2 + a23v3 + ... + a2 n vn = b2 a21v1 .......................................................................... (m+1 ) (m+1 ) (m+1 ) (m+1 ) + a n 2 v2 + ... + ann vn = bn +an3v3 an1v1

(2)

Observaia 1. Formulele (1) coincid cu formulele (10) din 7. Dac notm cu 0 0... 0 0 a11 0 L 0 0 0... 0 a 21 0 a22 L 0 T , E = a31 a32 0... 0 , F = E i D = M M M 0 ... ... 0 L ann a n1 a n 2 ... 0

Sisteme de ecuaii liniare

55

atunci matricea A admite descompunerea A=E+D+F verific relaia matricial (D+E)v(m+1) + Fv(m) = b , de unde rezult v(m+1)= (D+E) 1Fv(m)+(D+E) 1b . n sfrit, notnd M= (D+E) 1F i C=(D+E) 1b obinem procesul iterativ v(m+1)=Mv(m)+C .

i irul de vectori v ( m) (3) (4) (5) (6)

Exemplu. S se gseasc soluia aproximativ obinut dup 5 iteraii cu metoda deplasrilor succesive, lund vectorul iniial (0, 0, 0), pentru sistemul Ax = b, unde: 1 2 1 0 0 1 1 3 1 0 A= , b= . 0 1 3 1 1 1 0 0 1 2 Rezolvare 18 0 0 0 0 -1 0 0 1 6 12 0 0 0 0 -1 0 -1 F= ( D+E ) = 0 0 0 -1 36 2 4 12 0 1 2 6 18 0 0 0 0
0 18 0 0 1 0 6 12 0 1 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 ; ( M ) = 0.369 < 1 , deci procesul este convergent. Pe componente algoritmul conduce la:

3 = 0 ; 4 = 0 .

56

Bazele Analizei Numerice

Iteraia I 1 (1) ( 0) ( 0) x1 = a (b a12 x2 a1 3x 3 11 x (1) = 1 (b a x ( 1) a x (0) 21 1 23 3 2 a22 1 (1) 1 ) (1 ) x3 (b a 31x ( = 1 a 32x 2 a33 (1) 1 1 ) (1 ) (b a 41x ( x4 = 1 a 42x 2 a 44

0) a1 4x (4 )

0.5 (1) 0.5 rezult x = 0) 0.5 ) a 34x (4 0.75


0) a 24x (4 ) 1 ) a 43x ( 3 )

Iteraia a II a 1 ( 2) (1 ) (1 ) (1 ) x1 = a (b a12 x2 a1 3x 3 a1 4x 4 ) 11 0.75 x ( 2) = 1 (b a x ( 2) a x ( 1) a x ( 1) ) 21 23 24 2 1 3 4 a22 ( 2) 0.75 rezult x = 1 ( 2) 2) ( 2) (1 ) 0.83333 x3 (b a 31x ( ) = a x a x 32 2 34 4 1 0.91667 a33 ( 2) 1 ( 2) ( 2) ( 2) ( ) = x b a x a x a x 4 41 1 42 2 43 3 a44 Iteraia a III a 1 (3) ( 2) x1 = a (b a12 x2 11 x (3) = 1 (b a x ( 3) 21 1 2 a22 1 (3) 3) x3 (b a 31x ( = 1 a33 (3) 1 3) (b a 41x ( x4 = 1 a 44 Iteraia a IV a 1 ( 4) ( 3) x1 = a (b a12 x2 11 x ( 4) = 1 (b a x ( 4) 21 1 2 a22 1 ( 4) 4) x3 = (b a 31x ( 1 a33 ( 4) 1 4) (b a 41x ( x4 = 1 a 44
Iteraia a V a
2) ( 2) a1 3x ( 3 a1 4x 4 )

0.875 (3) 0.90278 rezult x = 0.93981 a 32x (23) a 34x (42) ) 0.96991
2) ( 2) a 23x ( 3 a 24x 4 ) 3) a 42x (23) a 43x ( 3 )

3) ( 3) a1 3x ( 3 a1 4x 4 )

4) a 42x (24) a 43x ( 3 )

0.95139 ( 4) 0.96373 rezult x = 0.97788 a 32x (24) a 34x (43) ) 0.98894


3) ( 3) a 23x ( 3 a 24x 4 )

Sisteme de ecuaii liniare

57

1 ( 5) ( 4) x1 = a (b a12 x2 11 1 ( 5 ) 5) x = (b a 21x ( 1 2 a22 1 5) (5) x3 = (b a 31x ( 1 a33 (5) 1 5) (b a 41x ( x4 = 1 a 44

4) ( 4) a1 3x ( 3 a1 4x 4 )

0.98187 (5) 0.98658 rezult x = . ( 5) ( 4) 0.99184 a 32x 2 a 34x 4 ) 0.99592


4) ( 4) a 23x ( 3 a 24x 4 ) 5) a 42x (25) a 43x ( 3 )

Teorema 1. Dac matricea A este simetric i pozitiv definit, procesul iterativ Gauss Seidel este convergent. Demonstraia rezult din analiza descreterii funciei ptratice F prin trecerea de la o iteraie la alta. O alt demonstraie se bazeaz pe faptul c se poate arta c dac A este simetric i pozitiv definit, atunci ( M ) < 1 i conform Teoremei 2 din 7, procesul iterativ este convergent.

1.11. Metoda suprarelaxrii


Pentru sisteme mari de ecuaii, procesul iterativ Gauss Seidel converge lent, deoarece raza spectral ( M ) este n vecintatea lui 1. Metoda suprarelaxrii este o generalizare a metodei Gauss Seidel, care const n introducerea unui parametru n vederea accelerrii convergenei. Ca i n metoda Gauss Seidel, direcia de relaxare urmeaz ciclic direciile e1, e2 , ..., en dar se nlocuiete tmin cu t=tmin. Exemplificm metoda pe cazul particular al unui sistem de trei ecuaii. Fie v(0) vectorul de prob iniial. Dup un ciclu n care direcia de relaxare urmeaz succesiv direciile e1, e2 , e3 obinem vectorul v(1) de componente: (1) (0) (0) (0) (0) a11v1 + a12 v2 + a13v3 b1 v1 = v1 a11 (1) (0) (1) (0) (0) (1) a21v1 + a22 v2 + a23v3 b2 v2 = v2 a22 (1) (0) (1 ) (1 ) (0) a31v1 + a32 v2 + a33v3 b3 v3 = v3 a33

( ( (

) )

Dac = 1, obinem 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 ) (0) (0) 1 -1 ( 1 ) (2) a21v1 + a22 v2 + ( 1 )a22 v2 + a23v3 = b2 (1) (1 ) (0) 1 -1 ( 1 ) a31v1 + a32v2 +a33 v3 + ( 1 )a33v3 = b3 Dac introducem notaiile 0 0 0 0 0 a11 E = a 21 0 0 , D = 0 a 22 0 i F=ET , a 0 0 a33 31 a32 0 relaiile (2) capt forma matricial (3) (E+ 1D)v(1) + [F+(1 1)D]v(0) = b . n general, pentru un sistem de n ecuaii, irul de vectori v(m) satisface relaia: (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 . Notm cu M () = ( E + 1 D) 1 F + (1 1 ) D . (5) 1 1 C () = E + D b

Obinem astfel procesul iterativ (6) v(m+1) =M( )v(m) + C() . Pentru = 1 obinem 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 obine cea mai rapid convergen. Se poate demonstra urmtoarea teorem.
Teorema 1. Dac matricea A este simetric i pozitiv definit, metoda suprarelaxrii 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. Definiia 1. O matrice A se numete bloc tridiagonal, dac are urmtoarea structur:

Sisteme de ecuaii liniare

59

0 L 0 D1 F1 0 0 E1 D2 F2 0 L 0 E 0 2 D3 F3 L , A = O M M L Em 2 Dm1 Fm1 0 0 L 0 Em1 Dm unde Di sunt matrice ptratice de diferite ordine, Ek i Fk sunt, n general, matrice dreptunghiulare. Fk are acelai numr de linii ca matricea Dk i acelai numr de coloane ca matricea Dk+1. Ek are acelai numr de linii cu Dk+1 i acelai numr de coloane cu Dk. n afara matricelor care intr n band, toate elementele sunt nule. Dac, n plus, matricele Di sunt diagonale, A se numete diagonal bloc tridiagonal. Prezentm de asemenea fr demonstraie urmtoarea teorem. Teorema 2. Fie A o matrice simetric, pozitiv definit i diagonal tridiagonal. 2 , unde Atunci parametrul optim de relaxare este dat de relaia opt = 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 0 2 1 0 0 0 1 0 1 3 1 0 1 0 1 0 , E+F = A= , 0 1 0 1 0 1 3 1 0 0 0 1 2 0 1 0 1 0 0 0 2 2 0 0 0 1 0 1 0 0 3 0 0 3 , D 1 ( E + F ) = 3 D= . 1 1 0 0 3 0 0 0 0 0 0 2 3 3 1 0 0 0 2 Ecuaia caracteristic este

60

Bazele Analizei Numerice

1 1 0 3 3 =0, 1 1 0 3 3 1 0 0 2

1 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 Rezult

i =

4 7 18

1 =0.60763 .
2 1+
2 1 1

Parametrul optim de relaxare opt =


(m+1) (m)

=1.11469 .

=M( )x + C() , unde Procedeul iterativ x 0.55734 0 0 0.11469 0.55734 0.0924 0.37156 0 0.04261 0.57865 , C ( ) = , M ( ) = 0.01583 0.58657 0.03433 0.02337 0.37156 0.00882482 0.01913 0.01303 0.0924 0.88426 conduce la urmtoarele valori ale vectorului soluiilor pentru primele cinci iteraii: 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 ecuaii liniare

61

1.12. Metoda gradienilor conjugai


Fie sistemul Ax=b, unde A este simetric i pozitiv definit.
Definiia 1. Spunem c direciile p i q sunt direcii 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 corespunztor. n metoda gradienilor conjugai pentru rezolvarea sistemului Ax=b, prima direcie de relaxare se alege p(1) = r(0) . n continuare avem: t min = r ( 0 ) ,p (1) Ap (1) ,p (1) = r (0) ,r (0) Ap (1) ,p (1) , (1) (2)

unde

v(1) = v(0) + q1p(1) , r (0) ,p (1) Ap (1) ,p (1)

q1 = t min =

(3) cnd v parcurge dreapta ce trece

Valoarea minim a funciei F=F(v), prin v(0) i are direcia p(1)= r(0) este v(1). Fie

r(1)=gradF(v(1))=Av(1) b. Din Observaia 1 din 8 rezult c


r (1) ,p (1) = r (1) ,r (0) = 0 .

(4)

Urmtoarea direcie de relaxare p(2) se alege de forma p(2)= r(1)+c1p(1) i n plus s fie conjugat direciei p(1) n raport cu A. Aadar, avem:
0 = Ap (2) ,p (1) = p (2) ,Ap (1) = r (1) ,Ap (1) + c1 Ap (1) ,p (1)

de unde rezult c1 = r (1) ,Ap (1) Ap (1) ,p (1) . (5)

Avem de asemenea

62

Bazele Analizei Numerice

(2)

=v

(1)

+ t min p

(2)

=v

(1)

r (1) ,p (2) Ap
(2)

,p

(2)

p (2) .

(6)

n general, pentru orice k2 obinem ck-1 = r ( k 1) ,Ap ( k 1) Ap ( k 1) ,p ( k 1)


r ( k 1) ,p ( k ) Ap ( k ) ,p ( k)

(7) (8) (9)

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

qk =

vk = v ( k 1) + qk p ( k ) . (10) Metoda gradienilor conjugai este definit de formulele (7) (10). n continuare prezentm unele simplificri i proprieti suplimentare. Deoarece r(k 1) este ortogonal pe direcia 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 qk = r ( k 1) ,r ( k 1) Ap ( k ) ,p ( k ) >0. (9)

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 ) . Obinem deci urmtoarea relaia de recuren (11) r ( k ) = r ( k 1) + qk Ap ( k ) . Observm c
r ( k ) ,r ( k 1) = 0 .

(12) . (13) p(k) i p(k 1) sunt


= r ( k 1) , r (k 1 )

ntr adevr, din (11) rezult


r ( k ) , r ( k 1) = r ( k 1) , r ( k 1) + q k r ( k 1) , Ap ( k )

Pe de alt parte, innd seama de (8), de (9) i de faptul c A conjugate, rezult


qk r
(k 1 )

,Ap

(k)

= r

( k 1)

,r

( k 1)

r ( k 1) , Ap ( k ) Ap
(k )

, r

( k 1)

+ c k 1 p

( k 1)

. Din (13) i (14) rezult acum (12) .

Sisteme de ecuaii liniare

63

Deoarece Ap(k) oricum trebuie calculat, rezult c vectorul rezidual r(k) se va calcula din relaia 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) .

innd seama de (7) i de (9) obinem ck 1 = r (k 1 ) ,Ap(k 1 ) Ap(k 1 ) ,p(k 1 ) = r (k 1 ) ,r (k 1 ) r (k 2 ) ,r (k 2 ) .

Algoritm pentru rezolvarea sistemelor de ecuaii liniare cu metoda gradienilor conjugai Calculeaz

r ( 0 ) = Av( 0 ) b ; p ( 1 ) = r ( 0 ) ;
q1 = r ( 0 ) ,r ( 0 ) Ap
(1) (1)

,p

; v( 1 ) = v( 0 ) + q1 p( 1 ) ; r ( 1 ) = r ( 0 ) + q1 Ap( 1 ) ;

Pentru k:=2,n calculeaz ck 1 = r (k 1 ) ,r (k 1 ) r


(k 2 ) (k 2 )

,r

; p(k) = r (k 1 ) + ck 1 p(k 1 ) ;

qk =

r (k 1 ) ,r (k 1 ) Ap ,p
(k) (k)

; v(k) = v(k 1 ) + qk p(k) ; r (k) = r (k 1 ) + qk Ap(k) ;

sfrit 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 5 A 1 1 1 6 1 1 2 7 2 1 8 b 6 7 9 8 Vectorul de proba x 0 0 0 0 n 4

1 2

2 1

Algoritmul metodei gradientilor conjugati < 0> r p q A .x b < 0> r < 0> . < 0> r r . A p .p < 0> r <k r <k r <k r <k r q .A .p
1> 2>

GrCon( A , b , x, n )

x x q .p < 1> r

for k 2 .. n c p q . r< k . r< k . r< k


1> 2>

1> 1>

c .p
1>

A .p .p <k r
1>

x x q .p < k> r x q .A .p

Apelarea programului si afisarea rezultatelor

1 GrCon( A , b , x, n ) = 1 1 1

Sisteme de ecuaii liniare

65

Teorema 1. n metoda gradienilor conjugai direciile de relaxare p(k), (k=1,2,...) sunt conjugate dou cte dou n raport cu matricea A, iar vectorii reziduali r(k), (k=0,1,...) sunt ortogonali doi cte doi. Demonstraie.

Demonstraia se face prin inducie relativ la k . Pentru k=1 avem r (1) , r (0) = 0 din (4), iar pentru prima afirmaie nu avem ce arta. Ipoteza de inducie este:
r (i ) , r ( j ) = 0 p (i ) , Ap ( j ) = 0

pentru ij , 0i, pentru ij , pentru j = 0 ,k j = 1,k .

jk ,

(15) (16) (17) (18)

1ijk .

Va trebui s artm c
r (k +1 ) ,r (j) = 0 , p ( k +1) , Ap ( j ) = 0 , pentru

Fie j=k, atunci


p ( k +1) , Ap ( k ) = Ap (k +1 ) ,p (k) = 0

deoarece pk i pk+1 sunt A conjugate. Fie 1j<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). Ap(j) = 1 (j) (j-1 ) r -r qj

Pe de alt parte,

i din (15) rezult

r (k) ,Ap(j) = 0 .

Aadar am demonstrat (18). Pentru j=k, (17) este adevrat din (12). Fie 0j<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 )

innd seama de (18) i de faptul c A este simetric, rezult cu aceasta teorema este demonstrat.

r (k +1 ) ,r (j) = 0 i

Din Teorema 1 rezult c vectorii reziduali r(k) sunt ortogonali doi cte doi i deci sunt liniar independeni (dac sunt nenuli). Aadar, nu pot exista (n+1) vectori reziduali nenuli. Rezult c n metoda gradienilor conjugai soluia exact

66

Bazele Analizei Numerice

se gsete n cel mult n pai. Teoretic ar trebui ca vectorul rezidual r(n) s fie zero i deci v=v(n) s fie soluia exact a sistemului. n practic acest lucru nu se ntmpl, deoarece n determinarea vectorilor r(k) intervin erori de calcul, care fac ca acetia s nu formeze un sistem ortogonal. Deoarece n general r(n)0, continum s calculm r(k), k>n pn obinem un (k) vector rezidual nul sau foarte mic r << 1 . Aceast atitudine se justific prin faptul c metoda gradienilor conjugai este o metod de relaxare prin care valoarea funciei ptratice F=F(v) se micoreaz la fiecare pas. Metoda gradienilor conjugai se dovedete foarte util pentru sistemele n care matricea A are multe zerouri i fiecare ecuaie are o anumit regularitate intern. Astfel de sisteme apar n procesul de discretizare a problemei la limit a ecuaiilor cu derivate pariale de tip eliptic.

1.13. Metoda celor mai mici ptrate


n procesul de prelucrare i ajustare a datelor, apar sisteme de ecuaii liniare supradimensionate sau subdimensionate. Abordm pentru nceput problema sistemelor supradimensionate. Fie sistemul a11 x1 +...+ a1n xn = b1 (1) , m>n . .......................... a x +...+ a x = b mn n m m1 1 Evident, un asemenea sistem poate s nu aib soluie. Fie
r = Ax b = (r1, r2 , ..., rm )T vectorul rezidual , unde ri = ai1 x1 +...+ ain xn bi , i = 1, m .

(2)

Considerm funcia ptratic


2 2 f(x) = f(x1,...,xn ) = r,r = r12 + r2 +...+ rm

(3)

Definiia 1. Se numete soluie n sensul celor mai mici ptrate a sistemului (1), acel vector x* , pentru care funcia (2) are valoarea minim.

Dac:

sistemul (1) este compatibil i x=x* este soluia exact a sa.

xR n

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

Sisteme de ecuaii liniare

67

n general, sistemul (1) nu este compatibil i

xR

min f(x) = f(x* ) > 0 , iar


n

x=x*

este un substitut pentru soluia sistemului i anume soluia n sensul celor mai mici ptrate. Funcia 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 soluie n sensul celor mai mici ptrate i aceasta este soluia (unic) a sistemului.

AT Ax=AT b (5) (Sistemul (5) se numete sistemul normal al lui Gauss). Demonstraie. Punctele de extrem ale funciei ptratice f dat de (4), se caut printre punctele sale critice, iar acestea, se afl rezolvnd sistemul: grad f = 0 Cum grad f=ATAx ATb, obinem 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 ptratic de ordinul n i rangB=n, conform celor de mai sus. Rezult c sistemul (5) admite o soluie 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 adevr, 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

( )

( )

d 2 f(x) = bij dxi dx j > 0 ,


i =1 j =1

de unde rezult c x=x demonstrat.

este punct de minim pentru f i cu aceasta teorema este

Aadar, n ipoteza rangA=n, soluia sistemului (1), n sensul celor mai mici ptrate, este unic i se afl rezolvnd sistemul (5). Acest sistem este simetric pozitiv definit. Rezolvarea sa se poate face prin metoda Cholesky sau una din metodele de relaxare.
Observaia 1. Teoretic, soluia sistemului (5) este x*=(ATA) 1ATb. Matricea P=(ATA) 1AT se numete pseudoinversa matricei (dreptunghiu lare) A.

68

Bazele Analizei Numerice

Se observ c dac A este ptratic, atunci P=A 1(AT) 1AT=A 1, deci noiunea de matrice pseudoinvers generalizeaz noiunea de matrice invers (pentru matrice dreptunghiulare). Rezolvarea practic a sistemului (5) ridic probleme din cauza faptului c numrul de condiionare 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 min Bei ,ei = minbii , 1 = sup max Bei ,ei = maxbii i n = inf x0 x,x i i i i x0 x,x

rezult

cond( B)

maxbii . minbii

(7)

Exemplul 1. (Dreapta de regresie) S presupunem c vrem s gsim 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 obine astfel sistemul 0 m+n=0 2 m+n=1 . (8) 5 m+n=3 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 = 15 . 25 5 8 1 5 10 1 6 Ecuaiile normale ale lui Gauss sunt 193m + 25n = 117 . 25m + 5n = 15

Soluia exact este

21 3 ,n = , iar valorile proprii sunt 1 = 196.268 i 34 34 2 = 1.732 . Rezult cond( B ) 113 . Dac folosim estimarea (7) obinem m=

Sisteme de ecuaii liniare

69

maxbii 193 = = 38,6 . minbii 5


Dreapta de regresie n acest caz este:

21 3 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 determinm dreapta de regresie corespunztoare punctelor M i ( xi ,yi ) , i = 1,n . Matricele 1 1 n(n + 1)(2n + 1) n(n + 1) 2 1 T 6 2 i B = A A = A= n(n + 1) M M 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 condiionat.
y=
Sistemele subdimensionate apar n probleme legate de ajustarea datelor. S presupunem c msurnd n cantiti x1, x2, ... , xn, gsim valorile l1, l2, ... , ln. Pe de alt parte, necunoscutele x1, x2, ... , xn satisfac anumite ecuaii i anume a11 x1 + ... + a1n xn = b1 (9) , m<n . ........................ a x + ... + a x = b mn n m m1 1 Datorit lipsei de acuratee a msurtorilor se pune condiia ca suma ptratelor coreciilor extrem cu legturi.
i =1 2 (li xi ) s fie minim. Se obine astfel o problem de n

Exemplul 2. S presupunem c msurnd unghiurile x1, x2, x3 ale unui triunghi gsim valorile l1, l2, l3. Evident avem legtura x1+ x2+ x3 = 180 . Impunem condiia ca abaterile datorate impreciziei msurtorilor s fie ct 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 determinm n necunoscute x1, x2, ... , xn care satisfac legturile (9) i care minimizeaz funcia: f(x1,...,xn ) = (x1 l1 )2 + ... + (xn ln )2 . Considerm funcia auxiliar ( x1 ,..., xn , 1 ,..., m ) = ( x1 l1 ) 2 + ... + ( xn ln ) 2 21 (a11x1 + ... + a1n xn b1 )... 2m (am1x1 + ... + amn xn bm ) Punctele critice ale funciei sunt date de sistemul x1 l1 (a111 + ... + am1m ) = 0 ............................................ xn ln (a1n 1 + ... + amn m ) = 0 . (10) a11 x1 + ................. + a1n xn b1 = 0 ................................................ am1x1 + ................. + amn xn bm = 0 Dac notm cu l = (l1 ,..., ln )T i cu = (1 ,..., m )T , atunci sistemul (10) se scrie sub forma matricial

x = AT + l Ax = b nlocuind (10) n (10) obinem sistemul AAT = b Al .


T

(10) (10) (11)

Dac rang A = m , atunci rang ( AA ) = m i sistemul (11) are soluie unic. Mai mult, matricea AAT este ptratic, simetric i pozitiv definit, deci rezolvarea sistemului (11) se poate face cu metoda Cholesky sau una din metodele de relaxare. Rezolvnd sistemul (11) gsim multiplicatorii lui Lagrange 1 ,..., m , iar din relaia x = AT + l determinm punctul de minim condiionat al funciei f.
2 2 (Cum d 2 = 2(dx1 + ... + dxn ) > 0 rezult c avem ntr adevr un punct de minim).

Exerciii

Sisteme de ecuaii liniare

71

Folosind metoda Gauss s se rezolve urmtoarele sisteme de ecuaii liniare: =2 6 x1 + x2 x3 + x4 x + 7x + 2x x = 1 1 2 3 4 1. x1 + 2 x2 + 8 x3 + x4 = 12 = 5 x1 x2 + x3 + 9 x4 1.0 0.1667 0.1667 0.1667 1.0 0.3171 0.1707 ~ 0 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 Soluia sistemului x = 2 1 4 x1 + x2 x3 + x4 x + 8x + x + x 1 2 3 4 2. x1 + x2 + 6 x3 + x4 x1 + x2 + x3 + 7 x4

=1 =7 = 10 = 12
0.2500 0.0968 , 0.1105 1.0

1.0 0.2500 0.2500 1 .0 0.1613 ~ 0 R. Matricea triunghiular A = 0 0 1 .0 0 0 0 0.2500 ~ 0.8710 vectorul termenilor liberi transformat b = 1.7789 2 .0 Soluia sistemului x = (1 1 2 2).

72

Bazele Analizei Numerice

3.

5 x1 + x2 + x3 + x4 x + 8x + 2 x + x 1 2 3 4 x x 6 x x + + 3 4 1 2 + + + x x x x 3 4 1 2

= 14 = 127 = 15 = 10

1.0 0.2000 0.2000 0.2000 1 .0 0.2308 0.1026 ~ 0 , 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 Soluia sistemului x = (1 2 3 4).

S se rezolve urmtoarele sisteme de ecuaii liniare folosind metoda Cholesky: =9 10 x1 + x2 x3 x4 x + 9x + x x = 6 1 2 3 4 4. x1 + x2 + 11x3 + x4 = 8 x1 x2 + x3 + 8 x4 = 7


0 0 0 3.1623 2.9833 0 0 T 0.3162 R. . Soluia sistemului R = 0 0.3162 0.3687 0.32809 0.3162 0.3017 0.3082 2.7774 2.846 2.3129 T R y=b este y = , iar cea a sistemului Rx=y , i deci soluia 2.9726 2.7774 1 1 sistemului iniial este x = . 1 1

Sisteme de ecuaii liniare

73

5.

8 x1 x2 x3 + x4 x + 6 x + x 2 x 1 2 3 4 x x 7 x x + + + 3 4 1 2 + + x 2 x x 9 x 2 3 4 1

=7 =6 = 8 = 11

R.

0 0 0 2.82843 2.42384 0 0 T 0.35355 . R = 0.361 2.59705 0 0.35355 0.35355 0.77357 0.54071 2.82564

2.47487 2.83641 T Soluia sistemului R y=b este y = iar cea a sistemului Rx=y , i 3.13776 2.82564 1 1 deci soluia sistemului iniial este x = . 1 1

6.

6 x1 + x2 2 x3 x4 x + 5x + x x 1 2 3 4 + + 2 x x 11 x 1 2 3 x4 x1 x2 x3 + 4 x4

= 19 = 15 =8 = 10

R.

0 0 0 2.44949 2.19848 0 0 T 0.40825 . R = 3.15682 0 0.8165 0.60648 0.40825 0.37905 0.34954 1.88878

7.75672 5.3825 T Soluia sistemului R y=b este y = , iar cea a sistemului Rx=y , i 3.50636 1.88878 deci soluia sistemului iniial este x= (3 2 1 1).

74

Bazele Analizei Numerice

7.

R.

Folosind metoda Householder, s se rezolve sistemele: =2 4 x1 + 3x2 2 x3 + x4 5 x + 6 x + 7 x 8 x = 14 1 2 3 4 + 9 x 8 x 7 x 6 x 2 3 4 = 30 1 =0 x1 + x2 x3 x4 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

.0905 2.6148 8.0249 8.0249 11 .1569 0.0016 1.9155 10 0 . R = 0 0 6.2130 5.83368 0 0 0 1.58889 29.9354 8.2430 Soluia 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
0.541 11.09054 2.88534 9.2872 10.23107 2.42367 8.7419 0 R = 0 0 4.3444 2.79972 0 0 0 5.69631 .

Sisteme de ecuaii liniare

75

6.49202 5.40201 Soluia 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 =4 x1 x2 + x3 x4

R.

det(A)= 80 ; descompunerea A=QR este dat de 0.0697 0.40202 0.82257 0.3961 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 6.5451 0.3565 0 R= 0 0 2.42341 0 0 0 5.62821 5.29041 . 2.66043 0.50691

Soluia sistemului Qy=b este

28.14106 11.47901 , y= 0.23702 0.50691 1 1 x = . 1 1

iar cea sistemului Rx=y este

76

Bazele Analizei Numerice

1 1 1 2 1 1 3 2 10. Pentru matricea A = , s se calculeze: 2 1 1 1 1 1 1 1 a) det(A) , A1, det(A1);

b) c)

A 1,

A 2,

A;

A1 ,
1

A1 ,
2

A1

cond1(A) , cond2(A) , cond(A) . 0 0.3333 1 0.6667 0 0.6667 1 1 0.3333 R. a) det(A)=6, A = , 1 0 .5 1 1.5 0 0 .5 0 0.5 det(A1)=0.1667; A 1 = 6, A 2 = 5.7446, A = 7 ; b) A1 = 3, A1 = 2.848, A1 = 4 . 1 2 c) cond1(A)=18, cond2(A)=12.7511, cond(A)=28 . 11. S se calculeze: a) det(A) , A1, det(A1); b) c)

A 1,

A 2,

A;

A1 ,
1

A1 ,
2

A1

cond1(A) , cond2(A) , cond (A) 5 4 1 pentru matricea A = 3 2 2 . 6 1 3 R. a) det(A)=8, A


1

1 1 1 = 2.625 2.25 2.875 , det(A1)=0.125 ; 1.125 1.25 1.375

A 1 = 6, A 2 = 5.7446, A = 7 ; b) A1 = 3, A1 = 2.848, A1 = 4 . 1 2 c) cond1(A)=68.25, cond2(A)=48.28525, cond (A)=77.5 . Folosind metoda Iacobi s se gseasc soluia aproximativ pentru urmtoarele sisteme de ecuaii liniare :

Sisteme de ecuaii liniare

77

12.

5 x1 x2 x3 x1 + 6 x2 + x3 x x + 7 x 3 1 2

=5 = 4 =9 forma x = Bx+c, unde B = D1 (DA), iar D = 1 1 0 1 , 1 0 1 0.66667 , B 2 =0.41997, 1.28571


( 0)

R. Sistemul se poate pune sub 0 5 0 0 0 6 0 , E = DA = 1 1 0 0 7

0 0.2 0.2 0.16667 , c = D1 b = B = 0.16667 0 0.14286 0.14286 0

(B)= 0.29277. Soluia la fiecare iteraie, pornind cu x

0 = 0 , este: 0

1 1.12381 ( 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)

1 Soluia exact fiind x* = 1 1 aproximativ x(4) , este

, eroarea care se face dac se reine ca soluie

x* x ( 4) = 0.01208 .

13.

6 x1 + x2 x3 + x4 x + 7x + x x 1 2 3 4 x 2 x 8 x x + + + 2 3 4 1 + + + x x x 9 x 3 4 1 2

=2 = 4 =6 8

(s se scrie soluia obinut dup patru

iteraii). R. Se poate pune sistemul sub forma x = Bx+c, unde B = D1 E , iar 6 0 0 0 0 1 1 2 0 1 1 0 7 0 0 1 D= , E = DA = , 0 0 8 0 1 2 0 1 0 0 0 9 1 1 1 0

78

Bazele Analizei Numerice

0.16667 0.16667 0.33333 0 0.14286 0.14286 0 0.14286 B= 0.125 0.25 0.125 0 0.11111 0.11111 0.11111 0

0.33333 0.57143 1 c=D b = , B 2 =0.5989, (B)= 0.27926. Soluia pentru primele 0.75 0.88889 0 0.33333 (0) 0 (1) 0.57143 4 iteraii, 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 Soluia exact fiind x* = , eroarea care se face dac se reine ca soluie 1 1

aproximativ x(4) , este

x* x ( 4) = 0.01682 .

14.

4 x1 x2 x3 + x4 = 3 x + 7 x + x x = 14 1 2 3 4 + + x x 6 x x 3 4 = 21 1 2 x1 x2 x3 + 9 x4 = 38 R. Se poate pune sistemul sub forma x=Bx+c, unde B=D1E , iar 4 0 0 0 0 1 1 1 0 7 0 0 1 0 1 1 D= , E = DA = , 0 0 6 0 1 1 0 1 0 0 0 9 1 1 1 0

Sisteme de ecuaii liniare

79

0.25 0 0.25 0.25 0.14286 0.14286 0 0.14286 B= , 0.16667 0.16667 0.16667 0 0.11111 0.11111 0.11111 0 0.75 2 1 c=D b = , B 2 =0.60753, (B)= 0.22758. Pentru primele 4 iteraii, 3.5 4.22222 0 0.75 2 (0) 0 (1) pornind cu x = , soluia 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 Soluia exact fiind x* = , eroarea care se face dac se reine ca soluie 3 4

aproximativ x(4) , este x* x ( 4) = 0.00417 . S se rezolve cu metoda GaussSeidel urmtoarele sisteme: 5 x1 2 x2 2 x3 = 3 15. x1 + 6 x2 x3 = 2 x 3 x + 4 x = 8 2 3 1 5 2 2 R. Se observ c matricea coeficienilor sistemului A = 1 6 1 este tare 1 3 4 diagonal dominant i atunci algoritmul GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=(D+L)1(Ux(m)+b), m0, unde: 0 0 5 0 0 0 2 2 0 L = 1 0 1 , D = 0 6 0 . 0 0 , U = 0 0 0 4 0 1 3 0 0 0 Atunci

80

Bazele Analizei Numerice

( D + L)

0 0 0.2 = 0.03333 0.16667 0 , 0.075 0.125 0.25

0 .4 0 .4 0 (D+L) U = 0 0.06667 0.23333 , 0 0.15 0.275


1

0.6 (D+L) b = 0.23333 2.025


1

. Se obin pornind cu x

( 0)

0 = 0 , vectorii: 0

(1)

0.6 0.30333 0.73531 ( 2) (3) = 0.23333 , x = 0.72139 , x = 0.89203 , 2.025 2.61687 2.85285 0.89795 ( 4) x = 0.95847 . 2.94334

16.

6 x1 x2 2 x3 + x4 2x + 6x x x 1 2 3 4 x 3 x 8 x 2 x4 + + 2 3 1 x1 + x2 + x3 + 4 x4

=2 =8 =2 = 1

R. Se observ c matricea coeficienilor sistemului


1 6 1 2 6 1 1 2 A= 1 3 8 2 1 1 1 4 este tare diagonal dominant i algoritmul GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1) = (D+L)1(Ux(m)+b) , m0, unde: 0 0 0 1 0 0 1 2 0 0 0 2 0 0 1 1 , U = , L= 1 3 0 0 0 0 0 2 1 0 0 1 1 0 0 0

Sisteme de ecuaii liniare

81

6 0 D= 0 0

0 6 0 0

0 0 8 0

0 0 0 4

0 0 0 0.16667 0.16667 0 0 1 0.05556 Atunci ( D + L) = 0 0.0625 0.125 0 0.02778 0.05729 0.03125 0.25

0.33333 0.16667 0 0.16667 0.22222 0 0.05556 0.05556 1 (D+L) U = , 0.1875 0 0 0.0625 0 0.02778 0.11285 0.03299 0.33333 1.22222 1 (D+L) b = . 0.75 0.82639 0 0.5 0.95573 1 (0) 0 (1) ( 2) 1.02778 Alegnd x = , obinem: 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

=7 10 x1 x2 x3 + x4 x + 11x x x = 10 1 2 3 4 17. x1 x2 + 12 x3 + x4 = 22 = 24 x1 + x2 + x3 + 13x4 R. Se observ c matricea coeficienilor sistemului 10 1 1 1 1 11 1 1 A= 1 1 1 12 1 1 1 13 este tare diagonal dominant i algoritmul GaussSeidel este convergent.

82

Bazele Analizei Numerice

Sistemul se poate pune sub forma 0 0 0 1 0 0 L= 1 1 0 1 1 1

x(m+1)=(D+L)1(Ux(m)+b) , m0, unde: 0 0 1 1 1 0 0 0 1 1 , U = , 0 0 0 0 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 0.09091 0 0 1 0.00909 , ( D + L) = 0.00758 0.00758 0.08333 0 0.00758 0.00758 0.00641 0.07692 0.1 0 .1 0.1 0 0.1 0 0.00909 0.08182 1 (D+L) U = , 0 0.00758 0.01515 0.08333 0 0.00758 0.01515 0.00641 0 .7 0.97273 1 (D+L) b = 1.81061 1.96445

0 0 .7 (0) 0 (1) 0.97273 Alegnd x = , obinem: 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 ecuaii liniare

83

Folosind metoda relaxrii simple s se scrie soluia aproximativ pentru urmtoarele sisteme: =3 8 x1 x2 + x3 18. x1 + 6 x2 x3 = 14 x x + 9x = 28 3 1 2 8 1 1 R. Matricea sistemului este A = 1 6 1 . 1 1 9 0 3 (1) (1) Lund vectorul de prob x = 0 se obine r = 14 , deci prima direcie 0 28 0 0 (1) ( 2) 0 de relaxare este p = e3 = 0 . Rezult x = . 1 3.11111 Analog : 0 6.11111 0 ( 2) (3) r = 10.88889 , p = e2 = 1 , x = 1.81481 ; 0 3.11111 0 7.92593 1 0.99074 (3) (3) 0 r (3) = , p = e1 = 0 , x = 1.81481 ; 1.81481 0 3.11111
( 2)

( 4)

0 0 0.99074 ( 4) ( 4) = 0.99074 , p = e2 = 1 , x = 1.91994 . 0.824070 0 3.11111

. a. m. d. 10 x1 + x2 x3 x4 x + 9x x + x 1 2 3 4 19. + + x x 11 x 3 x4 1 2 x1 + x2 + x3 + 8 x4

=9 = 24 = 30 = 32

1 1 1 10 1 9 1 1 R. Matricea sistemului este A = . 1 1 11 1 1 1 1 8

84

Bazele Analizei Numerice

0 (1) 0 Alegnd x = 0 0

0 0 (1) Deci p = e4 = 0 1 Mai departe obinem : 0 0 8.09091 0 0 (3) (3) 16.90909 ( 2) ; r = p = e3 = , x = , 1 3.090901 0 0 4 3.09091 0 1 0.99697 0 ( 4) 1.87879 (5) 1.87879 ( 4) ; p = e1 = , x = ; x = 3.09091 0 3.09091 4 0 4 0 0.99697 1 (6) 1.98956 ( 5) , p = e1 = x = 0 3.09091 0 4

9 (1) 24 se obine r = . 30 32 0 5 ( 2) 0 ( 2) 20 , x = r = . 0 34 4 0

0 1 (3) p = e2 = , 0 0 0 (5) 0.99697 r = 0.88182 0.21515

20.

4 x1 2 x2 + x3 2 x1 + 6 x2 x3 x x + 5x 3 1 2

=9 =5 =6

1 4 2 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. Lund vectorul de prob

Sisteme de ecuaii liniare

85

0 9 1 2.25 (1) (1) ( 2) x = 0 se obin: 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
(1)

, p

(3)

0 2.25 2.1 1 ( 4) (3) ( 4) = 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 soluia aproximativ pentru urmtoarele sisteme de ecuaii liniare obinut cu metoda suprarelaxrii: =3 2 x1 x2 21. x1 + 3 x2 x3 = 5 x2 + 4 x3 = 5 R. Matricea coeficienilor sistemului este bloc tridiagonal, simetric i pozitiv definit, deci metoda suprarelaxrii este convergent. Sistemul se poate pune sub forma: x(m+1)=Mx(m)+C, 1 m0, unde: M = E + D 2 0 0 0 1 1 C = E + b , E = 1 0 0 , D = 0 0 0 1 0
2 1+
2 1 1

1 F + 1 D , 0 0 3 0 , F=ET , 0 4

fiind cea mai mare valoare proprie a matricei D1(E+F),

1=0.5 , =1.0718 i considernd vectorul iniial x(0)=b, rezult

86

Bazele Analizei Numerice

(1)

1.28719 1.64605 1.03385 ( 2) (3) = 0.10088 , x = 0.85027 , x = 0.98314 , 0.95373 1.04344 1.0014 1.00661 ( 4) x = 0.99835 . 1.00034

= 13 14 x1 + x2 x + 5 x2 x3 = 3 1 22. x2 + 14 x3 2 x4 = 15 2 x3 + 5 x4 = 7 R. Matricea coeficienilor sistemului este bloc tridiagonal, simetric i pozitiv definit, deci metoda suprarelaxrii este convergent. Sistemul se poate pune sub forma
x
(m+1)

=Mx +C,
1

(m)

m0,

unde

M
0 0 0 0

1 C = E +

0 0 0 0 1 0 b , E = 0 1 0 0 0 2

1 1 = E + D F + 1 D , 14 0 0 0 0 5 0 0 , D= , F=ET , 0 0 14 0 0 0 0 5

2 1+
2 1 1

, 1

fiind cea mai mare valoare proprie a matricei D1(E+F),

1=0.2735 , =1.01943 i considernd vectorul iniial

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 gseasc soluia aproximativ obinut cu metoda GaussSeidel pentru sistemele de ecuaii liniare urmtoare:

Sisteme de ecuaii liniare

87

= 13 14 x1 + x2 x + 5 x2 x3 = 3 1 23. x2 + 14 x3 2 x4 = 15 2 x3 + 5 x4 = 7 S se precizeze numrul de iteraii necesare pentru ca eroarea s se micoreze de 10 ori. R. Matricea A fiind simetric i pozitiv definit procedeul iterativ GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=Mx(m)+C , m0, unde 0 0 0 0 0 0 1 0 1 1 M = (D+E) F , C = (D+E) b , E = , F = ET, 0 1 0 0 0 0 2 0
0 0 0 5 0 0 . 0 14 0 0 0 5 0 0 0 0.07143 0.92857 0 .2 0 0 0.01429 0.78571 Deci M = , C = . 0 0.00102 0.01429 0.14286 1.12755 0 0.94898 0.0004 0.000571 0.05714 Dac se pornete cu v(0) = b obin 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 14 0 D= 0 0 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 numrul de iteraii dup care eroarea scade de 10 ori 1 =0.88803, adic la fiecare iteraie eroarea scade de 10 ori. este K R(M )

88

Bazele Analizei Numerice

=5 5 x1 + x2 x3 = 10 24. x1 + 8 x2 + x3 x + x + 15 x = 15 3 1 2 S se precizeze numrul de iteraii necesare pentru ca eroarea s se micoreze de 10 ori. R. Matricea A fiind simetric i pozitiv definit procedeul iterativ GaussSeidel este convergent. Sistemul se poate pune sub forma x(m+1)=Mx(m)+C , m0, 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.2 0.2 1 0 M = 0 0.12 , C = 0.9 . Deci 0.02 1.0067 0 0.01467 0.02133 Dac se pornete cu v(0) = b obin 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 numrul de iteraii dup care eroarea scade de 10 ori 1 =0.83108, adic la fiecare iteraie eroarea scade de 10 ori. este K R(M ) S se scrie soluia aproximativ sistemelor de ecuaii liniare: x3 6 x1 + x2 + 8 x2 + x3 25. x1 x + x + 10 x3 2 1 obinut cu metoda gradienilor conjugai aplicat =6 = 8 . = 12

Sisteme de ecuaii liniare

89

R. Matricea coeficienilor sistemului este simetric i pozitiv definit i deci se 0 (0) poate aplica metoda. Lund x = 0 ca vector de prob, se obin rezultatele. 0 Iteraia I. 6 r =Ax0 b= 8 , prima direcie de relaxare, p(1)= r(0) , 12
(0)

0.60797 = 0.10133 , x =x + q1p = 0.81063 . q1 = (1) (1) Ap , p 1.21595 r (0) , p (1)


(1) (0) (1)

Iteraia a II-a . r
(1)

=r

( 0)

+ q1 Ap

(1)

1.94684 r (1) , r (1) = 0.90698 , c1 = = 0.02911 r ( 0) , r ( 0) 1.57807

2.12151 r (1) , p ( 2) = 0.17916 , p = r +c1p = 1.13987 , q2 = Ap ( 2) , p ( 2) 1.22874


(2) (1) (1)

0.98807 x =x + q2p = 1.01485 . 0.9958


(2) (1) (2)

Iteraia a III-a. r
( 2)

=r

(1)

+ q2 Ap

( 2)

0.09062 r ( 2 ) , r ( 2) = 0.12656 , c2 = = 3.62608 10 3 (1) (1) r ,r 0.03906

0.09832 r ( 2) , p (3) = 0.12133 , p = r +c2p = 0.12243 , q3 = Ap (3) , p (3) 0.03461 1 (3) (2) (3) x =x + q3p = 1 . 1
(3) (2) (2)

90

Bazele Analizei Numerice

26. S se determine traseul optim pentru o conduct de gaze naturale care s treac prin "apropierea" localitilor Li , i=1,...,10 , care raportate la un sistem cartezian de referin au coordonatele urmtoare: 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. Lund traseul dup o dreapt, se obine 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 = , a crui soluie este , c= 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