Sunteți pe pagina 1din 35

8

REZOLVAREA NUMERIC A ECUAIILOR


I SISTEMELOR DIFERENIALE*
n acest capitol sunt prezentate metodele de rezolvare a ecuaiilor difereniale
ordinare, a ecuaiilor cu derivate pariale i a sistemelor de ecuaii difereniale.
8.1. REZOLVAREA NUMERIC A ECUAIILOR
DIFERENIALE ORDINARE DE ORDINUL NTI
Se consider ecuaiile de tipul:
y f x y
'
( , )
(8.1)
cu condiia iniial:

y x y ( )


(8.!)
"cuaia diferenial (8.1) definete o cur# $n planul
xOy
. n fiecare punct al
cur#ei se d valoarea derivatei funcie de x i
y
. "cuaia este satisfcut de o
familie de cur#e, iar condiia (8.!) d cur#a din familie care trece printr%un anumit
punct din plan (
x y
,

). Soluia analitic a ecuaiei (8.1) este o e&presie a lui
y

funcie de x . 'etodele numerice ne a(ut s determinm puncte ale soluiei ecuaiei
date.
) soluie numeric a ecuaiei se poate o#ine plec*nd din punctul dat (
x y
,

),
tiind c dac $nlocuim valorile date, $n ecuaia diferenial (8.1) se poate o#ine panta
cur#ei cutate $n acest punct. +up calculul pantei cur#ei $n punctul
x

se avanseaz
cu un pas mic pe tan,enta $n punctul (
x y
,

)
y f x y x x y + ( , )( )

(8.-)
+ac considerm punctul de coordonate (
y , x
1 1
) pe tan,ent i pasul de cretere al
lui
x
1
fa de
x

, h avem
x x h
1
+
i
y f(x ,y )h y
1
+
(8..)
deci un nou punct cunoscut (
x y
1 1
,
), foarte aproape de cur#a soluiei cutate cu c*t h
este mai mic, (fi,. 8.1). /rocedeul de calcul se repet cu calculul pantei la cur# $n
punctul (
x y
1 1
,
) i determinarea unui alt punct pe tan,enta la cur# $n punctul (
x y
1 1
,
) cu
x x h
! 1
+
i
y
!
corespunztor. 0ontinu*nd $n acest mod se o#ine o
succesiune de se,mente de dreapt care apro&imeaz cur#a soluie a ecuaiei
difereniale.
11111111111111111111111111
Metode numerice n electronic
*)
Bibliografie :234, 254, 264, 21!4, 2154
7pro&imarea cur#ei soluie cu se,mente de dreapt poate da erori i succesiunea de
se,mente de dreapt poate s se deprteze considera#il de cur#a soluiei. 7ceast
pro#lem reprezint pro#lema sta#ilitii procesului de rezolvare a ecuaiei difereniale
i tre#uie s%i acordm o atenie deose#it. 8re#uie implementat o metod prin care, $n
loc s apro&imm soluia printr%o succesiune de drepte, s se ia $n considerare i cur#a
soluie adevrat.
"&ist dou tipuri de metode:
a) Metode directe $n care soluia nu se itereaz i se folosete numai o informaie
asupra cur#ei $ntr%un punct. 7stfel de metode constau $n rezolvarea ecuaiilor prin serii
8a9lor, care $ns nu sunt practice. 'etode practice :un,e%;utta pretind un mare
numr de evaluri ale funciilor,iar eroarea este dificil de evaluat.
#) Metode indirecte $n care se poate estima punctul urmtor de pe cur# folosind
mai puine estimri ale funciei, dar care necesit iteraii pentru a a(un,e la o valoare
suficient de precis. 7ceste metode sunt denumite predictor%corector i prin aplicarea
lor se poate o#ine o estimare a erorii.
8.1.1. METODA SERIILOR LUI TAYLOR
7ceast metod asi,ur soluia oricrei ecuaii difereniale, dar are o aplica#ilitate
redus din cauza dificultilor de rezolvare. 8otui, aceast metod servete pentru
compararea cu metodele practice pentru a le sta#ili ordinul metodei.
+ezvoltm pe
y(x)
$n vecintatea lui
x x
m

,
( ) ( ) ( )
( )
( )
( )
( )
( )
( ) y x y y x-x
y
!
x-x
y
j!
x-x
y
j !
x-x
m m
!
m
m
!!
m
m
j
m
j m
j
m
j
+ + + + +
! 1
!
1
1



(8.<)
unde y
m
j ( )
este derivata de ordinul j a lui
y x ( )
$n punctul
x x
m

, iar
x x
m
< <
=tilz*nd relaia
x x h
m
+
o#inem:

( )
( )
( )
( )
y y hy
h
y
y
j!
h
y
j !
h
m m m
!
m
!! m
j
j m
j
j
1
!
1
1
! 1
+ + + + +

(8.3)
=ltimul termen al relaiei (8.3) reprezint eroarea de trunc>iere. 7pro&imaia va fi cu
at*t mai #un cu c*t j este mai mare.
( ) y f x ,y
m
!
m m
(8.5)
+eriv*nd funcia ) , (
'
y x f y o#inem:

( ) ( )
f f f
x
y
y
x,y f
x
x,y f
y
y x
!!
+

d
d
(8.8)
unde
x
f
f
x

i
y
f
f
y

(8.6)
/entru
x x
m

rezult:
y f f f
m
!!
x y
+
(8.1)
15!
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
/entru j ? ! rezult:

( )
y y hy
h
y
y
h
m m m
!
m
!!
!!!
1
!
-
! 3
+ + +


(8.11)
sau

( )
y y h f
h
f f f
m m x y 1
!
+ +

1
]
1

(8.1!)
cu eroarea de trunc>iere

( )
e
y
h
(
!!!


3
-
,
x x
m
< <

(8.1-)
/un*nd m ) * $n ecuaia (8.1!) se o#ine pentru
x x h
1
+
valoarea soluiei
y
1

deci punctul (
x y
1 1 ,

). /entru m ) + rezult punctul (
x y
! ! ,

). 0ontinu*nd, se o#in
punctele soluiei ecuaiei difereniale, cu erorile de trunc>iere corespunztoare, care se
mresc $n timp. 7ceast metod este direct deoarece pentru calculul lui
y
m+1
sunt
necesare numai valorile lui
y
m
i
x
m
. /entru o eroare mai mic tre#uie s mrim
ordinul termenilor utilizai $n dezvoltarea 8a9lor. +ac dorim y
m
!!!
acesta are
e&presia:
! !
!
y y x yy xy xx
!!!
m
f f f f f f f f f y + + + +

(8.1.)
unde s%a notat:
!
!
x
f
f
xx

,
y x
f
f
xy

!
i
!
!
y
f
f
yy

0omple&itatea acestor derivate face practic inutiliza#il aceast metod.


8.1.2. METODELE RUNGE-KUTTA
'etodele :un,e%;utta se caracterizeaz prin urmtoarele proprieti:
1. Sunt metode directe, deci pentru calculul lui
y
m+1
sunt necesare informaiile de la
punctul precedent
x
m
i
y
m .
!. Sunt ec>ivalente cu seriile 8a9lor p*n la termenii
h
,
, unde , este diferit pentru
metode diferite i se numete ordinul metodei.
-. @u necesit evaluarea nici unei derivate a funciei
f
, ci numai valoarea funciei.
/roprietatea a treia a metodelor :un,e%;utta le recomand pentru utilizarea lor
practic. Se pune pro#lema evalurii funciei soluie a ecuaiei difereniale (8.1) $n mai
multe puncte. Aeometric, pro#lema const $n determinarea punctului (
x y
m m + + 1 1 , )
cunosc*nd punctul (
x y
m m
,
) i c
x x h
m m +
+
1
. n punctul (
x y
m m
,
) se duce
tan,enta la cur# deoarece tim panta cur#ei $n acest punct.
y y y x x
m m m
+
'
( ) (8.1<)
15-
Metode numerice n electronic
unde ( ) y f x ,y
m
!
m m

(8.13)
i
x x h
m m +
+
1
(8.15)
nlocuind $n (8.1<) relaiile (8.13) i (8.15) rezult:
x x h
m m +
+
1
(8.18)
iar eroarea este dat de se,mentul e.
+ac $n dezvoltarea lui 8a9lor lum j ? 1 rezult:
( )
!
1
!
h
y
hy y y
!!
!
m m m

+ +
+
(8.16)
unde
x
m
-

-
x
m+1

(8.!)

y
m

x
m

