Sunteți pe pagina 1din 8

REZOLVAREA NUMERIC A ECUAIILOR

ALGEBRICE I TRANSCENDENTE

1. Metoda njumtirii intervalului (Biseciei)


Considerm c ecuaia f ( x ) 0 are o singur rdcin n intervalul
(a 0 , b 0 ) i c funcia f este continu pe acest interval. Aceast presupunere este
valabil, n condiiile parcurgerii primei etape, aceea de separare a unei singure
rdcini ntr-un anumit interval.
Fie eroarea admis pentru soluia ecuaiei. Din punct de vedere grafic,
rezolvarea ecuaiei prin aceast metod, este ilustrat n Fig.1. Intervalul iniial
(a 0 , b 0 ) se mparte n dou pri egale prin punctul:

a 0 b0
c0
2
f(x)

A0

c0
x
a0 xR b0
a1 b1
B0

Fig.1.

Se efectueaz apoi produsul f (a 0 )f (c 0 ) . Intervalul care conine n


continuare soluia se noteaz (a 1 , b1 ) . Situaiile care pot aprea sunt urmtoarele:

0, x R (a 0 , c 0 ), se noteaza a1 a 0 , b1 c 0

f (a 0 )f (c 0 ) : 0, x R c 0
0, x (c , b ), se noteaza a c , b b .
R 0 0 1 0 1 0
n situaia prezentat n grafic avem f (a 0 )f (c 0 ) < 0. Cu intervalul (a 1 , b1 ) se
procedeaz n mod asemntor.
Rezult dou iruri, a n nN cresctor (sau constant pe poriuni) i b n
descresctor (sau constant pe poriuni) soluia x R aflndu-se n permanen n
intervalul (a n , b n ) .
Lungimea acestui interval este:
1
bn a n b0 a 0 .
2n
Numrul minim de iteraii nmin se determin funcie de precizia impus calculelor:
bn a n .

Rezult pentru nmin o expresie de forma:


b0 a 0
n min log 2 1,

unde [] reprezint funcia parte ntreag.


Valoarea nmin nu depinde de complexitatea ecuaiei care se rezolv ci numai
de lungimea intervalului iniial i de precizia impus.
Orice valoare cuprins n intervalul final (a n , b n ) poate fi considerat ca
fiind soluie aproximativ pentru ecuaia dat. De obicei se consider
1
xR (a n b n ),
2
mijlocul ultimului interval determinat.

Aplicaie: function rad_ec = bisectie_ec(a0,b0,max_err,max_it,index_f)

Unde: a0, b0 = extremitile intervalului iniial n care se cauta o rdacin


max_err = valoarea maxim admis pentru eroare
max_it = numrul maxim de iteraii admis
index_f = selector de funcie, f, astfel:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function val = f(x,index)

% functia f :

switch index
case 1
val = x.^6 - x - 1;
case 2
val = x - exp(-x);
case 3
val = x.^3-x-2;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Exemplu : bisectie_ec(0,1,0.001,20,2)

Se vor rezolva ecuaiile date n att prin limitarea numrului de iteraii ct i prin
stabilirea unei erori maxime admise.

2. Metoda lui Newton (tangentei)


Considerm c ecuaia f ( x ) 0 conine n intervalul (a 0 , b 0 ) o singur
soluie x R . Grafic, rezolvarea ecuaiei prin aceast metod este ilustrat n Fig.2. De
asemenea, considerm c pe acest interval derivatele f' i f" pstreaz semn
constant, deci f este strict monoton i

f(x)
A0

A1
xR b0
x
x0 =a0 x1 x2
B0

Fig.2.
nu are punte de inflexiune.
Ea presupune aproximarea soluiei exacte x R printr-un ir de valori x 1 , x 2
... obinute prin intersecia tangentelor duse la graficul funciei f n punctele A0, A1,...
cu axa absciselor.
Punctul iniial x 0 se alege ca fiind una din extremitile intervalului
(a 0 , b 0 ) i anume aceea care ndeplinete condiia:

