Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de...

19
As. Dr. ing. Levente CZUMBIL Laboratorul de Cercetare în Metode Numerice Departamentul de Electrotehnică, Inginerie Electrică E-mail: [email protected] Metode Numerice de Rezolvare a Sistemelor de Ecuaţii Liniare Curs 4 - 5

Transcript of Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de...

Page 1: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

As. Dr. ing. Levente CZUMBIL Laboratorul de Cercetare în Metode Numerice

Departamentul de Electrotehnică, Inginerie ElectricăE-mail: [email protected]

Metode Numerice de Rezolvare a Sistemelor de Ecuaţii Liniare

Curs 4 - 5

Page 2: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

=+++

=+++=+++

nnnnnn

nn

nn

bxa...xaxa.............................................

bxa...xaxabxa...xaxa

2211

22222121

11212111

=

nb...bb

b 2

1

=

nx...xx

x 2

1

bxA =⋅

Notaţia matriceală conduce la o formulare simplă şi concisă a unoraplicaţii deosebit de complexe, mai ales în situaţiile în care modelulmatematic conţine sisteme de ecuaţii liniare de dimensiuni mari.

=

nnnnn

n

n

n

aaaa

aaaaaaaaaaaa

A

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

...

...

...

321

3333231

2232221

1131211

În unele cazuri, sistemele de ecuaţii algebrice liniare apar în modnatural, din însăşi formularea problemei. În multe alte cazuri, însă,sistemele de ecuaţii liniare rezultă ca urmare a aplicării unor metodenumerice de rezolvare a problemei iniţiale.

Page 3: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

• Sisteme bine condiţionate - Master• Sisteme rău condiţionate - Master

Se poate spune că rezolvarea sistemelor de ecuaţii liniare joacă un rolcentral în cadrul metodelor numerice.

Există 2 categorii de metode de rezolvare a sistemelor de ecuaţiiliniare de forma A⋅x = b:

metode directe sau “exacte”;

metode indirecte sau “iterative”.

