Sunteți pe pagina 1din 8

Rezolvarea ecuatiilor algebrice neliniare prin metoda Newton-Raphson

Analiza circuitelor rezistive neliniare necesită soluția unor sisteme de ecuații algebrice neliniare.
Unul dintre cei mai eficienti algoritmi numerici care ne permite să rezolvăm o ecuatie sau un
sistem de ecuatii neliniare este algoritmul Newton-Raphson.
Pentru al explica, considerăm la început cel mai simplu caz al unei ecuații cu o singură variabilă
x.
f(x)=0 (1)
Metoda Newton-Raphson este o metodă iterativă, iar formula de iterație este

( )
( ) ( )
= − ( ) , (2)
unde
( ) ( )
= . (3)

Se incepe cu o aproximare inițială x(0) si apoi se calculeaza solutia la iteratia 1, adica x(1) din
relatia (2).Apoi solutia la iteratia 2, x(2) cu ajutorul lui x(1) . Folosim succesiv relatia 2 până când
x(j) converge la soluție x*.

( ) ( )
Procesul de calcul Newton-Raphson este continuat până − ≅0
Din relatia (2) obtinem :

( )
( ) ( )
− =
( ( ))
( ) ( )
Daca − =0
( )
atunci =0

1
Astfel consideram ca solutia de la iteratia (j) aproximeaza Solutia ecuatiei x*.

( ) ∗

Exemplul 1

Având în vedere ecuația


f(x)=x3+x-4=0
Pentru a scrie formula de iterație Newton-Raphson adaptată acestei ecuații determinam derivate

f’(x)=3x2+1.
Prin urmare, relatia (2) devine:
( )
( ) ( )
+ ( )−4
= −
3( ( ) ) + 1

Alegem în mod arbitrar o presupunere inițială, să spunem x(0) = 0. Metoda Newton-Raphson


generează secvența.

Algortimul Newton Raphson pentru determinarea solutiei ecuatiei f(x) = 0

1.Evaluarea simbolica a lui f’(x)Type equation here.


2.Stabilirea unei aproximari initiale x(0)
3.Determinarea erorii relative err
4.Compararea cu o eroare relative fixata erf
Daca err > erf atunci se merge la pasul 2.Altfel algoritmul se opreste.De asemenea se poate
compara numarul de iteratii cu valoarea permisa.

( )
−4
=0− =4
1
( ) ./0 0.0
= 4− = 2.694
01
( )
2.694 + 2.694 − 4
= 2.694 − = 1.893
3 ∗ 2.694 + 1
(0)
=1.495
(6)
= 1.386
(/)
= 1.379
(8)
= 1.379
(8) (/)
De vreme − = 0 , presupunem x* = 1.379

2
REZOLVAREA SISTEMELOR DE ECUATII ALGEBRICE LINIARE
PRIN METODE ITERATIVE

Metodele iterative sunt metode care permit obţinerea soluţiei numerice a unui sistem de ecuaţii
prin generarea unui sir care tinde către soluţia exactă. Elementele acestui şir de iteraţii se
calculează recursiv, iar procesul se opreşte după un număr finit de paşi, la îndeplinirea criteriului
de eroare.
Chiar dacă soluţia obţinută prin metode iterative este afectata de erori de trunchiere, erori care nu
apar în cazul metodelor directe, este totuşi posibil ca soluţia obţinută prin metode iterative să fie
mai precisă ca cea obţinută prin metode directe.

3.1. Prezentarea metodelor.

Metodele iterative de rezolvare a sistemului de ecuaţii liniare sunt metodele în care


termenul x(k) al sirului soluţiilor numerice se obţine din termenul anterior x(k-1).
Soluţia exactă se obţine teoretic după un număr infinit de iteraţii. În practică prin
efectuarea unui număr finit de paşi de iteraţie, se poate ajunge la o aproximare suficient de buna
a soluţiei exacte. Dacă şirul iteraţiilor este convergent, cu cât se efectuează mai multe iteraţii, cu
atat soluţia numerică este mai precis determinată, erorile, atât cele de trunchiere cât şi cele de
rotunjire, devenind tot mai mici.
În metodele iterative se porneşte de la o iniţializare arbitrară pentru vectorul soluţie
numerică x(0).
Pentru a determina noua valoare a soluţiei numerice se rescrie ecuaţia sub forma x = F(x)
in care F se numeşte “aplicaţie cu punct fix” iar la fiecare pas k al algoritmului, se determină
noua soluţie numerică din relaţia :
x(k)=F(x(k-1)) (3.1)