x
m+1
Bi,.8.1.+eterminarea ,rafic a soluiei ecuaiei difereniale.
0ompar*nd relaiile (8.16) i (8.!) rezult eroarea de trunc>iere pentru metoda
aplicat:

( )
e
y
h
(
!!


!
!
(8.!1)
Bormula (8.16) reprezint metoda lui "uler de rezolvare a ecuaiilor difereniale de
ordinul $nt*i. 'etoda este vec>e, are eroare de trunc>iere relativ mare i eroarea de
rotun(ire sau trunc>iere se mrete odat cu mrirea lui x .
8.1.2.1. A!"#$%& 8.1. M'%"() *$ E*'#
C.ariabile
x
*
/ ab'ci'a ,unctului de 'tart, real0
y
*
/ ordonata ,unctului de 'tart, real0
h/ ,a'ul ntre ab'ci'ele ,unctelor de calcul ale 'olu%iei, real0
y/ ordonatele 'olu%iei numerice, $ector0
x/ ab'ci'ele 'olu%iei numerice, $ector0
n/ numrul de ,uncte n care 'e calcule# 'olu%ia, intreg0

15.
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
1
x2*3) x
o
0 y2*3) y
*
0 h)con't0
,entru i ) +,4,555n
calculea# x2i3) x
*
i*h0
calcule#
y2i+3) y2i3 h*f( x2i-+3,y2i-+3)0
6olu%iile numerice 'unt x2i30 y2i30 i)*,+,4,555n0
7
7
8.1.2.2. I&+'&',%)#') )!"#$%&**$ 8.1
8* 9unc%ia care im,lementea# algoritmul de re#ol$are a ecua%iilor
diferen%iale ordinare ,rin metoda :uler5
*8
$oid :;<:":=( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
int nr,,
double 'ol23)
1
int i0
'ol2*3)y*0
for(i)+0i-)nr,0i)
'ol2i3)'ol2i-+3,a'*f(x*(i-+)*,a','ol2i-+3)0
7
8.1.-. METODELE RUNGE-KUTTA DE ORDINUL DOI
7ceste metode se numesc de ordinul doi deoarece sunt ec>ivalente cu dezvoltarea $n
serie 8a9lor p*n la termenii de ordinul doi.
8.1.-.1. M'%"() *$ E*'# .&/*,0%01$%0
7ceast metod face parte din acest ,rup de metode i utilizeaz media pantelor din
punctele (
x y
m m
,
) i (
x y
m m + + 1 1
,
) unde
x x h
m m +
+
1
iar y y hy
m m m
!
+
+
1

ordonat o#inut din ecuaia tan,entei $n punctul ' la cur# cu panta
y f x y
m m m
'
( , ) . Arafic metoda este prezentat $n fi,ura 8.!. n acest punct D de
coordonate ( x y hy
m m m
!
+
+
1
, ) se calculeaz panta la cur# care este:
15<
Metode numerice n electronic
( )
!
m m m
m hy h,y x f y + 1
'

(8.!!)
Se face media dintre panta $n punctul ' (dreapta 'E
1
)i panta $n punctul D (dreapta
DE
!
)i o notm cu
( ) ( ) ( ) # f x ,y f x h,y hy
m m m m m m
!
+ +
1
!

(8.!-)


y

x
m

x
m+1
Bi,.8.!.0alculul ,rafic al soluiei prin metoda lui "uler $m#untit.
+reapta de pant #
m
este D8. 0u acest pant #
m
se traseaz coarda prin ' i se
intersecteaz cu dreapta
x x
m

+1
rezult*nd punctul :, de coordonate (
x , y
m m +1 1
) al doilea punct de pe cur#a soluie, primul fiind considerat (
x , y
m m
). "cuaia
coardei ': este:
( )
( ) ( )
( ) y y 5 f x ,y f x h,y hy x x
m m m m m m
!
m
+ + + <
(8.!.)
/unctul :, care reprezint soluia numeric a ecuaiei difereniale, are ordonata:
( ) ( ) ( ) y y 5 h f x ,y f x h,y hy
m m m m m m m
!
1
< + + +
(8.!<)
unde ( ) y f x ,y
m
!
m m
.
7ceast formul (8.!<) reprezint formula de calcul a soluiilor numerice pentru o
ecuaie diferenial ordinar de ordinul $nt*i.
8.1.-.1.1. 2#'3$4$) &'%"('$ *$ E*'# .&/*,0%01$%0
Se dezvolt $n serie 8a9lor funcia de dou varia#ile
f x y ( , )
:
153
>
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale

( ) ( )
( ) ( ) ( ) ( ) ( ) ( ) ( )
[ ]
f x y f x y x x f x y y y f x y
x - x f , x - x y-y f , y-y f ,
m m m x m m m y m m
m xx m m xy m yy
( , ) ( , ) ( , ) ( , ) + + +
+ + +
1
!
!
!

!



(8.!3)
unde [ ]

x ,x
m
i [ ]

y ,y
m
+ac notm
x x h
m
+
iar y y h y
m m
!
+
unde y f(x ,y )
m
!
m m

(8.!5)
rezult:
( )
( ) ( ) ( )
[ ]
f x h,y hy fhf hff h f ,y ff ,y f f ,
m m m
!
x y xx xy yy
+ + + + +
1
!
!
!

!


(8.!8)
unde
f f x y
m m
( , )
, ( ) ( ) f
f
x
x ,y , f
f
y
x ,y
x m m y m m


(8.!6)
nlocuind acest rezultat $n (8.!-) i (8.!.) rezult:
( ) ( ) ( )
[ ]
y y h f
h
f ff
h
f ,y ff f f ,
m m x y xy xy yy 1
-

!

! .
! + +

1
]
1
+ + + ( , )
(8.-)
unde [ ]

1
x ,x
m m
i [ ]

