Sunteți pe pagina 1din 8

REZOLVAREA NUMERIC A ECUAIILOR

ALGEBRICE I TRANSCENDENTE
1. Metoda njumtirii intervalului (Biseciei)
Considerm c ecuaia
0 ) x ( f
are o singur rdcin n intervalul
) b , a (
0 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
) b , a (
0 0
se mparte n dou pri egale prin punctul:
2
b a
c
0 0
0
+

f(x)
x
A
0
B
0
a
0
a
1
x
R
c
0
b
1
b
0
Fig.1.
Se efectueaz apoi produsul
) c ( f ) a ( f
0 0
. Intervalul care conine n continuare
soluia se noteaz ) b , a (
1 1
. Situaiile care pot aprea sunt urmtoarele:

'

>

<
. b b , c a noteaza se ), b , c ( x , 0
c x , 0
c b , a a noteaza se ), c , a ( x , 0
: ) c ( f ) a ( f
0 1 0 1 0 0 R
0 R
0 1 0 1 0 0 R
0 0
n situaia prezentat n grafic avem
) c ( f ) a ( f
0 0
< 0. Cu intervalul ) b , a (
1 1
se
procedeaz n mod asemntor.
Rezult dou iruri,
{ }
N n
n
a

cresctor (sau constant pe poriuni) i { }
n
b
descresctor (sau constant pe poriuni) soluia
R
x aflndu-se n permanen n intervalul
) b , a (
n n
.
Lungimea acestui interval este:
0 0
n
n n
a b
2
1
a b
.
Numrul minim de iteraii n
min
se determin funcie de precizia impus calculelor:
<
n n
a b
.
Rezult pentru n
min
o expresie de forma:
, 1
a b
log n
0 0
2 min
+
1
]
1

unde [ ] reprezint funcia parte ntreag.


Valoarea n
min
nu depinde de complexitatea ecuaiei care se rezolv ci numai de
lungimea intervalului iniial i de precizia impus.
Orice valoare cuprins n intervalul final ) b , a (
n n
poate fi considerat ca fiind
soluie aproximativ pentru ecuaia dat. De obicei se consider
), b a (
2
1
x
n n R
+
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
0 ) x ( f
conine n intervalul
) b , a (
0 0
o singur
soluie
R
x . 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)
x
A0
B
0
x0=a0 x1
A
1
xR
b0
x
2
Fig.2.
nu are punte de inflexiune.
Ea presupune aproximarea soluiei exacte
R
x printr-un ir de valori
1
x ,
2
x ...
obinute prin intersecia tangentelor duse la graficul funciei f n punctele A
0
, A
1
,... cu
axa absciselor.
Punctul iniial
0
x
se alege ca fiind una din extremitile intervalului
) b , a (
0 0

i anume aceea care ndeplinete condiia:

0 ) x ( " f ) x ( f
0 0
>

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

+
Aceast expresie este formula iterativ a lui Newton.
Se noteaz:
) x ( ' f
) x ( f
x ) x (
.
Funcia se numete funcia de iterare a lui Newton.
Cu noua notaie, relaia de recuren a lui Newton se poate pune sub forma:
,... 2 , 1 , 0 k ), x ( x
k 1 k

+
Notnd
R k k
x x , eroarea de aproximare la pasul k, se poate scrie c:
.
! 2
) x ( "
R 2
k 1 k


+
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
0 ) x ( f
prin aceast metod, printr-un artificiu de
calcul se aduce aceast ecuaie la forma echivalent:
) x ( x
.
Dac
R
x este soluie pentru ecuaia
0 ) x ( f
, ea este soluie i pentru ecuaia
echivalent, deci vom avea:
) x ( x
R R
.
Fie
) b , a ( x
0 0 0

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

+
Considerm c funcia , derivabil pe intervalul
) b , a (
0 0
satisface condiia:
) b , a ( x ) ( 1 ) x ( '
0 0
<
.
n aceste condiii, irul de iterare definit de relaia iterativ este convergent ctre soluia
R
x a ecuaiei.
Acest lucru se poate arta pornind de la relaia evident
) x ( ) x ( x x
R k R 1 k

+
i aplicnd teorema lui Lagrange pe intervalul de extremiti
k
x i
R
x :
) x x )( ( ' ) x ( ) x ( x x
R k k R k R 1 k

+
unde: ). x , x (
R k k

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

+
.
Dnd lui k valori obinem:
. x x x x
R 0
1 k
R 1 k

+
+
Deoarece < 1, prin trecere la limit se obine:
R 1 k
k
x x lim
+

.
Funcia este continu iar prin trecere la limit n relaia de recuren
,... 2 , 1 , 0 k ), x ( x
k 1 k

+
, se obine:
) x lim ( x lim
k
k
1 k
k
+


adic:
). x ( x
R R

Rezult c limita irului de puncte
0
x
,
1
x ,
2
x ,... reprezint soluia ecuaiei.
Din punct de vedere grafic, rezolvarea ecuaiei
0 ) x ( f
prin aceast metod
se desfoar aa cum este prezentat n Fig.3 i n Fig.4.
xR x2
x1 x0 x
y
y=x
y=(x)
xR x2
x1 x0 x
y
y=x
y=(x)
(a) (b)
0<<1, (Convergen)
Fig.3.
xR x2
x1
x0 x
y
y=(x)
y=x
xR x1
x0
y
y=(x)
y=x
(a) (b)
>1 (Divergen)
Fig.4.
Notnd eroarea
R k k
x x obinem:
). x ( '
R k 1 k

+
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
0 ) x ( f
pentru care am separat n intervalul
) b , a (
0 0
o
singur soluie.
Din punct de vedere grafic, rezolvarea ecuaei prin aceast metod este ilustrat n
Fig.5.
A0
a0 x0
f(x)
xR
x1
b0
B0
Fig.5.
Se unesc punctele
0
A
i
0
B
printr-o dreapt de ecuaie:
) a x (
a b
) a ( f ) b ( f
) a ( f y
0
0 0
0 0
0


.
Intersecia dreptei cu axa Ox (y = 0) ne d punctul
0
x
:
) a ( f ) b ( f
) a ( f b ) b ( f a
x
0 0
0 0 0 0
0


Punctul
0
x
mparte intervalul
) b , a (
0 0
n dou subintervale din care numai
unul va conine n continuare soluia
R
x .
Pentru a determina care subinterval conine soluia
R
x se efectueaz produsul:

'

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

.
Aceste dou iruri,
{ }
N n
n
a

i
{ }
N n
n
b

au o limit comun, soluia
R
x a
ecuaiei.
La toate metodele iterative prezentate procedeul de calcul se oprete atunci
cnd exist un indice n pentru care:
<
1 n n
x x
,
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:
.
10
x x
1 n n

<

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.