Pentru a aduce sistemul de rezolvat la forma unei aplicaţii cu punct fix în general se caută o
descompunere a matricei A într-o diferenţă de două matrice de forma :

A = B-C → ( B-C) x = b Bx –Cx = b Bx = b+Cx

sistemul putând fi astfel adus la forma x = B-1 ( b+Cx) adică soluţia la pasul k fiind:

x(k) = B-1 ( Cx(k-1) +b)


sau
x(k) = α x(k-1)+ β (3.2)

unde: α =B-1 C se numeşte matrice de iteraţie iar β =B-1 b.


Una din problemele metodelor iterative este convergenţa sirului de iteraţii.
Se demonstrează că o condiţie suficientă pentru ca metoda să fie convergentă este ca
valorile proprii ale matricei de iteraţie M=B-1C să fie toate în modul mai mici ca 1. Definind raza
de convergenţă a matricei α , ρ (M) ca fiind modulul celei mai mari valori proprii, condiţia de
convergenţă se scrie

3
ρ (M) < 1 (3.3)

Această condiţie de convergenţă este corelată cu norma matricei de iteraţie. Se


demonstrează că pentru orice matrice, există următoarea relaţie între norma şi raza sa de
convergenţă:
ρ (M) < || M || (3.4)
Deci dacă matricea M are norma subunitară || M || < 1 raza sa de convergenţă va fi şi ea
mai mică ca 1, iar metoda iterativă va fi în acest caz convergentă.Metodele iterative cele mai
cunoscute sunt: metoda deplasărilor simultane (Jacobi),metoda deplasărilor succesive(Gauss-
Seidel), metoda suprarelaxărilor succesive( Frankel-Young), metoda direcţiilor alternante
(Peaceman-Rachford).

Metoda aproximatiilor succesive(metoda iteratiilor)

Atunci cind numarul de necunoscute din sistem este mare utilizarea algoritmului Gauss
devine ineficienta din punct de vedere computational si in acest caz este indicata folosirea
metodei aproximatiilor succesive.
Fie sistemul :

Ax = b
care in forma explicita este :

a11 x1 + a12 x 2 + ... + a1 x nn = b1


a x + a x + . . . + a x = b
 21 1 22 2 2n n 2

................................................
 (3.5)
................................................
................................................

a n1 x1 + a n 2 x 2 + ... + a nn x n = bn
cu matricea A :
 a11 a12 ...a1n 
a a 22 ... a 2 n 
 21
..... ...... ..... ..... 
A= 
..... ..... ..... ..... 
 .... ..... ..... ..... 
 
a n1 a n 2 ... a nn 

b vectorul termen liber iar x vectorul solutie.

4
b1   x1 
b  x 
 2  2
b = ...  x = ... 
   
...  ... 
bn   xn 
   

Presupunem că coeficientii aii ≠ 0 si aplicăm următorul algoritm:


-se rezolvă : I-a ecuatie in raport cu x1
a II-a ecuatie in raport cu x2
........................................
........................................
........................................
a n-a ecuatie in raport cu xn

si se obtine urmatorul sistem

 x1 = β 1 + α 12 x 2 + α 13 x3 + ... + α 1n x n
 x = β + α x + α x + ... + α x
 2 2 22 2 23 3 1n n

......................................................
> (3.6)
......................................................
......................................................

 x n = β n + α n 2 x 2 + α 23 x3 + ... + α nn x n

unde
bi
βi =
a ii
aij
α ij = − i≠ j
aii
α ij = 0 i = j

 β1  α 11 α 12 ... α 1n 
β  α α 22 ... α 2 n 
β=  2
α =  21
 ...   ... ... ... ... 
   
β n  α n1 α 2 n ... α nn 

Iterativ sistemul are forma :

(k ) ( k −1)
x =α ⋅x +β (3.7)

5
(1) ( 0) (0)
Exemplu:pentru k =1 se obtine solutia la prima iteratie x = β + α x unde x este
aproximarea initiala.
Dacă există un vector soluţie aproximaţie iniţială pentru care x (k ) converge atunci sistemul
are soluţia pentru orice altă aproximaţie iniţială.
Chiar daca vectorul aproximaţie iniţială se alege arbitrar, totuşi este indicat să alegem ca
vector aproximaţie iniţiala o soluţie a sistemului obţinută printr-o aproximare grosieră.
Sistemul are solutie utilizând metoda aproximatiilor succesive dacă matricea A este o
matrice diagonal dominantă, adică:

n
ai i > ∑ ai j i = 1, n
j =1
j ≠i

exemplu daca i = 1 atunci conditia devine

