Sunteți pe pagina 1din 12

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.

ro/~ccosmin)

SISTEME DE ECUATII LINIARE

1. Introducere
Metodele de rezolvare a sistemelor de ecuatii liniare de forma (1) se grupeaza in general
in doua categorii: metode directe, bazate pe procedee de eliminare si metode indirecte
(iterative).
a11
a
21
...

a n1

a12
a 22
...
an 2

... a1n x1 b1
... a 2 n x2 b2

=
... ... ... ...

... a nn xn bn

(1)

AX = B

(1')

Proprietatile pe care le ofera liniaritatea unei functii sau ecuatii sunt utilizate ca elemente
de baza pentru metodele de rezolvare bazate pe procedee de eliminare a necunoscutelor.
Ecuatiile sistemului initial se pot multiplica prin constante si se combina cu ajutorul
operatiilor suplimentare obtinindu-se in final forme simplificate ale sistemului considerat.
La alegerea unei metode de calcul, pentru rezolvarea unei anumite probleme pe un sistem
de calcul dat, trebuie avute in vedere o serie de criterii cum ar fi: numarul secventelor de
calcul, precizia rezultatelor, posibilitatea introducerii unor teste de precizie, secventiale,
pe parcursul desfasurarii algoritmului.
In cadrul metodelor directe, care se considera a fi metode exacte, s-au impus metodele
care au la baza algoritmul de eliminare Gauss, cu variantele Gauss-Jordan, Doolitle,
Crout si Cholesky.
Metodele exacte permit obtinerea solutiei exacte a sistemului de ecuatii facind abstractie
de erorile de tip round-off ale sistemului de calcul, de erorile de rotunjire si trunchiere
folosind un numar finit de operatii elementare.
In cadrul metodelor iterative s-au impus metodele Jacobi, Gauss-Seidl, metoda relaxarilor
succesive si metoda Lanczos.
Metodele iterative se caracterizeaza prin faptul ca solutia sistemului considerat se obtine
ca limita a unui sir de valori ce reprezinta solutii pentru diverse iteratii succesive. In
cadrul acestor metode, se pune problema de a alege acea metoda, care asigura cea mai
mare viteza de convergenta a solutiilor pentru o aproximare initiala adecvat aleasa.
Dintre metodele numerice directe, utilizate la rezolvarea sistemului de ecuatii algebrice
neomogene se vor prezenta: metoda eliminarii directe Gauss, metoda factorizarii LU si
metoda Cholesky.

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

2. Proceduri numerice de rezolvare a sistemelor de ecuatii liniare


Dintre metodele numerice directe, utilizate la rezolvarea sistemului de ecuatii algebrice
neomogene se vor prezenta: metoda eliminarii directe Gauss, metoda factorizarii LU si
metoda Cholesky, iar ca si metoda indirecta (iterativa) de rezolvare a sistemelor de
ecuatii liniare va fi prezentata metoda Jacobi.
2.1. Metoda eliminarii Gauss
In prima etapa numita triangularizare (substitutia inainte) se elimina succesiv in n-1 pasi
necunoscutele xi, i=1,2,...n-1 din ecuatiile sistemului ceea ce are ca rezultat eliminarea
elementelor situate sub diagonala principala a metricei A si transformarea acestora intr-o
matrice superior triunghiulara.
In pasul 1 se obtine:
a11

...
0

sau cu notatiile

a12
a
a22 21 a12
a11
...
a
a n 2 n1 a12
a11

a1n
b1

1
a
a
... a 2 n 21 a1n x b2 21 b1
a11
a11
2 =

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

a n1
an1

a1n xn bn
... a nn
b1
a11
a11

...

aij(1) = aij ai1 a111 a1 j , i = 2,3,...n; j = j = 1,2,...n


bi(1) = bi ai1 a111 b1

(2)

(3)

rezulta:
a11
0

...

a12 ... a1n x1 b1



(1)
a22
... a2(1n) x2 b2(1)

=
... ... ... ... ...
(1) (1)
an(12) ... ann
xn bn

In pasul i-1 al eliminarii sistemul de ecuatii devine:


a11 a12 ... a1i ... a1n x1 b1
0 a (1) ... a (1) ... a (1) x b (1)
22
2i
2n 2
2

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

(i 1)
(i 1) = (i 1)
a
a
0
0
...
...
ii
in

xi bi
... ... ... ... ... ... ... ...

(i 1) (i 1)
0 ... a ni(i 1) ... a nn
0
xn bn
sau in forma restrinsa:
A (i 1) [X] = B (i 1)

(4)

(5)

(6)

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

In pasul l se obtine

[A ( ) ] [X] = [B ( ) ]
l

cu
aij(l ) = aij(l 1)
(l )

(l 1)

bi = bi

(7)

ail(l 1) (l 1)
= aij(l 1) mi(l 1) alj(l 1) , i, j = l + 1,..., n
(l 1) alj
all

ail(l 1) (l 1)
(l 1) bl = bi(l 1) mi(l 1)bl(l 1)
all

In final dupa consumarea pasului n-1, sistemul este complet triangularizat:


a11 a12 a13 ... a1n x1 b1

(1)
(1)
... a 2(1n) x2 b2(1)
a 22
a 23

(2 )

... a3( 2n) x3 = b3( 2 )


a33

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

( n 1) ( n 1)

ann
xn bn
sau utilizind o scriere simbolica:

[0 \ S] [X] = [B ' ]

(8)

(9)

(10)

Observatie
In procesul de calcul automat, matricele succesive A (l ) se construiesc in spatiul de
memorie initial alolcat pentru matricea [A ] . Procedeul se prezinta algoritmat in forma
urmatoare:

[ ]

l = 1,2,..., n 1
i = l + 1,..., n
a
mi = il
all
bi = bi mi bl
j = l + 1,..., n
aij = aij mi alj

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Pentru determinarea solutiei sistemului (1) are loc un proces de eliminare inversa
(substitutia inapoi) care poate fi descris astfel:

xn =

bn( n1)
( n 1)
ann
(n 2 )

xn1 = bn1

an( n1,2n) xn
an( n1,2n)1

(11)

...
(i 1)

xi = bi

(i 1)

ai ,n xn ...

ai(,ii+11) xi +1
aii(i 1)

, i = n 2, n 3,...,1

respectiv in forma algoritmica:


1
xn = ann
bn

i = n 1, n 2,...,1

xi = a bi

1
ii

a
x

ij
j
j = i +1

in care aij sunt elemente ale matricii triunghiulare S iar bi elementele matricii B'.
In concluzie, in urma aplicarii unei eliminari Gauss dupa n-1 etape de calcul se obtine o
matrice S superior triunghiulara, asociata sistemului (1) cu conditia ca matricea A sa fie
nesingulara, iar elementele transformate de pe diagonala principala sa rezulte nenule in
fiecare pas al eliminarii: aii(l ) 0 , i=1,2,...,n; l=1,2,...,n-1. Valoarea determinantului
matricii A este dat de produsul elementelor de pe diagonala principala a matricii S:
(1)
(2 )
( n 1)
det (A ) = det (S ) = a11 a 22
a33
... a nn
(12)

2.2. Descompunerea LU
O modificare a metodei eliminarii, numita descompunerea sau factorizarea LU este
frecvent utilizata. In aceasta metoda, matricea coeficientilor A este tranformata intr-un
produs de doua matrici L si U unde L este matricea inferior triunghiulara si U este
matricea superior triunghiulara avind elemente egale cu 1 pe diagonala principala. Orice
matrice poate fi scrisa ca produsul unei matrici a permutarilor P a unei matrice inferior
triunghiulara L si a uneia superior triunghiulara U, intr-o infinitate de moduri. Din
intreaga gama de posibilitati vom alege varianta in care U are 1 pe diagonala.In
continuare va fi exemplificata aplicarea metodei in cazul unei matrici de dimensiuni 4x4.

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Fie urmatoarea descompunere a matricii A in produsul a doua matrice L si U:


l11 0
l
l
21 22
l31 l32

l 41 l 42

0
0
l33
l 43

0 1 u12
0 0 1

0 0 0

l 44 0 0

u13
u 23
1
0

u14 a11
u 24 a 21
=
u 34 a31

1 a 41

a12

a13

a22

a 23

a32

a33

a42

a 43

a14
a 24
a34

a 44

Inmultind liniile lui L cu prima coloana a lui U:


l11 = a11 ; l 21 = a 21 ; l31 = a31 ; l 41 = a 41
Inmultind prima linie a lui L cu coloanele a lui U:
l11 u12 = a12 ; l11 u13 = a13 ; l11 u14 = a14 ;
de unde
a
a
a
u12 = 12 ; u13 = 13 ; u14 = 14
l11
l11
l11

(13)

(14)
(15)

(16)

In aceasta metoda se alterneaza gasirea unei coloane a lui L si a unei linii a lui U, astfel
ca urmeaza gasirea urmatoarei coloane a lui L, prin inmultirea liniilor lui L cu cu coloana
a doua a lui U:
l 21 u12 + l 22 = a22 ; l31 u12 + l32 = a32 ; l 41 u12 + l 42 = a42
(17)
l 22 , l32 , l 42
Procedind analog obtinem in continuare:
a l u
a l u
u 23 = 23 21 13 ; u 24 = 24 21 14
l 22
l 22
l33 = a33 l31u13 l32 u 23 ; l 43 = a43 l 41u13 l 42 u 23
a l u l u
u34 = 34 31 14 32 24
l33

(18)

l 44 = a44 l 41u14 l 42u 24 l 43u34


Formulele generale pentru obtinerea elementelor matricelor L si U sunt:
j 1

lij = aij lik u kj ; j i, i = 1,2,..., n


k =1

i 1

uij =

aij lik u kj
k =1

lii

Pentru j=1, li1 = ai1 si pentru. i=1, u1 j =

(19)
, i > j , j = 2,3,..., n
ai1 a1 j
=
l11 a11

(20)

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Observatie: Stocarea matricii


Deoarece matricele L si U pot fi stocate in zona rezervata matricei A aceasta metoda este
cunoscuta si sub denumirea de schema compacta:
a11
a
21
A=
...

a n1

a12
a 22
...
an 2

... a1n l11 u12


... a 2 n l 21 l 22

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



... a nn l n1 l n 2

... u1n
... u 2 n
... ...

... l nn

(21)

Rezolvarea sistemului de ecuatii

[][X] = [B] dupa factorizare [L][U][X] = [B]


Notam [U ][X] = [B']
Atunci avem:
[L][B'] = [B] [B'] prin substitutie inainte dupa care cu B' cunoscut, prin
substitutie inapoi obtinem
[U ][X] = [B'] [X]
Un avantaj special al metodei factorizarii LU este posibilitatea rezolvarii
sistemului cu mai multe coloane de termeni liberi cu o mare economie de efort de calcul.
De retinut ca spre deosebire de cazul clasic al eliminarii Gauss, in care termenii liberi
trebuiau cunoscuti in avans, in aceasta metoda nu este necesar sa cunoastem acesti vectori
in momentul reducerii la forma LU. Numarul operatiilor aritmetice necesare aflarii
solutiei pentru fiecare nou termen liber, este exact numarul operatiilor necesar efectuarii
inmultirii dintre o matrice nxn cu un vector de n dimensiuni.
2.3 Factorizarea Cholesky
In cazul matricelor simetrice (A=AT) si pozitiv definite ( XT AX > 0 , pentru orice
vector X nenul) una dintre cele mai eficiente metode de rezolvare a sistemelor liniare este
factorizarea Cholesky. Metoda consta in descompunerea matricei A in L si LT astfel incit
A=LLT unde L este matrice inferior triunghiulara. Aceasta descompunere se poate face
pentru orice matrice A simetrica si pozitiv definita:
A = L LT
l11
l
l
21 22
... ...
L=
li1 li 2
... ...

ln1 ...

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

elemente nule

lii

...
...

lni
... l nn

(22)

(23)

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Elementele matricei L se obtin in functie de cele ale matricei A prin identificarea termen
cu termen a rezolvarii produsului matrceal (22). Se obtin urmatoarele relatii de recurenta:
a
l11 = a11 ; li1 = i1
l11
i 1

lii = aii lii2 ; 1 < i = j

(24)

l =1

j 1

lij = aij lli llj l jj1 , i > j > 1, lij = 0, i < j


l =1

( )

Relatia (24) arata ca termenii de pe diagonala principala rezulta sub forma radacinii
patrate din diferenta dintre elementele diagonalei respective aii si suma patratelor tuturor
elementelor de pe aceeasi coloane calculate anterior. Termenii secundari se calculeaza ca
diferente intre elementele respective aij al matricei A si suma unor produse de cite doi
factori, reprezentind elementele coloanelor i si j, totul impartit la termenul corespunzator
de pe diagonala principala lii.
Rezolvarea sistemului de ecuatii:

[L ][L][X] = [B] ;
T

(25)
Cu notatia [L ][X] = [B'] procedura de rezolvare in doua etape se aplica dupa cum
urmeaza:

Substitutia inainte:
[L][B'] = [B] [B']

(26)

b1' = b1 (l111 )

i 1

bi' = bi l ji b 'j lii1 , i = 2,3,..., n


j =1

Substitutia inapoi
[L][X] = [B'] [X]

xn =

(27)

(28)

bn'
l nn1

i = n 1, n 2,...,1

(29)

n
'

xi = bi lij x j lii1
j = i +1

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Observatie:
Remarcabil este faptul ca in factorizarea Cholesky vectorul B nu este afectat si in
consecinta matricea L o data obtinuta poate fi utilizata si pentru alte situatii, vectori liberi
diferiti.

2.4 Metoda iterativa Jacobi de rezolvare a sistemelor de ecuatii liniare


In principiu metodele iterative constau in considerarea unei valori initiale X (0 ) pentru
vectorul solutie X si apoi prin aplicarea unui algoritm de calcul iterativ se determina un
sir de aproximatii succesive X (1) , X ( 2 ) , ..., X ( k ) care in principiu trebuie sa convearga
catre solutia exacta a sistemului.
Fie sistemul de ecuatii: AX=b:
a11 x1 + a12 x2 + a13 x3 + ... + a1n xn = b1
a x + a x + a x + ... + a x = b
22 2
23 3
2n n
2
21 1

...

ai1 x1 + ai 2 x2 + ai 3 x3 + ... + ain xn = bi


...

an1 x1 + an 2 x2 + an 3 x3 + ... + ann xn = bn


Explicitind din fiecare relatie a sistemului (30) pe xi i=1,2,...,n obtinem urmatorul
relatii:
a13
a1n
b1 a12

x1 = a a x2 a x3 ... a xn
11
11
11
11

a
a

b2 a21

x1 23 x3 ... 2 n xn
x2 =
a22 a22
a22
a22

...

bn an1
an 2
ann1

xn = a a x1 a x2 ... a xn1
nn
nn
nn
nn

si care poate fi rescris in forma matriceala astfel:


m12 m13 ...
m1n x1
...
x1 g1 0
x g m
m23 ...
m2 n x2
0
...
21
2 2

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

= +
min xi
0...
xi g i mi1 mi 2 mi 3 ...
... ... ...
...
...
...
...
... ...


0 xn
xn g n mn1 mn 2 mn 3 ... mn,n1
unde g i =

(30)

set de

(31)

(32)

aij
bi
; mij =
.
aii
aii

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Calculele se pot conduce matriceal considerind relatia (32) scrisa sub forma condensata:
X = g + MX
(33)
gasind simultan la fiecare iteratie aproximatiile tuturor necunoscutelor. Considerind
vectorul de pornire:

(X ( ) ) = (x ( )
0

x2(0 ) ... xi(0 ) ... xn(0 ) )

dupa prima iteratie gasim:


apoi:

X (1) = g + MX (0 )

(34)
(35)

X ( 2 ) = g + MX (1)
....

(36)

X ( m+1) = g + MX ( m )
Relatiile (36) se mai pot scrie astfel:
X (1) = g + MX (0 )

X ( 2 ) = g + MX (1) = g + M (g + MX (0 ) ) = (I + M )g + M 2 X (0 )

X (3 ) = g + MX ( 2 ) = g + M ((I + M )g + M 2 X (0 ) ) = (I + M + M 2 )g + M 3 X (0 )
...

(37)

X ( m+1) = (I + M + M 2 + ... + M m )g + M m+1 X (0 )


Cum procesul iterativ, daca e convergent, nu trebuie sa depinda de vectorul de pornire
X(0), va rezulta ca:
m +1
(38)
lim M = 0
n

adica matricea M trebuie sa fie convergenta, sa ca M < 1 . Folosind pentru norma, norma
linie rezulta ca putem scrie:
n
n a
1 n
ij
< 1;
(39)
mij < 1;

aij < aii


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

j i

j i

din ultima inegalitate deducindu-se ca, pentru ca metoda Jacobi sa fie convergenta,
trebuie ca matricea A a sistemului sa fie diagonal dominanta.
Procesul de iterare este continuat in baza relatiilor (37) pina la incadrarea in precizia
dorita:
X ( k +1) X ( k )
<
(40)
X ( k +1)
numarul de iteratii fiind influentat de calitatea aproximatiei initiale X(0) si de modul in
care este conditionata matricea A a coeficientilor sistemului.

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

3. Conditionarea sistemelor de ecuatii liniare


Sistemele de de ecuatii liniare pot fi bine conditionate (cu solutie stabila) si rau
conditionate (cu solutie instabila). Stabilitatea solutiei se judeca in raport cu mici
perturbatii ale vectorului liber. Daca la modificari nesemnificative ale termenului liber,
solutia sistemului se modifica in aceeasi masura, atunci sistemul este bine conditionat,
avind solutie stabila; daca solutia se modifica esential, sistemul este rau condtionat si are
solutie instabila.
Un sistem este rau conditionat pentru o operatie determinata, efectuata printr-o metoda
determinata, atunci cind aceasta sensibilitate este mare. Aceasta definitie introduce
distinctia intre doua tipuri de de conditionare: un sistem poate fi rau conditionat pentru o
metoda particulara sau rau conditionat pentru o operatie particulara, oricare ar fi metoda
folosita.
Sa consideram sistemul:

AX = b
(41)
Fie b' = b + r si X' = X + e unde r reprezinta vectorul care produce perturbarea iar e este
vectorul perturbarii solutiei.
Avem:
AX = b
(42)
A X' = b '
care mai poate fi rescris:
A(X' X ) = b' b
(43)
sau
Ae = r
(44)

X = A 1 b; X A 1 b ; b A X
e = A 1 r; e A 1 r ; r A e

(45)

sau:

b e A A 1 X r
X r A A 1 b e

(46)

Din (46) rezulta


be
A A 1
Xr
be
1

Xr
A A 1

(47)

sautinind cont ca A A 1 = cond(A ) numit numarul de conditie a matricii A obtinem:


r
e
r
1

cond( A)

cond( A) b
X
b

(48)

10

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

Relatia (48) poate furniza informatii asupra stabilitatii sistemelor de ecuatii liniare. Astfel
daca matricea A a sistemului are numarul de conditie cond(A)1 atunci modificarea
e
este de acelasi ordin de marime ca si modificarea in termenul
solutiei exprimata prin
X
r
. Altfel spus daca mici modificari se produc in termenul liber, solutia
b
se modifica si ea in aceeasi masura. Sistemele cu matricea coeficientilor A avind numarul
de conditie cond(A) mic sunt sisteme bine conditionate, stabile in solutie.

liber definit de

Exemplu numeric

Fie sistemul de ecuatii:


1.57 x 3.42 y = 2.35
(49)

1.60 x 3.40 y = 2.40


ale carei solutii x=1.64, y=0.060 au fost obtinute efectuindu-se calculele cu trei cifre
semnificative. Sistemul este slab conditionat deoarece modificari neinsemnate ale
coeficientilor produc variatii mari ale solutiilor. Afirmatia este ilustrata grafic in Fig. 1.
16
14
12
10

1.57x-3.42y=2.35

1.6x-3.40y=2.40
4
2
0
0

10

15

20

25

30

35

-2

Fig. 1
O imbunatatire a conditionarii se obtine daca se scade prima ecuatie din cea de a doua si
rezultatul se multiplica cu 100:
3.0 x + 2.04 y = 5.0
(50)

1.60 x 3.40 y = 2.40


Solutiile acestui nou sistem x=1.63, y=0.06 sunt putin diferite de ale celui precedent, dar
modificarile coeficientilor nu le influenteaza in mod insemnat (Fig. 2).

11

ANALIZA NUMERICA- SISTEME DE ECUATII LINIARE (http://bavaria.utcluj.ro/~ccosmin)

20

10

0
0

10

15

20

25

30

35

-10

3.0x+2.04y=5.0
1.6x-3.40y=2.4

-20

-30

-40

-50

Fig. 2

12

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