În aplicaţiile din ingineria electrică valorile coeficienţilor şi termenilorliberi pot fi afectate de erori (determinări experimentale, calcule"aproximative“, ipoteze simplificatoare, etc.). Măsura în care eleinfluenţează soluţiile sistemelor de ecuaţii liniare determină:

• Sisteme omogene• Sisteme neomogene

Page 4: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Metoda lui Cramer deşi în esenţă foarte simplă, nu corespunde cerinţelorpractice când numărul de ecuaţii este mai mare ca 3 şi când determinantulcorespunzător matricii sistemului este zero ea fiind în general neimplementabilă.

soluţia sistemului rezultă printr-o serie de operaţii care se execută osingură dată, numărul total de operaţii aritmetice elementare fiind finit,depinzând în mod direct de dimensiunea sistemului, fiind cunoscut de laînceput. rezultatul furnizat de metodele directe este afectat doar de erorile derotunjire şi acest avantaj face ca ele să fie preferate ori de câte oridimensiunea şi particularităţile sistemului păstrează numărul de operaţii înlimite acceptabile.

Exemple de metode directe se pot aminti: metoda inversării matriciale; metoda lui Cramer bazată pe calculul determinanţilor; metoda de eliminare a lui Gauss; metoda factorizării directe LU (Lower-Upper). - Master

Page 5: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Exemple de metode iterative:

metoda lui Jacobi;metoda Gauss-Seidel - Mastermetoda relaxării - Master

soluţia se obţine printr-o serie (proces) de aproximaţii succesive, fiecaresecvenţă de operaţii aritmetice elementare (mai mic decât la metodele directe)este parcursă de mai multe ori, obținându-se aproximaţii din ce în ce mai buneale soluţiei până la atingerea unei precizii fixate dinainte (precizie dorită).Aceste metode permit obţinerea soluţiei numerice a unui sistem de ecuaţii pringenerarea unui şir care tinde la soluţia exactă.

practic se poate efectua numai un număr finit de iteraţii, erorile derotunjire sunt însoţite în cazul metodelor iterative şi de erori de trunchiere.

Avantaj al metodelor iterative: simplitatea şi eficienţa implementăriilor în programe, în cazurile în care nu sunt rezolvabile prin metode directe.

Page 6: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Se consideră sistemul liniar de n ecuaţii cu n necunoscute definit de relaţiamatricială A∙x=b.

Dacă matricea A este nesingulară, atunci această relaţie se poate înmulţi lastânga cu matricea inversă A-1 rezultând:

x = A-1∙b

relaţie care evidenţiază clar cele două faze ale acestei metode: inversare amatricei A şi efectuarea produsului matriceal A-1 b.

Metoda inversării matriceale necesită un timp de calcul relativ ridicatdatorită numărului mare de operaţii elementare, aplicarea ei fiind justificatănumai în situaţiile în care este necesară soluţionarea repetată a sistemului deforma A∙x=b, pentru diferite valori ale termenilor liberi pentru că inversareamatricii A se face o singura dată, la prima rezolvare, la soluţionărileurmătoare fiind necesară numai efectuarea înmulţirii matriceale A-1∙b.

Page 7: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Într-un caz practic se poate ajunge la sisteme de forma: A∙x = b dupăaplicarea unor metode specifice de rezolvare asupra unor circuite electrice decurent continuu, ajungându-se la sistemul scris matricial:

ERIEIR ⋅=⇒=⋅ −1

•R - matricea pătratică a rezistenţelor din circuit •E - vectorul coloană a tensiunilor electromotoare ale surselor din circuit•I - vectorul coloană a curenţilor necunoscuţi

=++++

=++++=++++=++++

nnnnnnn

nn

nn

nn

bxa...xaxaxa.........................................................

bxa...xaxaxabxa...xaxaxa

bxa...xaxaxa

332211

33333232131

22323222121

11313212111 ,

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

...

...

21

22221

11211

=

nnnn

n

n

aaa

aaaaaa

A

=

nb

bb

b...

2

1

=

nx

xx

x...

2

1

Page 8: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Ideea de bază a metodei constă în aducerea sistemului de ecuaţii printransformări elementare la o formă echivalentă, având matrice superior sauinferior triunghiulară, urmată de rezolvarea sistemului rezultat prinprocedee recurente specifice, foarte eficiente.

Transformarea sistemului iniţial într-un sistem de formă triunghiularăse realizează cu ajutorul a trei operaţii elementare sau de bază:1. Interschimabrea a două ecuaţii între ele;2. Înmulţirea unei ecuaţii cu o constantă nenulă;3. Scăderea unei ecuaţii din alta şi înlocuirea celei de-a doua ecuaţie cu

rezultatul scăderii.

Transformarea sistemului este echivalentă cu eliminarea succesivă anecunoscutelor din ecuaţii şi se numeşte faza eliminării.

Rezolvarea sistemului cu matrice triunghiulară constă în determinareanecunoscutelor şi substituţia lor în ecuaţiile sistemului în ordine inversă,fiind denumită din acest motiv faza substituţiei inverse.

Page 9: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Etapa eliminării

=++++

=++++=++++

nnnnnnn

nn

)(n

)(n

)()(

bxa....xaxaxa........................................................

bxa...xaxaxabxa...xaxax

332211

22323222121

11

113

1132

1121

=++++

=++++=++++=++++

nnnnnnn

nn

nn

nn

bxa...xaxaxa.........................................................

bxa...xaxaxabxa...xaxaxa

bxa...xaxaxa

332211

33333232131

22323222121

11313212111

Se elimină x1 din toate ecuaţiile cu excepţia primeia adică de exemplu la ecuaţia i:

( ) ( ) ( ) 1111111131113132111212

2211

a/babxa/aaa...xa/aaaxa/aaa

bxa...xaxa

iinniiniiii

ininii

−=−++−+−⇓

=+++

=+++

=+++

=++++

)(nn

)(nn

)(n

)(n

)(n

)(n

)()(

)(n

)(n

)()(

bxa...xaxa

.......................................................bxa...xaxa

bxa...xaxax

113

132

12

12

123

1232

122

11

113

1132

1121

−=

==−=

=

==

)(ii

)(i

)(jiij

)(ij

)(

j)(j

babb

n,...,,i;n,...,,j,aaaa

ab

b

n,...,,j,aa

a

111

1

111

111

111

11

111

3221

21Obţinem astfel sistemul:

Page 10: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Matriceal, primul pas al metodei eliminării lui Gauss conduce la

( ) ( )

( ) ( )

( ) ( )

( )

( )

( )

=

1

12

11

2

1

112

12

122

11

112

0

01

nnnnn

n

n

b...

bb

x...xx

a...a............

a...aa...a

Matriceal, la un pas oarecare k se obține sistemul:

( ) ( ) ( )

( ) ( )

( )

( ) ( )

( )

( )

( )

( )

=

+k

n

kk

n

k

knn

knk

kkn

nk

nk

b...

b...

bb

x...x...xx

a

...

a

.........a..................

a...a...a...a...a

22

11

2

1

1

22

22

11

11

112

00

100

101 ( )

( )

( )1

1

= kkk

kkjk

kj a

aa ( ) ( ) ( ) ( )k

kjk

ikk

ijk

ij aaaa ⋅−= −− 11

( ) ( ) ( ) ( )kk

kik

ki

ki babb ⋅−= −− 11

;n,...,k,ki 21 ++=

Page 11: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( ) ( )

( ) ( ) ( )

( ) ( ) ( )

=⋅++⋅

=⋅++⋅+

=⋅++⋅+⋅++⋅+=⋅++⋅+⋅++⋅+⋅+

++

++

++

++

knn

knnk

kkn

kkn

kknk

kkkk

nnkkkk

nnkkkk

bxaxa

bxaxax

bxaxaxaxaxbxaxaxaxaxax

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

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

......

......

11,

11,

22

221

21,2

223

2232

11

111

11,1

113

1132

1121

Faza eliminării se încheie, împărţind cea de a n-a ecuaţie la elementul pivot ( )1−nnna

care, pentru un sistem cu matrice nesingulară, trebuie să fie diferit de zero. Rezultădupă acest pas sistemul:

( ) ( ) ( )

( ) ( )

( )

( )

( )

( )

( )

=

nn

kk

n

kk

kn

nk

nk

b

b

bb

x

x

xx

a

aaaaa

...

...

...

...

1...

...0...

0...

0...

...1...00............

......10

......12

2

11

2

1

22

22

11

11

112

sau matriceal, A(n)⋅x=b(n).

Page 12: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Din cele obţinute, observăm matricea A(n) este superior triunghiulară, iarsistemul este echivalent cu cel iniţial A⋅x=b, adică are soluţia (x1, x2, x3,..., xn).

Faza substituţiei inverse (mersul înapoi) presupune parcurgerea în sensinvers a ecuaţiilor sistemului cu matrice triunghiulară, rezultat în faza eliminării, şistabilirea soluţiei sistemului potrivit unui calcul recursiv prin substituţie regresivăîncepând cu xn din ultima ecuaţie continuând cu xn-1 şi terminând cu x1 din primaecuaţie:

( ) ( )

( )

+−=

−=

⋅−=

=

∑+=

31

1321

121

11

32

232

22

1

xaxabx

xabx

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

xabx

...................................bx

)()()(

)()(

n

kjj

kkj

kkk

)n(nn

Page 13: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

După cum se observă, determinarea componentelor soluţiei are loc dela indici mari spre indici mici, fiecare nouă componentă depinzând în modexplicit numai de componentele determinate la pasul anterior.

Observaţie. Metoda de eliminare Gauss permite şi calculareadeterminantului matricii sistemului. Se observă că, matricea A(n) asistemului final fiind triunghiulară, are determinantul egal cu produsulelementelor diagonale, adică: det (A(n)) = 1

( ) ( )( ) 112

331

2211

=⋅⋅⋅⋅

=−n

nn)()(

)n(

a...aaaAdetAdet ( )12

331

2211−⋅⋅⋅⋅= n

nn)()( a...aaaAdet

Page 14: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Algoritmul pentru anularea elementelor de sub diagonala principală (triangularizare).

Page 15: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

În aplicaţiile practice în care de obicei matricea coeficienţilorsistemului A este de dimensiuni mari şi numărul elementelor diferite dezero ale acestei matrici este foarte mic atunci metoda eliminării a lui Gaussnu este cea mai indicată metodă de rezolvare a sistemului.

În aceste cazuri tehnicile de eliminare vor fi încetinite mult datorităspaţiului mare de memorie necesar pentru a putea lucra cu aceste matrici demari dimensiuni dar şi faptul că elementele zero din matricea iniţială ar fitransformate în elemente diferite de zero după triangularizare.

Deci aceste sisteme mari se vor rezolva cu metode iterative.

Page 16: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

=++++

=++++=++++=++++

nnnnnnn

nn

nn

nn

bxa...xaxaxa.........................................................

bxa...xaxaxabxa...xaxaxa

bxa...xaxaxa

332211

33333232131

22323222121

11313212111

,

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

...

...

21

22221

11211

=

nnnn

n

n

aaa

aaaaaa

A

=

nb

bb

b...

2

1

=

nx

xx

x...

2

1

bxA =⋅

( ) 0≠Adet0≠ija

++++=

++++=++++=

nnnnnnn

nn

nn

x...xxx.......................................................

x...xxxx...xxx

βααα

βαααβααα

2211

222221212

112121111

βα +⋅= xx

=

−=

nn

n

nn

n

nn

n

n

n

ab...

abab

...aa

aa

............aa

...aa

aa

...aa

22

2

11

1

21

22

2

22

21

11

1

11

12

0

0

0

βα

Page 17: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

( ) ( ) ( )[ ]Tn)( x...xxx 00

20

10 =

β=)(x 0

Se alege vectorul aproximaţiilor iniţiale ale soluţiilor

care se obţine prin măsurători experimentale sau se alege de obicei în aplicaţiile practiceca fiind egal cu vectorul termenilor liberi

.

,..., )2()1( xx

βα +⋅=+ )k()k( xx 1

Metoda lui Jacobi presupune calculul unui şir de aproximaţii succesivecu ajutorul formulei de iterare într-un pas care se demonstrează prin inducţie:

βα +⋅= )()( xx 01

( ) ( ) ( )( ) xx,...,x,xlimxlim kn

kk

k

)k(

k==

∞→∞→21

Vectorul soluţie după prima iteraţie este:

Dacă şirul vectorilor soluţii la iteraţia k, x(k) care este un şir de soluţiiaproximative, converge, atunci limita lui este soluţie a sistemului A⋅x = b:

Page 18: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu

Demonstraţie 1 pe tabla - Convergenţa metodei Jacobi

( ) βα

α⋅

−≤−=

+

1

1kkxxer

Demonstraţie 2 pe tablaEvaluarea erorii în metoda aproximaţiilor succesive - Jacobi

Page 19: Curs 4 - 5 Metode Numerice de Rezolvare a Sistemelor de ...users.utcluj.ro/~czumbil/documents/mn-bistrita/MN_Bistrita_Curs_04+05.pdf · Metoda lui Cramer deşiîn esenţăfoarte simplă,nu