Sunteți pe pagina 1din 26

1

13. REZOLVAREA NUMERIC


A ECUAIILOR I SISTEMELOR
DE ECUAII DIFERENIALE
13.1. Ecuaii difereniale de ordinul nti
13.1.1. Metoda dezvoltrii n serie Taylor
13.1.2. Metode de tip Euler
13.1.3. Metodele Runge-Kutta
13.2. Ecuaii difereniale de ordin superior
2
13.1. Ecuaii difereniale de ordinul nti
O ecuaie diferenial ordinar de ordinul nti este o relaie de forma
d
d
( , )
y
x
f x y =
= y f x y ( , )
sau
unde f : I R R, I R, funcie continu.
Se numete soluie a ecuaiei difereniale funcia y : I R, derivabil
pe mulimea I, cu proprietatea c , x I.
Rezolvarea (integrarea) unei ecuaii difereniale const n determina-
rea tuturor soluiilor ei.
Se consider ecuaia diferenial cu condiia iniial y(x
0
) = y
0
(pro-
blema Cauchy), cu x
0
I, y
0
R.
Se presupune c soluia exact (analitic) a ecuaiei exist i este uni-
c. O condiie suficient pentru aceasta este ca derivata funciei f(x, y) n
raport cu x s existe i s fie mrginit.
n cazuri particulare este posibil rezolvarea analitic a problemei i
gsirea soluiei exacte.
= y x f x y x ( ) ( , ( ))
3
Situaii cum ar fi:
absena unor metode analitice generale face ca n multe cazuri (tipul
ecuaiei este necunoscut; soluia nu poate fi exprimat cu ajutorul
funciilor elementare) rezolvarea analitic s nu fie posibil.
nu soluia exact a ecuaiei intereseaz, ci doar valorile sale n anumi-
te puncte, cu o anumit precizie.
conduc la recurgerea la anumite metode de obinere a unor aproximaii
numerice ale soluiei problemei, sub forma unei tabele de valori cu pas
constant h:
x
i
x
0
x
1
x
2
... x
n
y
i
y
0
y
1
y
2
... y
n
Pentru nceput, n tabel este cunoscut doar cuplul de valori (x
0
, y
0
),
care reprezint coordonatele unui punct iniial al curbei integrale cutate
y(x). Pe baza acestui punct i a uneia din metodele studiate se pot calcula,
cu aproximaie, i celelalte puncte (x
i
, y
i
), i =1, 2,..., n, din tabel.
Din punct de vedere geometric, ele determin o linie poligonal care
aproximeaz curba integral y(x).
4
13.1.1. Metoda dezvoltrii n serie Taylor
Fie ecuaia diferenial cu condiia iniial y(x
0
) = y
0
.
Se presupune c soluia y(x) se poate dezvolta n serie Taylor n veci-
ntatea punctului x
0
:
y x y x
x x
y x
x x
p
y x
p
p
( ) ( )
!
( ) +
( )
!
( )
0
( )
= +

+

+
0
0
0 0
1
L L
n particular, pentru x = x
1
, cu x
1
- x
0
= h, valoarea soluiei este
y x y x
h
y x
h
y x
h
p
y x
p
p
( ) ( )
!
( )
!
( )
!
( ) +
( )
0 1 0 0
2
0
1 2
= + + + + L L
Pentru calculul ei este necesar a determina valorile
ale derivatelor soluiei n punctul x
0
.
Din ecuaia diferenial avem:
y x y x ( ), ( ),
0 0