a11 > ∑ a i j = a1 2 + a13 + .... + a1 n (3.8)


j =1
j ≠i

Exemplu 8 Să se rezolve următorul sistem prin metoda aproximaţiilor succesive :

4 x1 + 0,24 x 2 − 0,08 x3 = 8

0,09 x1 + 3x2 − 0,15 x3 = 9
0,04 x + 0,08 x + 4 x = 20
 1 2 3

Se observa ca matrices este diagonal dominanta :


4 ≥ 0.24 + 0.8 3 ≥ 0.09 + 0.15 4 ≥ 0.08 + 0.04
Se parcurg etapele descrise anterior:

4 x1 + 0,24 x2 − 0,08 x3 = 8 / : 4  x1 = 2 − 0,06 x2 + 0,02 x3


 
0,09 x1 + 3 x2 − 0,15 x3 = 9 / : 3 =>  x2 = 3 − 0,03 x1 + 0,05 x3
0,04 x + 0,08 x + 4 x = 20 / : 4  x = 5 − 0,01x + 0,02 x
 1 2 3  3 1 2

 x1  2 0 −0,06 0,02  x1 


 x  = 3  + −,0,3 0 0,05 ⋅  x2 
 2   
 x3  5  − 0,01 0,02 0   x3 

Considerăm vectorul aproximate initială x ( 0) = [2 3 5]


Folosind relatia (3.7) obtinem solutiile corespunzatoare primelor doua iteratii :

6
(1)
x1 = 2 − 0,06 ⋅ 3 + 0,02 ⋅ 5 = 1,92
(1)
x2 = 3 − 0,03 ⋅ 2 + 0,05 ⋅ 5 = 3,19
(1)
x3 = 3 − 0,03 ⋅ 2 + 0,05 ⋅ 5 = 3,19

(2)
x1 = 1,9094
(2)
x2 = 3,1944
( 2)
x3 = 5,0446

Solutia obtinuta prin Gauss : [1.9070 3.1886 4.9172]

Se observă că alegerea vectorului aproximaţiei iniţiale nu depinde de termenul liber. Se


poate arăta că convergenţa procesului iterativ nu depinde decât de proprieăţile matricei α. În
cazul în care matricea sistemului nu are coeficienţi diagonali dominanţi se pot face permutări şi
combinaţii ale liniilor şi coloanelor matricei sistemului până când aceasta devine diagonal
dominantă.
Una din problemele care apar la rezolvarea sistemelor de ecuaţii liniare prin metode
iterative este alegerea pasului la care se va opri procesul iterativ. O metodă de a rezolva această
problemă constă în evaluarea după fiecare iteraţie, a erorii Cauchy:
e =  xnou- xvechi||
şi întreruperea calculelor atunci când această eroare devine mai mică decât eroarea impusă, ε .
Desigur condiţia de mai sus este echivalenta cu impunerea condiţiei ca norma matricei de
iteraţie să fie subunitară, procedeul iterativ fiind cu atât mai rapid convergent cu cât norma
matricei de iteraţie este mai mic.

3.4.Analiza complexitatii

Efortul de calcul

Pentru o iteraţie ordinul de complexitate al metodelor Gauss-Seidel este 0(n(n+2)).


Efortul de calcul pentru rezolvarea întregului sistem de ecuaţii liniare prin metode iterative
este de ordinul 0(mn2) în care numărul total de iteraţii m care vor fi efectuate nu este cunoscut
dinainte.
Efortul de calcul depinde de norma matricei de iteraţie, fiind cu atât mai mic cu cât această
normă este mai mică.
Necesar de memorie Pentru memorarea matricei sistemului a vectorilor termen liber şi
soluţie sunt necesare n2+2 n locaţii de memorie.
Analiza erorilor.Spre deosebire de metodele directe la care singurele erori care apar sunt
cele de rotunjire, la metodele iterative apar şi erori de trunchiere prin reţinerea din sirul
convergent către solutia exactă a unui număr finit de termeni.
Datorită convergenţei lor, metodele iterative au proprietatea remarcabilă de a corecta
erorile de rotunjire, apărute pe parcurs. Eroarea absolutei la iteraţia k este de cel puţin || α || ori
mai mică decât eroarea de la pasul anterior (k − 1) :

7
(k ) ( k −1) k
εk = x −x ≤ M x − x = M .ε k −1 ≤ M .ε 0 (3.13)

Se constată că eroarea finală depinde de eroarea iniţială , de numărul de iteraţii şi de norma


matricei de iteraţie, care determină viteza de convergenţă.

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