Documente Academic
Documente Profesional
Documente Cultură
numeste pivot) si coeficientii noii ecuatii se noteaza a1′ i (i = 2, 3), respectiv b1′ :
⎧ x1 + a12 ′ x 2 + a13′ x3 = b1′
⎪
⎨a 21 x1 + a 22 x 2 + a 23 x3 = b2 (8.2)
⎪a x + a x + a x = b
⎩ 31 1 32 2 33 3 3
Pasul 2 (reducere): Se inmulteste prima ecuatie din (8.2) cu − a 21 si se aduna la a doua ecuatie, apoi
rezultatul obtinut inlocuieste cea de-a doua ecuatie a sistemului. Similar, se inmulteste prima ecuatie din
(8.2) cu − a31 si se aduna la a treia ecuatie, apoi rezultatul obtinut inlocuieste cea de-a 3-a ecuatie a
sistemului:
′ x 2 + a13
⎧ x1 + a12 ′ x3 = b1′
⎪
⎨ ′ x 2 + a 23
a 22 ′ x3 = b2′ (8.3)
⎪ ′ x 2 + a33
′ x3 = b3′
⎩ a32
Pasul 3 (normalizare): Se inmulteste a 2-a ecuatie din (8.3) cu ′
1 a 22 si coeficientii noii ecuatii se noteaza
′′ , respectiv b2′′ :
a 23
′ x 2 + a13
⎧ x1 + a12 ′ x3 = b1′
⎪
⎨ ′′ x3 = b2′′
x 2 + a 23 (8.4)
⎪ ′ x 2 + a33
′ x3 = b3′
⎩ a32
Pasul 4 (reducere): Se inmulteste a doua ecuatie din (8.4) cu ′
− a32 si se aduna la a 3-a ecuatie, apoi
rezultatul obtinut inlocuieste cea de-a 3-a ecuatie a sistemului - vezi sistemul (8.5):
′ x 2 + a13
⎧ x1 + a12 ′ x3 = b1′
⎪
⎨ x 2 + a 23′′ x3 = b2′′ (8.5) ⇒
⎪ ′′ x3 = b3′′
⎩ a33
⎧ x3 = b3′′ a33 ′′
⎪
⎨ x 2 = b2′′ − a 23′′ x3 (8.6)
⎪ x = b′ − a ′ x − a ′ x
⎩ 1 1 12 2 13 3
Pornind de la ultima ecuatie catre prima in (8.5), se obtine solutia sistemului sub forma (8.6).
Nota: Daca la o operatie de normalizare, pivotul corespunzator este nul (sau apropiat de zero), se
vor rearanja ecuatiile urmatoare din sistem, aducandu-se pe pozitia respectiva una din ecuatiile cu pivot
nenul.
REMARCI
1) Algoritmul Gauss poate fi aplicat pentru determinarea rangului unei matrici oarecare A∈Rn x m
2) Pentru rezolvarea sistemelor compatibile si determinate A*X = B dar si pentru determinarea
inversei unei matrici nesingulare A∈Rn x n pot fi aplicate si alte variante ale metodei lui Gauss si
anume metodele de tip Gauss-Jordan dupa schema
A B In
Transformari ... ...
elementare
In X A-1
In schema prezentata mai sus: A este matricea coeficientilor necunoscutellor, B este coloana
termenilor liberi, In este matricea unitate, X este solutia sistemului A*X=B si A-1 este inversa matricii A
(in ipoteza ca matricea A este inversabila)
3) Atat pentru metoda lui Gauss cat si pentru variantele Gauss-Jordan calculele por fi optimizate prin
REGULA PIVOTULUI
Exemplul 1: Sa se rezolve sistemul liniar si inversa matricii coeficientilor sistemului prin metoda Gauss-
Jordan si regula pivotului
4*x1-x2+x3=7
4*x1-8*x2+x3=-21
-2*x1+x2+5*x3=15
4 -1 1 7 1 0 0 Regula pivotului
4 -8 1 -21 0 1 0
-2 1 5 15 0 0 1
1 -1/4 1/4 7/4 1/4 0 0 -8*1-(1/4*4)=-7
4 -8 1 -21 0 1 0 1*1-(4*1/4)=0
-2 1 5 15 0 0 1 1*1-(-2)*(1/4)=1/2
1 -1/4 1/4 7/4 1/4 0 0 (-21*1)-(4*7/4)=-28
0 -7 0 -28 -1 1 0 15*1-(-2)*(7/4)=37/2
0 1/2 11/2 37/2 1/2 0 1 0*1-4*(1/4)=-1
1 -1/4 1/4 7/4 1/4 0 0 1*1-4*0=1
0 1 0 4 1/7 -1/7 0 0*1-(4*0)=0
0 1/2 11/2 37/2 1/2 0 1 0*1-(1/4)*(-2)=1/2
1 0 1/4 11/4 2/7 -1/28 0 0*1-(-2)*0=0
0 1 0 4 1/7 -1/7 0 1*1-(-2)*0=1
0 0 11/2 3 3/7 1/14 1
1 0 1/4 11/4 2/7 -1/28 0
0 1 0 4 1/7 -1/7 0
0 0 11/2 33/2 6/77 1/77 2/11
1 0 0 2 -47/308 –3/77 -1/22
0 1 0 4 1/7 -1/7 0
0 0 1 3 6/77 1/77 2/11
Regula pivotului: Se alege linia 1 (normalizata) drept linie pivot cu primul element desemnat drept pivot.
Se inlocuiesc elementele de pe coloana 1 (sub pivot) cu 0. Celelalte elemente ale liniilor 2 si 3 se
calculeaza cu regula pivotului; astfel pentru inlocuirea elementului –8 se formeaza dreptunghiul cu
varfurile opuse in –8 si pivot si se calculeaza dupa regula determinantului -8*1-(-1/4*4)=-7;pentru
toate celelalte elemente de pe linii 2 si 3 se calculeaza in acelasi mod.
A ⋅ X = L ⋅U ⋅ X = B (8.9)
şi, dacă se notează prin Y un vector intermediar, definit de ecuaţia matriceală:
Y =U ⋅X , (8.10)
atunci ecuaţia matriceală (8.9) devine:
L ⋅Y = B . (8.11)
Algoritm: Sistemul (8.11) se rezolvă în raport cu Y, prin substituţie progresivă, rezultând:
b 1⎡ i −1 ⎤
y1 = 1 şi apoi, yi = ⎢bi − ∑ lij y j ⎥, pentru i = 2, n . (8.12)
l11 lii ⎢ ⎥⎦
⎣ j =1
În continuare, vectorul Y fiind cunoscut, se rezolvă sistemul (8.10) prin substituţie regresivă, rezultând
astfel componentele soluţiei X:
n
xn = y n şi apoi, xi = y i − ∑ uij x j , pentru i = (n − 1),1 . (8.13)
j = i +1
Pentru determinarea elementelor lij şi uij ale factorilor matriceali, ordinea calculelor este
următoarea:
Prima coloană din L: din produsele liniilor lui L cu prima coloană din U şi echivalarea cu elementele lui A
rezultă:
l i1 = ai1 , i = 1, n
Prima linie a lui U: din produsele primei linii a lui L cu coloanele de la 2 la n ale lui U şi echivalarea cu
elementele lui A rezultă:
u1 j = a1 j l11 , j = 2, n
A doua coloană a lui L: din produsele liniilor de la 2 la n ale lui L cu a doua coloană din U şi echivalarea cu
elementele lui A rezultă:
1
Aceste simboluri derivă din cuvintele scrise în engleză: L = lower (inferior; de jos), U = upper (superior;
de sus).
li 2 = ai 2 − li1 u12 , i = 2, n
A doua linie a lui U: ş.a.m.d.
Relaţiile generale de calcul sunt următoarele:
k −1
lik = aik − ∑ lij u jk , pentru i ≥ k, k = 1, n
j =1
k −1
1 ⎡ ⎤
u kj = ⎢ kj ∑ l ki u ij ⎥,
a − pentru j > k, k = 1, n (8.14)
l kk ⎢⎣ i =1 ⎥⎦
iar operaţiile se execută în ordinea menţionată mai sus.
componentei xi( k +1) , se folosesc toate componentele x (jk +1) , cu j < i , deja calculate la iteraţia curentă
(k+1), împreună cu componentele xl( k ) , cu l > i , obţinute la iteraţia precedentă (k). Deci, pe măsură ce
se obţin componentele vectorului soluţie la iteraţia (k+1), acestea sunt folosite la calculul celorlalte
componente.
Algoritm: Sistemul de ecuatii liniare (8.7) se rezolva iterativ cu formula:
1 ⎡ i −1 n ⎤
xi( k +1) = ⎢bi − ∑ aij x (jk +1) − ∑ ij j ⎥⎥ ,
a x (k )
i = 1, n ; k = 0, 1, 2, K
aii ⎢
⎣ j =1 j = i +1 ⎦
(8.17)
2
elementele vectorului de start X(0) sunt alese de către utilizator
o pseudosolutie X* in sensul celor mai mici patrate (CMMP) consideram reziduul r=B-A*X. Se cauta solutia
X* astfel incat ||B-A*X*||2=min||B-A*X||2 pentru x∈Rn
Pseudosolutia X* poate fi scrisa sub forma X*=A+*B , unde matricea A+∈Rn x m , definita prin A+=(AT*A)-1*AT
si se numeste pseudoinversa lui A
(Vezi Exemplul 3 din Fisa_4)
⇒ SISTEME SUBDETERMINATE
Consideram un sistem de n ecuatii liniare cu m necunoscute, A*X=B, unde A∈Rn x m si B∈Rn .Presupunem ca
n < m si ca toate liniile sunt independente. Un astfel de sistem este compatibil nedeterminat (in sensul
teoremei de compatibilitate a lui Kroneker-Capelli). Problema este abordata in sensul unei solutii normale
(de norma minima). Se cauta o solutie X* in sensul celor mai mici patrate (CMMP) cu proprietatea
||X*||2=min||X||2 pentru x∈Rm
Solutia X* poate fi scrisa sub forma X*=A+*B , unde matricea A+∈Rn x m , definita prin A+= AT *(A* AT)-1 si se
numeste pseudoinversa normala a lui A
Exemplul 5. Sa se rezolve sistemul liniar subdeterminat
4*x1+x2-x3=2
x1+5*x2+4*x3=1
Solutie teoretica: X1=(9/19)*(1+X3), X2=(2-17*X3)/19, X3
Solutie numerica in sensul CMMP:
octave#1>A=[4 1 –1;1 5 4];B=[2 1]’;x=A’*inv(A*A’)*B
octave#2>X1=A\B
Returneaza X=X1 =0.21751 0.25581 0.12585
APLICAŢII
Problema 1. Rezolvati sistemul de ecuatii liniare de mai jos, prin metoda de eliminare Gauss.
⎧− x1 + 5 x 2 + x3 = 2
⎪
⎨− x1 − 2 x 2 + 4 x3 = 5
⎪8 x − x = −8
⎩ 1 2
Problema 2. Gasiti solutiile sistemului de la Problema 1, cu metoda Jacobi, dupa 3 iteratii, cu aproximatia
initiala x1(0 ) = x 2(0 ) = x 3(0 ) = 0 . Comparati cu rezultatele obtinute cu metoda de eliminare Gauss. Sa se
afle de asemenea solutia sistemului folosind functia Octave jacobi cu delta = 1e-6 si maximum 50 de
iteratii
aproximatia initiala x1(0 ) = x 2(0 ) = x 3(0 ) = 0 . Comparati cu rezultatele obtinute cu metoda Jacobi si cu
metoda de eliminare Gauss. Sa se afle de asemenea solutia sistemului folosind functia Octave gaussseidel
cu delta = 1e-6 si maximum 50 de iteratii
⎡1 1 5⎤
Problema 4. Gasiti descompunerea LU a matricei A, unde A = 2 1 1
⎢ ⎥ si apoi solutia sistemului
⎢ ⎥
⎢⎣1 3 1⎥⎦
⎡− 7 ⎤
A ⋅ X = B , folosind factorizarea triunghiulara, daca B = ⎢⎢ 2 ⎥⎥
⎢⎣ 5 ⎥⎦
Rezolvare: Pentru A se cauta o descompunere in doua matrici L si U astfel incat:
L=[l11 0 0; l21 l22 0; l31 l32 l33] , U=[1 u12 u13; 0 1 u23; 0 0 1]. Din identitatea L*U=A se obtine un
sisteme de 9 ecuatii cu 9 necunoscute.
Odata determinate matricile L si U se rezolva sistemul astfel: A*X=B devine L*U*X=B. Rezolvam pe rand
sistemele liniare U*X=Y si U*Y=B
Problema 5. Pentru sistemul de la Problema 1 sa se calculeze numarul de conditionare al matricii
coeficientilor necunoscutelor folosind functia Octave cond. Comentarii.
Aceiasi problema pentru matricea A1=[ 1 2 3;4 5 6;7 8 9]. Indicatie: Pentru matricea sistemului de la
problema 1 se obtine cond(A)= 2.1389 iar pentru matricea A1, cond(A1)= 3.8131e+16
Problema 6. Folosind procedura Gauss si regula pivotului sa se determine rangul matricii
A=[1 6 11;2 7 12;3 8 13;4 9 14;5 10 15]
1 6 11 1 6 11 1 6 11
2 7 12 0 -5 -10 0 -5 -10
3 8 13 0 -10 -20 0 0 0
4 9 14 0 -13 -30 0 0 0
5 10 15 0 -20 -40 0 0 0