y x y x
p
( ), ( ),
0
( )
..., ...
0
= = y x f x y x f x y ( ) ( , ( )) ( , )
0 0 0 0 0
Prin derivare n ecuaie n raport cu x i evaluare n punctul x
0
rezult:
= + y x f x y f x y f x y
x y
( ) ( , ) ( , ) ( , )
0 0 0 0 0 0 0
5
Se obine n final:
[ ]
y x y
h
f x y
h
f x y f x y f x y h
x y
( )
!
( , )
!
( , ) ( , ) ( , ) + O( )
3
1 0 0 0
2
0 0 0 0 0 0
1 2
= + + +
unde notaia O(h
3
) indic ordinul de trunchiere al seriei, prin neglijarea
termenilor ce conin h la puterea a treia sau mai mare.
Utilizarea formulei fr termenul O(h
3
) prezint o eroare de trunchiere
de forma Kh
3
unde K este o constant. Dac este necesar o aproximare
mai bun a soluiei n punctul x
1
, atunci n serie trebuie luai n conside-
rare mai muli termeni.
Pe baza lui x
1
i a valorii y
1
= y(x
1
), se poate obine valoarea y
2
.
Procednd n mod iterativ se determin irul de valori aproximative:
y
1
, y
2
,..., y
n
.
Procesul iterativ al metodei poate fi exprimat sub forma:
[ ]
y y
h
f x y
h
f x y f x y f x y
i i i i x i i i i y i i +
= + + +
1
2
1 2 !
( , )
!
( , ) ( , ) ( , ) + L
6
Aceasta este o metod direct deoarece pentru determinarea unui
punct (x
i +1
, y
i +1
) sunt necesare numai informaii referitoare la punctul
anterior (x
i
, y
i
).
Metoda este implementat n MAPLE ca opiune a funciei predefinite
dsolve.
13.1.2. Metode de tip Euler
13.1.2.1. Metoda Euler (liniilor poligonale)
Se consider ecuaia diferenial cu condiia iniial y(x
0
) = y
0
.
Metoda reprezint cel mai simplu caz particular al metodei dezvoltrii
n serie Taylor. Prin reinerea doar a primilor doi termeni rezult:
y y h f x y
i i i i +
= +
1
( , )
, i = 0, 1,..., n - 1
Pe baza formulei de recuren se poate stabili, pornind de la valoarea
iniial y
0
= y(x
0
), irul aproximaiilor y
1
, y
2
,..., y
n
ale soluiei ecuaiei.
Din punct de vedere geometric, metoda revine la nlocuirea curbei
y = y(x) cu o linie poligonal.
7
8
Este o metod direct (pas cu pas), cu algoritm de tip explicit.
Eroarea comis n calculul soluiei este compus din eroarea de trun-
chiere (de ordinul h
2
) i din eroarea de rotunjire.
ntruct erorile se propag de la un pas la altul, mrimea erorii acu-
mulate depinde de numrul pailor de integrare.
Precizia fiind destul de mic, pentru obinerea unor rezultate satisf-
ctoare este necesar a se folosi un pas de integrare h foarte mic.
Aplicaie. S se elaboreze n MAPLE o procedur care s implemen-
teze metoda Euler.
S se rezolve problema Cauchy cu condiia iniial y(0) = 2. = y y
9
10
13.1.2.2. Metoda Euler mbuntit
Spre deosebire de metoda liniilor poligonale, dreptele care determin
conturul poligonal au panta egal cu derivata calculat la mijlocul fiec-
rui interval [x
i
, x
i+1
], i = 0, ..., n - 1 i nu la extremitatea stng.
Ca urmare, procesul iterativ al metodei poate fi exprimat sub forma:
h i x x
i
+ =
0
2
h
x x
i m
+ = y y
h
f x y
m i i i
= +
2
( , )
, i = 0, 1,..., n - 1 ,
y y h f x y
i i m m +
= +
1
( , )
Aplicaie. S se elaboreze n MAPLE o procedur care s implemen-
teze metoda Euler mbuntit. S se rezolve problema Cauchy
cu condiia iniial y(0) = 1.
= y y
x
y
2
11
12
13.1.3. Metodele Runge - Kutta
Metodele Runge-Kutta reprezint o clas de metode numerice pentru
rezolvarea problemei Cauchy , cu condiia iniial y(x
0
) = y
0
.
Spre deosebire de metoda dezvoltrii n serie Taylor, ele necesit doar
evaluarea funciei f(x, y), nu i a derivatelor sale.
Metodele i propun construirea unei funcii de h, care s depind de
f(x, y). Condiia care se impune este ca dezvoltarea n serie a funciei
dup puterile lui h s coincid cu dezvoltarea n serie a soluiei exacte
y(x) pn la o putere ct mai mare a lui h.
Algoritmul metodelor poate fi exprimat prin formula:
= y f x y ( , )
y y c k
i i j j
j
p
+
=
= +
1
1


unde k
j
sunt valorile funciei f calculate n puncte intermediare:
k h f x a h y b k
j j j i j j jl j
l
j
= = + = +
=

( , ); ;
j

0
1
1
(*)
13
n care a
j
, b
jl
sunt constante ce trebuie determinate; ntotdeauna a
1
= 0;
b
11
= 0.
Atunci,
k h f x
k h f x a h y b k
k h f x a h y b k b k
i i
i i
i i
1
2 2 21 1
3 3 31 1 32 2
=
= + +
= + + +
( )
( , )
( , )