f ( x 0 )f " ( x 0 ) 0
Aceast condiie ne asigur c intersecia tangentei la grafic cu axa Ox se va
afla n interiorul intervalului iniial.
Considerm punctul generic A k ( x k , f ( x k )) situat pe graficul funciei f.
Ecuaia tangentei n acest punct la graficul lui f este:
y f ( x k ) f ' ( x k )( x x k ) .

Intersecia cu axa Ox este punctul x k 1 obinut pentru y = 0:


f (x k )
x k 1 x k ; k 0,1,2,....
f ' (x k )
Aceast expresie este formula iterativ a lui Newton.
Se noteaz:
f (x)
( x ) x .
f ' (x)

Funcia se numete funcia de iterare a lui Newton.


Cu noua notaie, relaia de recuren a lui Newton se poate pune sub forma:
x k 1 ( x k ), k 0,1,2,...

Notnd k x k x R , eroarea de aproximare la pasul k, se poate scrie c:

" ( x R )
k 1 2
k .
2!
Aceast relaie arat c eroarea de aproximare evolueaz dup o lege
ptratic. Metoda lui Newton are deci o vitez mare de convergen.
Dezavantajul metodei const n faptul c n cadrul fiecrui pas este necesar
calculul derivatei funciei n punctul respectiv.

Aplicaie : function root = newton_ec(x0,max_err,max_it,index_f)

Unde: x0 = punctul iniial, din care ncepe procesul iterativ


max_err = valoarea maxim admis pentru eroare
max_it = numrul maxim de iteraii admis
index_f = selector de funcie, f, astfel:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function val = f(x,index)

% Definirea functiei f:

switch index
case 1
val = x.^6 - x - 1;
case 2
val = x - exp(-x);
case 3
val = x.^3-x.^2-x-1;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Exemplu : newton_ec(2,0.000001,12,3)
Se vor rezolva ecuaiile date n att prin limitarea numrului de iteraii ct i prin
stabilirea unei erori maxime admise.

3. Metoda aproximaiilor succesive.


Pentru rezolvarea ecuaiei f ( x ) 0 prin aceast metod, printr-un artificiu
de calcul se aduce aceast ecuaie la forma echivalent:
x ( x ) .

Dac x R este soluie pentru ecuaia f ( x ) 0 , ea este soluie i pentru


ecuaia echivalent, deci vom avea:
x R ( x R ) .

Fie x 0 (a 0 , b 0 ) o aproximaie iniial pentru soluia ecuaiei.


Metoda const n aproximarea soluiei exacte x R printr-un ir de valori x 1 ,
x 2 ..., construit pe relaia iterativ
x k 1 ( x k ), k 0,1,2,...

Considerm c funcia , derivabil pe intervalul (a 0 , b 0 ) satisface condiia:


' ( x ) 1 () x (a 0 , b0 ) .

n aceste condiii, irul de iterare definit de relaia iterativ este convergent ctre
soluia x R a ecuaiei.
Acest lucru se poate arta pornind de la relaia evident
x k 1 x R ( x k ) ( x R )

i aplicnd teorema lui Lagrange pe intervalul de extremiti x k i x R :


x k 1 x R ( x k ) ( x R ) ' ( k )(x k x R )

unde: k ( x k , x R ).
innd cont de aceste relaii i facnd nlocuirile, prin aplicarea modulului se
obine:
x k 1 x R x k x R , k 0,1,2,... .

Dnd lui k valori obinem:


x k 1 x R k 1 x 0 x R .

Deoarece < 1, prin trecere la limit se obine:


lim x k 1 x R .
k

Funcia este continu iar prin trecere la limit n relaia de recuren


x k 1 ( x k ), k 0,1,2,... , se obine:
lim x k 1 ( lim x k )
k k

adic:
x R ( x R ).

Rezult c limita irului de puncte x 0 , x 1 , x 2 ,... reprezint soluia ecuaiei.


Din punct de vedere grafic, rezolvarea ecuaiei f ( x ) 0 prin aceast metod
se desfoar aa cum este prezentat n Fig.3 i n Fig.4.
y y
y=x y=(x) y=x

y=(x)