1
y ,y
m m
( )
[ ]
y y h f 5 h f ff
m m x y 1
< + + +
(8.-1)
reprezint formula de calcul din dezvoltarea 8a9lor de ordinul doi care este ec>ivalent
cu formula de calcul a lui :un,e%;utta (8.!<) i are eroarea de trunc>iere:
[ ]
e h
y
f ff f f
( xy xy yy
+ +

'

-

!

3
1
.
!
'''
( )
( , ) ( , ) ( , )


(8.-!)
+ac presupunem c
f f f
xy xx yy
, ,
i y
!!!
sunt mai mici dec*t o constant
rezult:
e ? h
(

-
(8.--)
8.1.-.1.2. A!"#$%&* 8.2. M'%"() *$ E*'# .&/*,0%01$%0
1
x
*
/ ab'ci'a ,unctului ,rin care trece graficul 'olu%iei, real0
y
*
/ ordonata ,unctului ,rin care trece graficul 'olu%iei, real0
h/ ,a'ul ntre ab'ci'ele ,unctelor de calcul ale 'olu%iei, real0
y/ ordonatele 'olutiei numerice, $ector0
x/ ab'ci'ele 'olutiei numerice, $ector0
n/ numrul de ,uncte n care 'e calcule# 'olu%ia, ntreg0

1
155
Metode numerice n electronic
x2*3) x
o
0 y2*3) y
*
0 h)con't0
,entru i ) +,555n
1
calculea# x2i3) x2i -+3i*h0
calcule#
y2i3) y2i-+3 *5@*h*(f2 x2i-+3,y2i-+3) f( x2i-+3h, y2i-+3h*f(x2i-
+3,y2i-
+3)))0
7
6olu%iile numerice 'unt x2i3, y2i3 , i)*,+,4,555n0
7
7
8.1.-.1.-. I&+'&',%)#') )!"#$%&**$ 8.2
8* 9unc%ia care im,lementea# algoritmul de re#ol$are a ecua%iilor
diferen%iale ordinare ,rin metoda :uler mbunt%it5
*8
$oid :;<:"A:=( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
int nr,,
double 'ol23)
1
int i0
'ol2*3)y*0
for(i)+0i-)nr,0i)
'ol2i3)'ol2i-+3*5@*,a'*( f(x*(i-+)*,a',
'ol2i-+3)f(x*i*,a','ol2i-+3,a'*f(x*(i-+)*,a','ol2i-+3)))0
7
8.1.-.2. M'%"() *$ E*'# &"($5$3)%0
n cadrul acestei metode nu se mediaz pantele, ci se evalueaz panta $ntr%un punct
care reprezint media a dou puncte. 0onsiderm cur#a din fi,ura 8.- $n care se d
punctul iniial prin care s treac cur#a soluie a ecuaiei difereniale i dorim s
determinm cel de al doilea punct al soluiei. /rin punctul (
x y
m m
,
) dat, cunoscut sau
determinat, se duce tan,enta 'D i se determin pe aceast tan,ent punctul D de
coordonate (
x
m+1
,
y
m+1
)
8an,enta 'D are ecuaia
y y f x y x x
m m m m
+ ( , )( )

(8.-.)
/rin intersecia cu dreapta
x x h
m
+
rezult coordonatele punctului D
(
x x h
m m +
+
1
,
y y hf x y
m m m m +
+
1
( , )

(8.-<)
158
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
prezentat $n fi,ura (8.-).
'etoda face media coordonatelor punctelor ' i D i determin punctul
( ) B x x
h
y y
h
f x y
, m , m m m
+ +

_
,

! !
, ,

(8.-3)
Se calculeaz panta soluiei y $n acest punct / i rezult:
( ) # f x
h
y
h
f x y
m m m m m
+ +

_
,

! !
, ,
(8.-5)
Se scrie ecuaia dreptei care trece prin ' de pant
#
m
i o intersectm cu dreapta
y x x h
m m
+
+1
+reapta '@ are ecuaia:
( ) ( ) y y f x
h
y
h
f x y x x
m m m m m m
+ + +

_
,


! !
, ,

(8.-8)
/rin intersecia cu dreapta
x x x h
m m
+
+1
rezult ordonata:
( ) y y h f x
h
y
h
f x y
m m m m m m +
+ + +

_
,

1
! !
, ,
(8.-6)
care reprezint formula de calcul a ordonatelor soluiei ecuaiei difereniale.

y

x

x
m+1
x
m+!
x
m
Bi,.8.-.0alculul ,rafic al soluiei ecuaiei difereniale prin metoda lui "uler modificat.
7ceast metod d aceleai soluii ca i metoda lui 8a9lor p*n la h
4
, deci este o
metod :un,e%;utta de ordinul doi.
8.1.-.2.1. A!"#$%&* 8.-. M'%"() *$ E*'# &"($5$3)%0
1.ariabile
x
*
/ ab'ci'a ,unctului ,rin care trece graficul 'olu%iei, real0
y
*
/ ordonata ,unctului ,rin care trece graficul 'olu%iei, real0
156
B
xmh84
Metode numerice n electronic
h/ ,a'ul ntre ab'ci'ele ,unctelor de calcul ale 'olu%iei, real
y/ ordonatele 'olu%iei numerice, $ector0
x/ ab'ci'ele 'olu%iei numerice, $ector0
n/ numrul de ,uncte ale 'olu%iei, ntreg0

1
x2*3) x
o
0 y2*3) y
*
0
,entru i ) +,555n
1
calculea# x2i3) x2i -+3i*h0
calcule#
y2 i 3) y2i-+3 h*f( x2i-+3*5@*h, y2 i-+3*5@*h*f(x2i-+3,y2i-+3)) 0
7
6olu%iile numerice ale ecua%iei 'unt x2 i 3, y2 i 3 , i)*,555n0
7
7
8.1.-.2.2. I&+'&',%)#') )!"#$%&**$ 8.-
8* 9unc%ia care im,lementea# algoritmul de re#ol$are a ecua%iilor
diferen%iale ordinare ,rin metoda :uler modificat5
*8
$oid :;<:"M:=( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
int nr,,
double 'ol23)
1
int i0
'ol2*3)y*0
for(i)+0i-)nr,0i)
'ol2i3)'ol2i-+3,a'*f(x*(i-+)*,a'*5@*,a','ol2i-+3
*5@*,a'*f(x*(i-+)*,a','ol2i-+3))0
7
8.1.-.-. A6'&0,0#$ .,%#' &'%"('' E*'# .&/*,0%01$%0 7$ &"($5$3)%0
7m#ele metode au formula de calcul a ordonatelor soluiilor ecuaiei difereniale

y y h u
m m +
+
1

(8..)
unde u este panta #
m
sau $
m
care poate fi scris astfel:
u a f x y a f x b h y b h y
m m m m m
+ + +
1 ! 1 !
( , ) ( , )
'

(8..1)
unde y f x y
m m m
'
( , )
18
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
/entru valorile a a
1 !
1
!
i b
+
) b
4
)+ avem panta #
m
, $n cazul aplicrii
metodei
"uler $m#untit, iar pentru valorile:
a a
1 !
1 ,
i b b
1 !
1 ! F avem panta
$
m
, $n cazul aplicrii metodei "uler modificat.
+ezvoltm $n serie 8a9lor funcia
f x y ( , )
$n (urul punctului (
x y
m m
,
),
dezvoltare prezentat $n e&presia (8.!3) unde O h ( )
!
este restul i facem su#stituiile:

x x b h
m
+
1
i
y y b hf
m
+
!
$n aceast e&presie:
f(x b h, y b hf) f b hf b hff O(h )
m m x y
+ + + + +
1 ! 1 !
!

(8..!)
"&presia lui u conform formulei (8..1) devine:
u a f a f a b hf a b hff O h
x y
+ + + +
1 ! ! 1 ! !
!
( )
(8..-)
nlocuind $n formula (8..) de calcul a valorilor funciei soluie a ecuaiei difereniale
rezult:
[ ] ( )
y y h a a f h a b f a b ff O h
m m x y +
+ + + + +
1 1 ! ! 1 ! !
!
( ) ( )

(8...)
+ac comparm aceast formul (8...) cu formula lui 8a9lor (8.-) rezult:
a a
1 !
1 +
G a b a b
! 1 ! !
1
!
G
(8..<)
+eoarece avem trei ecuaii cu patru necunoscute, ale,em $n mod ar#itrar una din ele i
e&primm pe celelalte funcie de aceasta. Eum
a C
!

i rezult

a C
1
1
, b b
C
1 !
1
!
(8..3)
Bormula de calcul (8...) devine:
( ) ( ) ( )
( )
y y h C f x y Cf x
h
C
y
h
C
f x y O h
m m m m m m m m +
+ + + +

_
,

1
]
1
+
1
-
1
! !
, , ,

(8..5)
"&presia (8..5) reprezint formula de calcul a metodei :un,e%;utta de ordinul doi
,eneral. /entru C
1
!
se o#ine metoda lui "uler $m#untit, iar pentru C 1 se
o#ine metoda lui "uler modificat. "roarea de trunc>iere este:
e ? h
(

-

(8..8)
n mod analo, se pot dezvolta metodele :un,e%;utta de ordinul trei i patru.
8.1.8. METODA RUNGE-KUTTA DE ORDINUL 2ATRU
Bormula de calcul numeric a soluiei ecuaiei difereniale (8.1) este dat de e&presia
(8..6)
181
Metode numerice n electronic
x x h
m m +
+
1
[ ] y y
h
? ? ? ?
m m +
+ + + +
1 1 ! - .
3
! !
(8..6)
unde
? f x y
m m 1
( , )
? )f x
h
, y
h
?
m m ! 1
! !
+ +

_
,

(8.<)
? )f x
h
, y
h
?
m m - !
! !
+ +

_
,

( ) ? )f x h, y h?
m m . -
+ +
"roarea de trunc>iere a metodei este:
e ? h
(

<

(8.<1)
8.1.8.1. A!"#$%&* 8.8. M'%"() R*,!'-K*%%) (' "#($,* 8
1 .ariabile
x
*
/ab'ci'a ,unctului ,rin care trece 'olu%ia, real0
y
*
/ ordonata ,unctului ,rin care trece 'olu%ia, real0
h / ,a'ul ntre ab'ci'ele ,unctelor de calcul ale 'olu%iei, real0
y / ordonatele 'olu%iei numerice, $ector0
x / ab'ci'ele 'olu%iei numerice, $ector0
n / numrul de ,uncte n care 'e calculea# 'olu%ia, ntreg0
1
x2*3) x
o
0 y2*3) y
*
0
,entru i ) +,D,n
1
calculea# x2 i-+ 3)x
*
i*h0
calcule#
?
+
) f(x2 i-+ 3, y2 i-+ 3)0
calculea#
?
4
) f(x2 i-+ 3*5@*h, y2 i-+ 3 *5@*h*?
+
)0
calculea#
?
E
) f(x2 i-+ 3*5@*h, y2 i-+ 3 *5@*h*?
4
)0
calculea#
?
F
) f(x2 i-+ 3h, y2 i-+ 3 h*?
F
)0
calculea#
y [ ] ( )
. - ! 1
! !
3
1 4 2 ? ? ? ?
h
i y i + + + + 0
7
6olu%iile numerice ale ecua%iei 'unt x2 i 3, y2 i 3 , i)+,4,555n0
18!
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
7
7
8.1.8.2. I&+'&',%)#') )!"#$%&**$ 8.8
8* 9unc%ia care im,lementea# algoritmul de re#ol$are a ecua%iilor
diferen%iale ordinare ,rin metoda "unge-Gutta de ordinul F5
*8
$oid "GF( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
int nr,,
double 'ol23)
1
int i0
double ?+,?4,?E,?F0
'ol2*3)x*0
for(i)+0i-)nr,0i)
1
?+)f(x*(i-+)*,a','ol2i-+3)0
?4)f(x*(i-+)*,a'*5@*,a','ol2i-+3*5@*,a'*?+)0
?E)f(x*(i-+)*,a'*5@*,a','ol2i-+3*5@*,a'*?4)0
?F)f(x*i*,a','ol2i-+3,a'*?E)0
'ol2i3)'ol2i-+3,a'*(?+4*?44*?E?F)8H5*0
7
7
Ionclu#ie/ /utem spune despre metodele :un,e%;utta c sunt metode cu vitez de
calcul mare, deoarece calculul unui punct curent de pe cur#a soluiei se face numai cu
valorile calculate la punctul precedent. /recizia metodelor depinde de eroarea de
trunc>iere.
+ac considerm c $n punctul
x x h +

valoarea e&act a soluiei este


y
m
, cu
metoda clasic de ordinul unu rezult:
( )
y y ?h
m m
h
+
!
(8.<!)
unde
( )
y
m
h
arat c
y
m
s%a calculat cu pasul h. Se repet calculul pentru pasul hF! i
avem
y y ?
h
m m
( h8 )
+

_
,

!
!
.
(8.<-)
+in e,alitatea relaiilor (8.<!) i (8.<-) rezult:
y y - h
m
( h )
m
h8

! !
-
.
iar eroarea de trunc>iere devine:
( ) ( )
( )
e ?h y y
( m
h8
m
h

! !
.
-
(8.<.)
7plic*nd metodele :un,e % ;utta de ordinul doi rezult:
18-
Metode numerice n electronic
( ) ( )
( ) e ?h y y
( m
h8
m
h

- !
8
5
(8.<<)
'etoda :un,e % ;utta de ordinul patru are o eroare de trunc>iere care poate fi estimat
cu relaia:
( ) ( )
( ) e ?h y y
( m
h8
m
h

< !
-!
-1

(8.<3)
dedus prin acelai procedeu ca i la metoda :un,e % ;utta de ordinul $nt*i.
n anumite condiii metodele :un,e % ;utta pot da rezultate foarte imprecise c>iar
dac erorile de trunc>iere i rotun(ire sunt mici. 7ceasta se datoreaz faptului c
erorile de trunc>iere sau rotun(ire pot crete odat cu x. 7cest fenomen, care apare
referitor la devierea mare a soluiei a primit denumirea de in'tabilitate ,ar%ial, autorul
fiind 'a9ers +.B. n acest caz insta#ilitatea depinde de ecuaia diferenial, al,oritm i
dimensiunea intervalului.
8.1.9. METODE 2REDICTOR-CORECTOR
7ceste metode prezic o valoare pentru soluie la pasul m+1 ,
y
m+1
, apoi se
utilizeaz o formul pentru corecia ei. Bormula de corecie se poate utiliza de mai
multe ori pentru recorectri. 7cest proces de iteraie poate fi fcut eficient dac se ale,e
dimensiunea intervalului pentru un numr minim de iteraii.
0onsiderm formula predictor% corector de ordinul doi:

( )
( ) y y hf x ,y
m m- m m 1

1
! +
(8.<5)
$n care indicele () arat prima estimare a lui
y
m+1
.
+eoarece este necesar s se cunoasc un punct anterior lui x
*
se utilizeaz pentru
pornirea metodei, metoda :un,e%;utta de ordinul doi.

y

x

x y
m m + + 1 1
,

y y x ( )
Bi,. 8.. +eterminarea ,rafic a soluiei prin metoda predictor % corector
/unctul prezis de prima estimare se calculeaz astfel: se duce tan,enta "8, $n punctul
: x y
m m
( , )
dup care se duce coarda B: paralel cu tan,enta "8 prin punctul
18.
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
9 x y
m m
( , )
1 1
i intersecteaz dreapta
x x
m

+1
$n punctul B( x ,y
m m 1 1

)
o#in*ndu%se prima valoare prezis la estimarea zero. Se poate $m#unti valoarea
y
m1

dac se consider panta $n punctul ( x ,y


m m 1 1

) i se face media cu panta $n (


x ,y
m m
). /rin punctul ( x ,y
m m
) ducem o coard cu aceast pant care intersecteaz
dreapta
x x
m

+1
$n punctul (
( )
x ,y
m m 1 1
1
) unde
( )
y
m1
1
este estimarea de ordinul 1.
0ontinu*nd acest procedeu se poate estima valoarea lui
( )
y
m
?
1
p*n la o valoare ?,
p*n c*nd
[ ]
y y
m
?
m + +
<
1 1


(8.<8)
unde este o eroare impus.
0u panta
f x y
m m
( , )
din punctul " se duce coarda prin B
y y f x y x x
m m m m
+
1 1
( , )( )

(8.<6)
/unctul de a#scis
x
m+1
pe aceast coard are ordonata
( )
y y hf x y
m m m m 1

1
! +

( , ) care reprezint prima estimare a


soluiei.
+ucem prin " coarda de pant

( )
( )
( ) ( )
# f x ,y f x ,y
m m m m m
+
1
!
1 1


(8.3)
/unctul de a#scis
x
m+1
pe aceast coard are ordonata
( )
( )
( )
( )
[ ]
y y
h
f x ,y f x ,y
m m m m m m 1
1
1 1

!
+ +

(8.31)
/roced*nd $n mod analo, pentru a ?%a estimare avem
( )
( )
( )
( )
[ ]
y y
h
f x ,y f x ,y
m
?
m m m m m
?-
1 1 1
1
!
+ +

(8.3!)
+ac
( )
y
m
?
1
( )
-y
m
?-
1
1
H unde I ,
(8.3-)
oric*t de mic, iteraiile se opresc. :elaia (8.3-) este satisfcut c*nd metoda predictor%
corector este conver,ent.
( )
y
m
?
1
%
( )
y
m
?-
1
1
?
h
!
[
( )
( )
( )
( ) ] f x ,y f x ,y
m m
?-
m m
?-
1 1
1
1 1
!

(8.3.)
7plic*nd teorema valorii medii o#inem
[ ] [ ] [ ]
( ) y y
h f
y
y y
m
?
m
?
m
?
m
?
+ +


1 1
1
1
1
1
!
!


(8.3<)
unde

f
y
este evaluat $n
x x
m

+1
i
( ) ( )
[ ]
y y ,y
m
?-
m
?

1
1
1 5
18<
Metode numerice n electronic
+ac

f
y
este mr,init de ' I astfel ca:

f
y
'

(8.33)
rezult
( )
y
m
?
1
( )
-y
m
?-
1
1

' h
!
( ) ( )
y y
m
?-
m
?-
1
1
1
!

.
(8.35)
7nalo,
( ) ( )
y y
m
?-
m
?-
1
1
1
!

h '
!
( ) ( )
y y
m
?-
m
?-
1
!
1
-

(8.38)
sau
( )
y
m
?
1
( )
-y
m
?-
1
1

h '
!
!

_
,

( ) ( )
y y
m
?-
m
?-
1
!
1
-
.
(8.36)
0ontinu*nd calculul prin acest procedeu se a(un,e la rezultatul:

( )
y
m
?
1
( )
-y
m
?-
1
1

h
?-
'
!
1

_
,

( ) ( )
y y
m m 1
1
1


(8.5)
+ac dimensiunea intervalului > este #ine aleas adic h
M
<
!

(8.51)
atunci metoda este conver,ent. Jiteza de conver,en este cu at*t mai mare cu c*t h
este mai mic.
8.1.9.1. E#")#') (' %#*,3:$'#' ) &'%"('$ +#'($3%"#-3"#'3%"#
/entru determinarea erorii de trunc>iere se dezvolt $n serie 8a9lor funcia
y x ( )

$n (urul punctului
x x
m


( )
( ) ( ) ( )
( )
( ) ( ) ( ) y x y x y x x-x
y x
x-x x-x y
m m m
!!
m
m m
!!!
+ + +
1
! -
!
1
3

(8.5!)
unde
x x
m

0onsider*nd
x x x h
m m
+
+1
rezult:

( ) ( ) ( ) ( ) ( ) y x y x h y x
h
y x
h
y
m m m
!!
m
!!!
1
1
! -
1
! 3
+ + +

(8.5-)
unde
x x
m m

1 1
/entru
x x x h
m m

1
rezult:
183
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale

( ) ( ) ( ) ( ) ( ) y x y x h y x
h
y x
h
y
m- m m
!!
m
!!!
1
1
! -
!
! 3
+

(8.5.)
unde
x x
m- m 1 !

Scz*nd din e&presiile (8.35) i (8.38) rezult:

( ) ( ) ( ) ( ) y x y x h y x
h
y
m m- m
!!!
1 1
1
-
!
-
+ +

(8.5<)
tiind c

( ) ( )
( )
y y
y
!!! !!!
!!!

1 !
!
+

unde
x x
m- m 1 1

0ompar*nd (8.36) cu (8.<5) rezult c eroarea metodei predictor% corector este :

[ ]
( ) e
h
y
(
,
!!!

-
-

unde
x x
m- m 1 1


(8.53)
Bormula (8.31) este analoa, formulei de la inte,rarea prin metoda trapezului unde am
determinat eroarea

( )
e
(
c
( )

h
y h
!!!
-
1!
unde
x h x
m- m 1 1


(8.55)
0alculm valoarea adevrat y
m
$n punctul
m

( )
( ) y y
h
y
m m
!!!
+

!
-

(8.58)
iar dup (8.51) avem

( )
( )
y y
h
y h
m m
? !!!

!
1!

(8.56)
Scz*nd relaiile (8.5!) i (8.5-) rezult:

( ) ( )
( )
( )
[ ]
y y
h
y h y
m
?
m
!!! !!!
+

-
1!
.
0onsider*nd y
!!!
apro&imativ constant pentru
x x x
m- m 1 1

se o#ine:
<
1!
-
h
y
!!!

( ) ( )
y y
m
?
m

sau
( )
e
(
c

( ) ( )
[ ]

h
y y y
!!!
m m
?
-

1!
1
<

(8.8)
0onver,ena metodei este mai rapid cu c*t h este mai mic. @umrul de iteraii nu
tre#uie s fie mare. "&ist dovezi care arat c cel mai eficient numr de iteraii pentru
metoda predictor%corector este doi.
185
Metode numerice n electronic
8.1.9.2. A!"#$%& 8.9. M'%"() +#'($3%"#-3"#'3%"#
1.ariabile
x
*
/ab'ci'a ,unctului ,rin care trece 'olu%ia, real0
y
*
/ ordonata ,unctului ,rin care trece 'olu%ia, real0
h / ,a'ul ntre ab'ci'ele ,unctelor de calcul ale 'olu%iei, real0
y / ordonatele 'olu%iei numerice, $ector0
x / ab'ci'ele 'olu%iei numerice, $ector0
n / numrul de ,uncte n care 'e calculea# 'olu%ia, ntreg0
er / eroarea de calcul, real0
1
x2*3) x
o
0 y2*3) y
*
0
,entru i ) *,+,4,555,n
1
( )
[ ] [ ] ( ) y y *h*f x i- ,y i-
i i-

1
! 1 1 +
? ) +0
re,et
calculea#


( )
[ ] [ ] ( )
( )
[ ] [ ]
y y 5 * f x i- ,y i- f x ,y
i
?
i- i i
?-
+ +
1
1
< 1 1
? ) ?+0
,Jn cJnd

( ) ( )
y y e
i
?
i
?-
<
1
7
6olu%iile numerice ale ecua%iei 'unt x2 i 3, y
( )
[ ]
K
i
, i)*,+,4,555n0
7
7
8.1.9.-. I&+'&',%)#') )!"#$%&**$ 8.9
8* 9unc%ia care im,lemenetea# re#ol$area ecua%iilor diferen%iale ,rin
metoda ,redictor-corector +5
*8
$oid B":=KIO"( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
double e,',
int nr,,
double 'ol23)
1
int i0
188
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
double ,rec0
8* 'tart *8
'ol2*3)y*0
'ol2+3)'ol2*3*5@*,a'*(f(x*,'ol2*3)f(x*,a','ol2*3
,a'*f(x*,a','ol2*3)))0
for(i)40i-)nr,0i)
1
'ol2i3)'ol2i-434*,a'*f(x*(i-+)*,a','ol2i-+3)0
do
1
,rec)'ol2i30
'ol2i3)'ol2i-+3*5@*,a'*( f(x*(i-+)*,a','ol2i-+3f(x*i*,a',,rec))0
7
Chile( fab'('ol2i3-,rec)Le,' )0
7
7
8.1.;. METODA MILNE
7ceast metod folosete o perec>e de formule de precizare i corectare, utilizeaz o
inte,rare dup metoda lui Simpson.
( )
( )
y y
h
y y y
y y
h
y y y
? ?- ?-
!
?-
!
?
!
? ?- ?-
!
?
!
?
!
1 - ! 1
1 1 1 1
.
-
! !
-
.
+

_
,

+
+

_
,

+ +

(8.81)
/entru aplicarea metodei din start tre#uie cunoscute patru valori
y y y y
? ? ? ? ,
, ,
1 ! - care se o#in cu o metod direct. 0orecia soluiei se face
p*n c*nd diferena dintre dou valori consecutive ale soluiei $ntr%un punct devine mai
mic dec*t o eroare impus.
8.1.;.1. A!"#$%&* 8.<. M'%"() *$ M$,'
1.ariabile
x
*
/ab'ci'a ,unctului ini%ial al 'olu%iei, real0
y
*
/ ordonata ,unctului ini%ial al 'olu%iei, real0
h / ,a'ul dintre ,unctele 'olu%iei, real0
n / numrul de ,uncte n care 'e calculea# 'olu%ia, ntreg0
1x2*3) x
o
0 y2*3) y
*
0
,entru ? ) +, 5 55 E
1 calculea# ( ) ( )
[ ]
y y
h
f x ,y f x h,y hy
? ?- m m m m m
!
+

_
,
+ + +
1
!
0
i ) E0
re,et
186
Metode numerice n electronic
calculea#
( )
( ) y y
h
y y y
i i- i-
!
i-
!
i
!
1

- ! 1
.
-
! ! +

_
,
+ 0
j ) +0
re,et
calculea#
( ) ( )
y y
h
y y y
i
j
i- i-
!
i
!
i
j-
!
1 1 1 1
1
-
+

_
,
+ +

_
,

_
,
0
j ) j+0
,Jn cJnd
( ) ( )
y y e
i
j
i
j-
1 1
1
< >
0

i ) i +0
,Jn cJnd i ) n0
7
$alorile unice ale 'olu%iei 'unt y
i
, i ) +, 4, 5 55, n
7
7
8.1.;.2. I&+'&',%)#') )!"#$%&**$ 8.<
8* 9unc%ia care im,lementea# metoda de re#ol$are a ecua%iilor
diferen%iale ordinare ,rin metoda Milne
*8
$oid MA<M:( double(*f)(double x, double y),
double x*,
double y*,
double ,a',
double e,',
int nr,,
double 'ol23)
1
int i0
double ,rec0
8* 'tart *8
'ol2*3)y*0
for(i)+0i-)E0i)
'ol2i3)'ol2i-+3*5@*,a'*( f(x*(i-+)*,a','ol2i-+3)
f(x*i*,a','ol2i-+3,a'*f(x*(i-+)*,a','ol2i-+3)))0
for(i)F0i-)nr,0i)
1
'ol2i3)'ol2i-F3F*,a'*( 4*f(x*(i-E)*,a','ol2i-E3)
-f(x*(i-4)*,a','ol2i-43)4*f(x*(i-+)*,a','ol2i-+3))8E0
do
1
,rec)'ol2i30
'ol2i3)'ol2i-43,a'*( f(x*(i-E)*,a','ol2i-E3)
F*f(x*(i-4)*,a','ol2i-43)f(x*i*,a','ol2i3))8E0
16
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
7
Chile( fab'('ol2i3-,rec)Le,' )0
7
7
8.!. L@8"A:7:"7 @='":L0M 7 SLS8"'"E): +"
"0=7NLL +LB":"@NL7E" +" ):+L@=E @8OL PL 7
"0=7NLLE): +LB":"@NL7E" +" ):+L@=E +)L
"cuaiile de ordin superior cu condiii iniiale se refer la un sistem de ecuaii
difereniale de ordinul $nt*i.
0onsiderm ecuaia diferenial de ordinul n de forma:
( )
( ) 9 x , y , y , y , , y
! !! n

(8.8!)
cu condiiile iniiale:

x x

, y y y y y y
n n



1 1
, ' ' ,.....,
( ) ( )

.
(8.8-)
7ceast ecuaie diferenial poate fi scris su# forma unui sistem de ecuaii
difereniale de ordinul $nt*i cu n funcii necunoscute.
/e l*n, funcia cutat
y
(soluia ecuaiei) mai introducem (n-+) necunoscute
au&iliare:
y y y
n- 1 ! 1
, , .... ,

(8.8.)
le,ate de
y
prin ecuaiile:

d
d
d
d
d
d
d
d
y
x
y ,
y
x
y ,
y
x
y , ,
y
x
y
n-
n-

1
1
!
!
-
!
1
.
(8.8<)
Se o#serv c
( )
y
y
x
y
?
?
?
?

d
d
(8.83)
"cuaia (8.8!) o putem scrie su# forma

( ) ( )
( )
( )
y f x , y , y , y , , y
y
dx
f x , y , y , y , , y
n ! !! n-
n-
n-

1
1
1 ! 1
sau
d
(8.85)
"cuaiile (8.85 ) i (8.8< ) formeaz un sistem de n ecuaii difereniale de ordinul $nt*i
cu n funcii necunoscute. +intre ecuaiile sistemului numai ultima are o form mai
,eneral, celelalte fiind mai speciale.
0ondiiile iniiale ale sistemului vor fi:
pentru
x x

, rezult
( ) ( )
( )
y y y , y y y , , y y y
! !! !! n- n-
n-

1
1 !
1

1
1


(8.88)
161
Metode numerice n electronic
/entru fiecare ecuaie se poate aplica una dintre metodele studiate pentru ecuaiile
difereniale de ordinul $nt*i. +ac aplicm metoda :un,e % ;utta de ordinul patru se
pleac de la ultima ecuaie (8.86) spre prima din (8.88).
/entru i ) *,+,4,5 55, , rezult:

( )
( )
y y ? ? ? ?
y y ? ? ? ?
y y ?
n
i
n
i n n n n
n
i
n
i n n n n
i i


+
+ + + +
+ + + +

+
1
1
1 1
1
!
1
-
1
.
1
!
1
! 1
!
!
!
-
!
.
!
1
1
1 1
1
3
! !
1
3
! !
1
3
( ) ( ) ( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) ( ) ( )
( ) ( )
( )
( )
( ) ( ) ( ) ( )
( ) ( )
1
!
1
-
1
.
1
1
1 ! - .
! !
1
3
! !
+ + +
+ + + +

'

+
? ? ?
y y ? ? ? ?
i i
(8.86)
unde


( )
? hf x y y y y
? hf x
h
y
?
y
?
y
?
? hf x
h
y
?
y
?
y
?
n
i i
i i
m
i
n
i i
i i
n
i
n
n
i i
i
n
i
n
1
1
1 !
!
1 1
1
1
1
1
1
-
1 !
1
!
1
!
1
! ! ! !
! ! ! !
( ) ( ) ( ) ( )
( ) ( ) ( )
( )
( )
( )
( ) ( )
( )
( )
( )
, , , ,...,
, , ,...,
, , ,...,

+ + + +

_
,

+ + + +
( )

_
,

+ + + + +

'


? hf x h y ? y ? y ? y ?
n
i i
i i
m
i n
.
1
- 1 -
1
! -
!
-
1 ( ) ( ) ( ) ( ) ( ) ( ) ( )
, , , ,...,

(8.6)
( ) ( )
( )
( ) ( )
( )
( ) ( ) ( )
( )
? hy
? h y
?
? h y
?
? h y ?
n
n
i
n-
n-
i
n-
n-
n-
i
n-
n-
n-
i n-
1
!
1
!
!
1
1
1
-
!
1
!
1
.
!
1 -
1
!
!
( ) ( )

_
,

_
,

'


(8.61)
16!
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
7nalo, se calculeaz i celelalte valori ale lui ? i dup $nlocuire $n y
i +1
se o#ine
formula de recuren pentru calculul soluiilor numerice ale ecuaiei difereniale.
0azul ,eneral de tratare a pro#lemei este foarte la#orios, dar pentru cazul unei
ecuaii difereniale de ordinul doi sau trei, calculele se simplific mult. /entru o ecuaie
de ordinul doi
( )
y f x , y , y
!! !

,
(8.6!)
rezolvat cu metoda :un,e % ;utta de ordinul patru, rezult sistemul de ecuaii de
ordinul trei:
d9
d&
d9
d&
1

'

f x y y
y
( , , )
1
1

(8.6-)
corespunztor lui (8.8.) i (8.8<).
:elaiile de calcul (8.6) i (8.61) devin:
( ) ( )
( )
( )
y y ? ? ? ?
y y ? ? ? ?
i i
i i
1
1
1 1
1
!
1
-
1
.
1
1 1 ! - .
1
3
! !
1
3
! !
+ + + +
+ + + +

(8.6.)
unde

( )
? hf x y y
? h f x
h
, y
?
, y
?

? h f x
h
, y
?
, y
?

? hf x h y ? y ?
i i
i
!
i i
i
!
i i
i
i i
i
1 1
!
1
1
1
1
-
!
1
!
1
. - 1 -
1
! ! !
! ! !
'
'
( , , )
( , , )

_
,

_
,

+ + +

'


(8.6<)
16-
Metode numerice n electronic
? hy
? h y
?
? h y
?
? h y ?
i
i
i
i
1 1
! 1
1
- 1
!
. 1 -
!
!

_
,

_
,

'

( )
(8.63)
nlocuind (8.6< ) $n (8.6. ) rezult formulele de calcul:
( )
y y ? ? ?
i i 1 1 ! -
1
3
+ + + i ) *,+,4,5 55, n
unde

( ) ( )
( )
( )
( )
( ) ( )
( ) ( )
( ) ( )
y y ? ? ? ?
? h f x , y , y
? h f x
h
, y
h
y , y
?
? h f x
h
, y
h
y
h
? , y
?
? h f x h , y h y
h
? , y ?
i i
i i
i
i i
i i
i i
i i
i i
i i
1
1
1 1 ! - .
1 1
! 1 1
1
- 1 1 1
!
. 1 ! 1 -
1
3
!
! ! !
! ! . !
!
+ + + +

+ +

_
,

+ + +

_
,

+ + +

_
,

'

(8.65)
8.-. REZOLVAREA NUMERIC A ECUAIILOR
DIFERENIALE CU DERIVATE 2ARIALE
Jom considera ecuaiile difereniale cu derivate pariale de ordinul doi de dou
varia#ile ce au forma ,eneral:

( ) ( ) ( ) ( ) ( ) ( ) a x , y
u
x
b x , y
u
x y
c x , y
u
y
d x , y
u
x
e x , y
u
y
f x , y u)

!
!
! !
!
! + + + + +
(8.68)
unde
a x y b x y c x y d x y e x y f x y ( , ), ( , ), ( , ), ( , ), ( , ), ( , )

sunt funcii date $ntr%un domeniu plan =. Buncia necunoscut
u x y ( , )
i derivatele
pariale apar $n ecuaie la puterea $nt*i. "cuaia are proprietatea c dac
u x y
1
( , )
i
u x y
!
( , )
sunt dou soluii ale ecuaiei, atunci i com#inaia liniar
16.
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale

c u c u
1 1 ! !
+

(8.66)
este tot o soluie a ecuaiei unde c
+
i c
4
sunt constante. 7ceste tipuri de ecuaii se
clasific dup semnul valorii determinantului ataat formulei (8.68).

a (x ,y ) b (x ,y )
b (x ,y ) c (x ,y )

(8.1)
1. +ac > ecuaia se numete de tip eliptic
!. +ac < ecuaia se numete de tip >iper#olic
-. +ac ecuaia se numete de tip para#olic
8.-.1. METODA DIFERENELOR FINITE
7ceast metod const $n acoperirea domeniului + i o frontier a lui 0, cu o reea
de drepte paralele cu a&ele de coordonate. /aii reelei sunt constani, de valoare h
pentru a&a Ox i de valoare ? pentru a&a
Oy.
@odurile reelei se $mpart i ele $n
dou cate,orii: una $n care punctele au toate vecinele $n interiorul lui + i a doua pentru
care cel puin unul dintre vecinele lui este e&terior domeniului + i aceasta formeaz
frontiera 0
1
a reelei. Se apro&imeaz derivatele pariale de ordinul unu i doi din
ecuaia (8.68) cu diferenele finite corespunztoare:
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( )
( ) ( )

!
! !
!
! !
!
!
!
u
x
u xy , y u xy u x-h , y
h

u
y
u x,yh u x,y u x, y-h
?

u
x y
u xh ,yh u x,yh u xh ,y u x, y
h ?

u
x
u xh ,y u x, y
h

u
y
u x,y? u x, y
?



(8.11)
"cuaia (8.68) scris cu a(utorul diferenelor finite devine

( ) ( ) ( )
( ) ( ) ( ) ( ) ( )
( ) ( )
u x , y
? a h c h?bh? d?h e? h f
2? au xh , y ? au x-h , y
h cu x , y? ? cu x , y-? ?hbu xh , y? ?hbu x , y? ?h bu xh , y
? hdu xh , y ?h eu x , yh 3
+ +
+ + + +
+ +
1
! ! !
! ! !
! ! ! ! ! !
! !
! !
! !
(8.1!)
/entru cazul e,alitii valorilor pailor h ) ? $n ecuaia o#inut (8.1! ) rezult:
16<
Metode numerice n electronic

( ) ( ) ( ) ( )
( ) ( ) ( ) ( )
( ) ( )
u x , y
a c bh dh eh f
2a u xh , y au x-h , y c u x , yh
c u x , y-h b u xh , yh b u x , yh b xh , y
h du xh , y h e u x , yh 3
+ + +
+ + +
+ +
1
! ! !
! ! !
!


(8.1-)
+ac se consider reeaua prezentat $n fi,ura 8.1 i se ine seama de condiiile la
limit, atunci pentru nodul (1,1) se o#ine ecuaia:

( ) ( ) ( )
[ ]
u
a c b hd he h f
a u c c b u b u b u d u eu
( , )
( , ) , , , ( , ) ( , ) ( , )
11
1
! ! !
!1 1 ! ! ! ! ! 1 ! ! !1 !1 11 !
1 1 1 1 1
!
1
1 1 1 1 1 1 1

+ + + + +

+ + + + +
(8.1.)
unde am considerat h)?)+ pentru reeaua din fi,ura 8.<. /roced*nd la $nlocuiri $n
fiecare punct al domeniului + se o#ine un sistem din care calculm valorile funciei
soluie a ecuaiei (8.68). Buncie de semnul lui se rezolv tipuri de ecuaii eliptice,
>iper#olice sau para#olice.
/entru
a x y b x y c x y d x y e x y f x y ( , ) , ( , ) , ( , ) , ( , ) , ( , ) , ( , ) 1 1

rezult o particularizare a ecuaiei (8.68) o#in*ndu%se ecuaia lui Eaplace.
Bi, 8.< :eeaua domeniului funciei soluie i condiiile la limit
8.-.1.1. E3*)1$) *$ L)+)3'

!
!
!
!

u
x
u
y
+

(8.1<)
7plic*nd relaiile 8.11, ecuaia lui Eaplace se scrie funcie de diferenele finite astfel:
( ) ( ) ( ) ( ) ( )
[ ]
u x , y u xh , y u x-h , y u x , yh u x , y-h + + +
1
.

(8.13)
0onsiderm reeaua din fi,.8.3 i notm cu u
++
, u
+4
, u
+E
, u
4+
, u
44
, u
4E
, u
E+
, u
E4
, u
EE

163
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale

0 0,1 0,2
0,3 0,4 x
0,1
0,2
0,3
0,4
y
u (x,0)=1
u (x, 0,4)=0
u (0, y)=0 u (0,4, y)=0
u
11 u
12 u
13
u
21
u
22
u
23
u
31
u
32
u
33

Bi,.8.3 :eeaua domeniului funciei i condiiile la limit pentru ecuaia lui Eaplace.
valorile funciei $n punctele 1, !, -, ., <, 3, 5, 8, 6. Se o#ine sistemul (8.15) care este
un sistem iterativ de tip Qaco#i (0apitolul -).
/rin rezolvarea recursiv a sistemului, rezult valorile funciei soluie a ecuaiei
difereniale cu derivate pariale Eaplace $n punctele reelei. :eeaua se poate realiza cu
un pas mai mic ceea ce duce la un sistem cu multe ecuaii i necunoscute, determin*nd
valorile funciei soluie $n punctele mai fine ale reelei.
165
Metode numerice n electronic

( )
( )
( )
( )
( )
u u
u u u u
u u u
u u u u
u u u u u
u u u
11 1!
1! 11 1- !!
1- 1! !-
!1 11 !! -1
!! 1! !1 !- -!
!- 1- !!
1
.
1
1
.
1
1
.
1
1
.

1
.

1
.

+ + + + + + + + +
+ + + + + + + + +
+ + + + + + + + +
+ + + + + + + + +
+ + + + + + + +
+ + + + + + +
( )
( )
( )
( )
( )

1
.

1
.

1
.

1
.

--
-1 !1 -!
-! !! -1 --
-! !! -1 --
-- !- -!
+ +
+ + + + + + + + +
+ + + + + + + + +
+ + + + + + + + +
+ + + + + + + + +

'

u
u u u
u u u u
u u u u
u u u

(8.15)
8.-.1.1.1. A!"#$%&* 8.8. E3*)1$) L)+)3'
1 .ariabile
l'x/limita 'tJng a domeniului ,e Ox, real0
ldx/limita drea,t a domeniului ,e axa Ox, real0
l'y/limita 'tJng a domeniului ,e axa Oy, real0
ldy/limita drea,t a domeniului ,e axa Oy, real0
nrx/numrul de 'ubinter$ale ,e Ox, ntreg0
nry/numrul de 'ubinter$ale ,e Oy, ntreg0
h/,a'ul ,e Ox, real0
?/,a'ul ,e Oy, real0
1calculea# h)(ldx-l'x)8nrx0
?)h0
,entru i)* ,Jn la nrx
1
u l'x ih ( , ) + 1
0
u l'x ih ldy ( , ) +
7
,entru j)+ ,Jn la nrt
u l'y j? ( , ) +
G
168
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
u ldx l'y j? ( , ) +
G
7
,entru i)+ ,Jn la nrx
,entru j)+ ,Jn la nrt
1
calculea#
u x y u l'x i h l'y jh u l'x i h l'y jh
u x ih l'y i h u l'x ih l'y j h
i j
( , ) ( ( ( ) , ) ( ( ) , )
( , ( ) ) ( , ( ) )
+ + + + + +
+ + + + + + +
1
.
1 1
1 1
7
con'truie&te 'i'temul iterati$ &i -l re#ol$ cu metoda Aacobi 'au
Nau''-6eidel
ti,re&te
u
ij ,entru i)* ,Jn la nrx
j)* ,Jn la nrt0
7
8.-.1.1.2. I&+'&',%)#') )!"#$%&**$ 8.8
=*
9unc%ia care im,lementea# metoda de re#ol$are a ecua%iilor
diferen%iale de ti, eli,tic
*8
$oid :<AB(AI( int ord,
double =omeniu232MrMax3
)
1
int i,j,nr,,lung0
double mat2MrMax32MrMax30
lung)ord-40
for(nr,)+0nr,-)ord*ord-F*ordF0nr,)
1
for(i)+0i-)ord-40i)
for(j)+0j-)ord-40j)
1
if ( (nr,8lung))(i-+)) OO (nr,Plung))j) )
1
mat2i32j3)-+0
mat2i-+32j3)mat2i+32j3)mat2i32j+3)mat2i32j-
+3)*54@0
7
el'e mat2i32j3)*0
7
7
i)4*0
7
166
Metode numerice n electronic
8.-.1.2. E3*)1$$ ($5'#',1$)' 3* ('#$>)%' +)#1$)' (' %$+ +)#)/"$3
Jom considera ecuaia cldurii $ntr%o #ar de lun,ime l ce reprezint o ecuaie cu
derivate pariale de tip para#olic:
1

!
!
!
a
u
t
u
x





(8.18)
u(x,t) reprezint temperatura funcie de coordonata punctului i timp. /rin sc>im#area
de varia#il t)
a
!
t
'
ecuaia (8.18) se pote scrie:




u
t
u
x

!
!

(8.16)
/entru rezolvarea ecuaiei se aplic metoda diferenelor finite pe reeaua prezentat $n
fi,ura (8.5) cu paii h
l
n
pe a&a Ox i ? h
!
pe a&a )t. ?1F3 reprezint
constanta pentru care eroarea este minim dac rezolvarea se face cu metoda
diferenelor finite.
t
x
h
?

Bi,.8.5.:eeaua domeniului pe care se inte,reaz ecuaia diferenial cu derivate


pariale de tip para#olic.
/resupunem date condiia iniial
u(x, ) f(x )
i condiiile la limit:
u( ,t) '(t), u( ,t) #(t) 1 5
"cuaia (8.16), scris cu diferene finite, devine:
u u
h
u u u
h
i j i j i j i j i j , , , , ,
.
.
+ +

+
1
!
1 1
!
!


(8.11)
+in ecuaia (8.11) se deduce formula de calcul a valorilor funciei $n punctele reelei:
u u u u
ij i j i j i j + +
+ +
1 1 1
1
3
. ( )
, , ,

(8.111)
/entru calculul valorilor funciei se ine seama de condiiile iniiale i de cele la limit.
!
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
8.-.1.2.1. A!"#$%&* 8.?. E3*)1$$ 3* ('#$>)%' +)#1$)' (' %$+ +)#)/"$3
1.ariabile
l'x/limita 'tJng a domeniului ,e Ox, real0
ldx/limita drea,t a domeniului ,e axa Ox, real0
l't/limita 'tJng a domeniului ,e axa Ot, real0
ldt/limita drea,t a domeniului ,e axa Ot, real0
nrx/numrul de 'ubinter$ale ,e Ox, ntreg0
nrt/numrul de 'ubinter$ale ,e Ot, ntreg0
h/,a'ul ,e Ox, real0
?/,a'ul ,e Ot, real0
1,entru i)* ,Jn la nrx
calculea#
u f l'x i h
i
+ ( R )
0
calculea# ?)(+8H)*h0
,entru j)+ ,Jn la nrt
1
calculea#
u ' l't j ?
j
+ ( R )
0
calculea#
u # l't j ?
lj
+ ( R )
0
7
,entru i)+ ,Jn la nrx
,entru j)+ ,Jn la nrt
calculea# u u u u
ij i j i j i j
+ +
+
1
3
.
1 1 1 1 1
( )
, , ,
0
ti,re&te
u
ij ,entru i)* ,Jn la nrx
j)* ,Jn la nrt0
7
8.-.1.2.2. I&+'&',%)#') )!"#$%&**$ 8.?
8* 9unc%ia care im,lementea# metoda de re#ol$are a ecua%iilor
diferen%iale
cu deri$ate ,ar%iale de ti, ,arabolic5
*8
$oid Barabolica( double (*9)(double),
double (*6)(double),
double (*Q)(double),
double lim',
double limd,
int nrx,
int nry,
double 'ol232MMax3
)
1
int i,j0
!1
Metode numerice n electronic
double h,?0
h)(limd-lim')8nrx0
?)h*h8H0
for(i)*0i-)nrx0i)'ol2i32*3)f(lim'i*h)0 8*,e ori#ontala de jo' *8
for(j)+0j-)nry0j)
1
'ol2*32j3)'(j*?)0 8* $erticala 'tanga *8
'ol2nrx32j3)#(j*?)0 8*$erticala drea,ta *8
7
for(j)+0j-)nry0j)
for(i)+0i-)nrx-+0i)
'ol2i32j3)('ol2i-+32j-+3F*'ol2i32j-+3'ol2i+32j-+3)8H0
7
8.-.1.-. E3*)1$$' 3* ('#$>)%' +)#1$)' (' %$+ :$+'#/"$3
) ecuaie de acest tip este ecuaia oscilaiilor li#ere ale unei #are omo,ene finite:

!
!
!
!
!

u
t
a
u
x

(8.11!)
care are condiiile la iniiale:
u x f x ( , ) ( )
u (x, ) g(x), x l
t
!
i
condiiile la limit: u t ' t u t # t t ( , ) ( ), ( , ) ( ), 1 5 Se poate lua acelai
domeniu de inte,rare dat $n fi,ura 8.5. "cuaia cu derivate pariale (8.11!) poate fi
transcris cu a(utorul diferenelor finite, aplicate pe o reea dreptun,>iular de pas hR
l8n pe a&a Ox i de pas ? $ntre, oarecare astfel:
u u u
?
a
u u u
h
i,j i,j i,j i ,j i,j i ,j + +
+

+
1 1
!
!
1 1
!
! !

(8.11-)
+ac se ale,e h ) ?a, ecuaia (8.11-) se simplific la forma:
u u u u
i j i j i j i j , , , , + +
+
1 1 1 1 .
(8.11.)
0u a(utorul formulei de calcul (8.11.) se o#in valorile funciei u(x,t) $n punctele
domeniului dat astfel ca funcia s verifice ecuaia (8.11!).
8.-.1.-.1. A!"#$%&* 8.1@. E3*)1$$ 3* ('#$>)%' +)#1$)' (' %$+ :$+'#/"$3
1.ariabile
l'x/limita 'tJng a domeniului ,e Ox, real0
ldx/limita drea,t a domeniului ,e axa Ox, real0
l't/limita 'tJng a domeniului ,e axa Ot, real0
!!
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
ldt/limita drea,t a domeniului ,e axa Ot, real0
nrx/numrul de 'ubinter$ale ,e Ox, ntreg0
nrt/numrul de 'ubinter$ale ,e Ot, ntreg0
h/,a'ul ,e Ox, real0
?/,a'ul ,e Ot, real0
1
calculea# h)
l
nrx
0
calculea# ?
h
a
0
,entru i)* ,Jn la nrx
1
calculea# u f l'x i h
i
+ ( R ) 0
calculea#
u ? g l'x i h u
i i ,
R ( R )

+ +
1
7
,entru j)+ ,Jn la nrt
1
calculea#
u ' l't j ?
j
+ ( R )
0
calculea#
u # l't j ?
lj
+ ( R )
0
7
,entru i)+ ,Jn la nrx
,entru j)+ ,Jn la nrt

calculea#
u u u u
ij i j i j i j
+ +
+ +
( )
, , , 1 1 ! 1 1 0
,entru i)* ,Jn la nrx

,entru j)* ,Jn la nrt ti,re&te
u
ij
7
8.-.1.-.2. I&+'&',%)#') )!"#$%&**$ 8.1@
8*
9unc%ia care im,lementea# metoda de re#ol$are a ecua%iilor
diferen%iale cu deri$ate ,ar%iale de ti, hi,erbolic
*8
$oid >i,erbolica( double (*9)(double),
double (*6)(double),
double (*Q)(double),
double lim',
double limd,
int nrx,
int nry,
double a,
double 'ol232MMax3
)
!-
Metode numerice n electronic
1
int i,j,?+0
double h,?0
h)(limd-lim')8nrx0
?)?+0
for(i)*0i-)nrx0i)'ol2i32*3)f(lim'i*h)0 8*,e ori#ontala de jo' *8
for(j)+0j-)nry0j)
1
'ol2*32j3)'(j*?)0 8* $erticala 'tJnga *8
'ol2nrx32j3)#(j*?)0 8*$erticala drea,ta *8
7
for(i)+0i-)nrx-+0i)
'ol2i32+3)'ol2i+32*3'ol2i-+32*3-'ol2i32*3?*g(lim'i*h)0
for(j)40j-)nry0j)
for(i)+0i-)nrx-+0i)
'ol2i32j3)('ol2i+32j-+3-'ol2i32j-43'ol2i-+32j-+3)0
7
8.8. A2LICAIE
Se consider un circuit ",< $n serie alimentat de o surs de curent alternativ
e t 1 1 cos( )
.,
f
)@*>#, prezentat $n fi,.(8.8).
Bi,.8.8. 0ircuitul ",<
0unosc*nd :)+*, E?1mD i c la t)* i)*, s se calculeze valorile curentului la
t?.1G .!G .-G ..G .<G .3G .5G .8G .6G .1'.
Se aplic circuitului electric le,ea a doua a lui ;irc>>off i se o#ine ecuaia
diferenial
!.
"e#ol$area numeric a ecua%iilor &i 'i'temelor diferen%iale
<
i
"i e
d
dt
+
:ezultatele o#inute prin metoda lui "uller modificat sunt prezentate $n ta#elul (8.1)
8a#elul 8.1
t2s4 i274
. .
.1 ..855
.! .3<6.1
.- .3-!.6
.. ...533<
.< .!.3<
.3 % .-<3.
.5 %.-138-
.8 %.<51!.
.6 %.55188
.1 %.8688

!<

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