,
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
( , + )
1
k h f x a h y b k b k b k
p i p i p p p p p
= + + + +
1 1 2 2 1
L
cu x
i
i y
i
date.
Metodele Runge-Kutta au un caracter iterativ, diversele mrimi care
intervin fiind calculate pe baza valorilor anterioare.
Constantele c
j
, a
j
, b
jl
se determin din condiia ca dezvoltarea n se-
rie, dup puterile lui h, a relaiei (*) s coincid pn la o anumit putere
a lui h cu formula lui Taylor:
[ ]
y y
h
f x y
h
f x y f x y f x y
i i i i x i i i i y i i +
= + + +
1
2
1 2 !
( , )
!
( , ) ( ) ( , ) + , L
14
Pentru diverse valori ale lui p n relaia (*) se obin formulele Runge-
Kutta corespunztoare.
1) Metoda Runge-Kutta de ordinul 1 (cazul p = 1)
y y h f x y
i i i i +
= +
1
( , )
, i = 0, 1,..., n - 1
Se regsete formula lui Euler. Eroarea de trunchiere a metodei este
de ordinul lui h
2
.
2) Metoda Runge-Kutta de ordinul 2 (cazul p = 2)
Eroarea de trunchiere a aceastei formule este de ordinul lui h
3
.
3) Metoda Runge-Kutta de ordinul 3 (cazul p = 3)
y y k k k
i i +
= + + +
1 2 3
1
6
4 ( )
1
, i = 0, 1,..., n - 1
n care coeficienii:
y y
h
f x y
h
f x h y h f x y
i i i i i i i i +
= + + + +
1
2 2
( , ) ( , ( )) , , i = 0,..., n - 1
15
k f x y
k h f x h y h k
k h f x h y k k
i i
i i
i i
1
1
3 1 2
1
2
1
2
2
=
= + +
= + +
( , )
( , )
( , )
2
Eroarea de aproximare n acest caz este de ordinul lui h
4
.
4) Metoda Runge-Kutta de ordinul 4 (cazul p = 4)
Este cea mai rspndit variant n practic.
) 2 2 (
6
1
4 3 2 1 1
k k k k y y
i i
+ + + + =
+
, i = 0,1,..., n - 1
n care coeficienii
) , (
)
2
1
,
2
1
(
)
2
1
,
2
1
(
) , (
3 4
2 3
1 2
1
k y h x f h k
k y h x f h k
k y h x f h k
y x f k
i i
i i
i i
i i
+ + =
+ + =
+ + =
=
16
La fiecare pas de integrare funcia f(x, y) este evaluat de patru ori.
Eroarea de trunchiere a acestei metode este de ordinul lui h
5
.
Sunt stabilite formule Runge-Kutta pn la ordinul 8.
Principalele avantaje ale acestor metode sunt:
- posibilitatea autopornirii, pentru calculul unei noi aproximaii fiind
suficient cunoaterea unui singur punct anterior;
- precizia bun, care crete odat cu ordinul metodei.
Un dezavantaj l constituie numrul de evaluri ale funciei f(x, y).
Metodele Runge-Kutta de ordinele 4-5 i 7-8, sunt implementate n
MAPLE sub forma opiunii numeric a funciei predefinite dsolve.
Funcia dsolve
Funcia rezolv ecuaii i sisteme de ecuaii difereniale ordinare.
Sintaxa:
dsolve ( ecd, var, ec )
Argumente: ecd - ecuaie diferenial (mulime de ecuaii difereniale)
i condiie (condiii) iniial; var - variabil (mulime de variabile);
ec - (op) ecuaie sau ecuaii.
17
Argumentul ec este o ecuaie special ce poate fi:
a) type = valoare, de forma:
type = exact, pentru a obine o soluie exact a ecuaiei ecd; este
forma implicit a argumentului ec n absena sa;
type = series, pentru o soluie a ecuaiei ecd sub forma unei serii;
ordinul seriei poate fi specificat prin variabila global Order;
type = numeric, pentru determinarea soluiei cu ajutorul metodelor
numerice;
b) explicit = true sau false - pentru exprimarea soluiei n mod explicit
sau nu n funcie de variabilele dependente; (implicit este false);
c) method = valoare, de forma:
method = rkf45 sau dverk78; este specificat metoda numeric de
rezolvare a ecuaiei; rkf45 se refer la metoda Runge - Kutta de
ordinul 4-5 ( metoda implicit); dverk78 indic metoda Runge -
Kutta de ordinul 7-8.
method = laplace; specific utilizarea transformrii Laplace pentru
rezolvare.
18
Soluia ecuaiei ecd este returnat sub forma explicit, dac este spe-
cificat condiia iniial; n caz contrar, soluia este dat sub form para-
metric, cu constante arbitrare _C1, _C2,....
19
20
Valorile returnate de funcia dsolve cu opiunea type = numeric
pot fi utilizate de funcia predefinit odeplot pentru trasarea curbei
integrale a soluiei.
21
Funcia odeplot
Traseaz curba integral a soluiei unei ecuaii difereniale ordinare.
Sintaxa:
odeplot ( sol, var, a..b, c..d, opt )
Argumente: sol - rezultatul funciei dsolve; var - variabilele de pe
axele de coordonate; a, b, c, d - numere reale; opt - (op.) opiuni.
Coordonatele sunt indicate prin argumentul var, care este de forma
unei mulimi sau liste de variabile.
Domeniile de variaie ale variabilelor sunt specificate prin argumen-
tele a..b, c..d. n absena acestora, valorile implicite sunt: pentru abscis
domeniul este -10..10; pentru ordonat domeniul este determinat de
valorile minim i maxim ale funciei soluie.
Argumentul opt este identic cu cel de la funcia predefinit plot.
Utilizarea funciei trebuie precedat de comanda with (plots).
22
23
24
13.2. Ecuaii difereniale de ordin superior
n general, rezolvarea acestor ecuaii se bazeaz pe funcia dsolve.
O ecuaie n form normal se poate reduce la un sistem de ecuaii
difereniale de ordinul nti, rezolvabil cu metode specifice sistemelor.
25
Pentru a vizualiza curba integral a unei ecuaii difereniale de ordin
superior determinat printr-o metod numeric se utilizeaz funcia
predefinit odeplot.
26