xR x2 x1 x0 x x1 xR x2 x0 x

(a) (b)
0<<1, (Convergen)
Fig.3.
y y=(x) y
y=(x)
y=x
y=x

x1 xR x0 x2 x x1 x0 xR

(a) (b)
>1 (Divergen)
Fig.4.

Notnd eroarea k x k x R obinem:


k 1 k ' ( x R ).
Se obine un grad de convergen liniar; eroarea de la pasul (k+1) este
proporional cu eroarea de la pasul k.

Aplicaie : function rad_ec = aprox_succ_ec(x0,max_err,max_it,index_fi)

Unde : x0 = punctul iniial, din care ncepe procesul iterativ


max_err = valoarea maxim admis pentru eroare
max_it = numrul maxim de iteraii admis
index_fi = selector de funcie, , astfel:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function val = fi(x,index)

% Definirea functiei fi:

switch index
case 1
val = x.^3-2;
case 2
val = (x+2)^(1/3);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Exemplu : aprox_succ_ec(1.5, 0.0001,10,2)

Se vor analiza situaiile prezentate, evideniind convergena metodei. Se rezolv


efectiv ecuaia.

4. Metoda secantei (coardei)


Considerm ecuaia f ( x ) 0 pentru care am separat n intervalul (a 0 , b 0 ) o
singur soluie.
Din punct de vedere grafic, rezolvarea ecuaei prin aceast metod este ilustrat n
Fig.5.

f(x)
A0

xR b0
x1
a0 x0

B0
Fig.5.
Se unesc punctele A 0 i B0 printr-o dreapt de ecuaie:
f ( b 0 ) f (a 0 )
y f (a 0 ) (x a 0 ) .
b0 a 0
Intersecia dreptei cu axa Ox (y = 0) ne d punctul x 0 :
a f ( b ) b 0 f (a 0 )
x0 0 0
f ( b 0 ) f (a 0 )
Punctul x 0 mparte intervalul (a 0 , b 0 ) n dou subintervale din care numai
unul va conine n continuare soluia x R .
Pentru a determina care subinterval conine soluia x R se efectueaz
produsul:

0, x R (a 0 , x 0 ), se not. a1 a 0 , b1 x 0
f (a 0 )f ( x 0 ) : .

0, x R (x 0 , b0 ), se not. a1 x 0 , b1 b0
Cu intervalul (a 1 , b1 ) se reia procedeul descris pentru (a 0 , b 0 ) . Rezult un
ir de puncte x 1 , x 2 ,, x n , unde:
a n f ( b n ) b n f (a n )
xn .
f ( b n ) f (a n )

Aceste dou iruri, a n nN i b n nN au o limit comun, soluia x R a


ecuaiei.
La toate metodele iterative prezentate procedeul de calcul se oprete atunci
cnd exist un indice n pentru care:
x n x n 1 ,

fiind eroarea admis. Acest test nu ne asigur c am determinat o valoare


aproximativ pentru soluia situat fa de valoarea exact la o distan mai mic dect
.
Pentru a fi mai siguri, n aceast situaie se consider o condiie de oprire a
calculelor de forma:

x n x n 1 .
10

Aplicaie : function rad_ec = secanta_ec(a0,b0,max_err,max_it,index_f)

Unde : a0, b0 = extremitile intervalului iniial n care se cauta o rdacin


max_err = valoarea maxim admis pentru eroare
max_it = numrul maxim de iteraii admis
index_f = selector de funcie, f, astfel:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function value = f(x,index)

% definirea functiei f

switch index
case 1
value = x.^6 - x - 1;
case 2
value = x - exp(-x);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Exemplu : secanta_ec(1,2,0.00001,12,2)

Se vor rezolva ecuaiile date n att prin limitarea numrului de iteraii ct i prin
stabilirea unei erori maxime admise.

Pentru ecuaiile algebrice ( de tip polinomial ) se va face o verificare a rezultatelor


obinute folosind funcia roots . Pentru aceast funcie se d mai nti help roots n
matlab pentru a nelege modul de utilizare.
Se noteaz rezultatele obinute cu aceast funcie.

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