Professional Documents
Culture Documents
Mali broj diferencijalnih jednaina, koje su od praktinog interesa, se moe reiti analitiki, tj. dobiti njeno reenje u vidu analitiki definisane funkcije y(x). Tako se problem sa poetnim ili graninim uslovima za jednainu,
F x, y( x), y ( x),K , y ( n ) ( x) = 0, ( a < x < b)
(8.1)
izvrili diskretizaciju domena [a, b] nezavisno promenljive i najee su odabrane vrednosti nezavisno promenljive ekvidistantne:
(Glava 3), koja vai u nekom konanom intervalu x (a, b) , reava priblino ili numeriki, pri emu je reenje u obliku tabele priblinih vrednosti traene funkcije: (xi, yi), i = 0,1,...,N. Slino, numeriko reenje sistema on n dif. jednaina m toga reda (Glava 5) se dobija u obliku tabele priblinih vrednosti n funkcija y1 ( x),K , y n ( x) , u takama xi , i = 1,K , N . Kae se da smo
xi = x0 + ih, h = x0 = a , x N = b
(b a ) , N
i = 1,2,..., N
(8.2)
Na Sl. 8.1 su skicirani: tano reenje jednaine (8.1) , tj. neka funkcija y = (x) i numeriko reenje, tj. niz taaka (xi, yi), i = 0,1,...,N.
(x)
y0 x0 xi
tana vrednost, (x i )
8.1 PREVO ENJE ODJ VIEG REDA U SISTEM ODJ PRVOG REDA
Jednaina n- tog reda: (8.1), n > 1 , se smenama:
y1 = y, y2 = M yn = d n1 y = y ( n 1) n 1 dx dy , dx
(8.3)
dy1 = y2 dx dy 2 = y3 dx M dy n1 = yn dx dy n = f ( x, y1 , y 2 ,K, y n ) dx
[= [= [= [=
f1 ( x, y1 , y 2 ,K, y n )] f 2 ( x, y1 , y 2 ,K, y n )]
(8.3a)
f n 1 ( x, y1 , y 2 ,K, y n )] f n ( x, y1 , y 2 ,K, y n )]
Prvih n-1 jednaina je dakle definisano samim smenama, dok se poslednja jednaina dobija, imajui u vidu da je: dy n d ( n1) = y (n) = y dx dx
y( a ) = y 0
y ( a ) = y 0 M
( y ( n1) ( a ) = y 0n1)
dobijenom sistemu jednaina (8.3) treba dodati poetni uslove za uvedene funkcije:
y1 ( a ) = y 0 M
y 2 (a ) = y0
( y n ( a ) = y 0n1)
(8.3b)
Primer:
Diferencijalna jednaina 2. reda:
2 yy y 2 + 4 y 2 = 0
se smenama:
y1 = y, y2 = y
prevodi u sistem:
dy1 dx dy2 dx
= y2
2 y2 4 y 2 y2 4 y12 = y = = 2y 2 y1
problema: y(0) = y 0 , y (0) = y 0 ,dobijeni sistem se reava sa poetnim uslovima: y1 (0) = y0 , y 2 (0) = y 0
Pretpostavimo da je poznata vrednost funkcije u taki xi, yi = y ( xi ) . Kako odrediti vrednost funkcije yi+1 u sledeoj taki? Ojlerova (Euler) metoda se zasniva na aproksimaciji prvoga izvoda kolinikom prirataja:
3
yi+1 = yi + hf (xi , yi ),
i = 0,1,...N 1
(8.5)
korak diskretizacije h (9.8) naziva se korak integracije ili integracioni korak. PRIMER 8..1 Potrebno je reiti numeriki diferencijalnu jednainu:
dy = 25 y, 0 x 1 dx y( 0) = 1 a) Dobiti numeriko reenje, delei interval definisanosti funkcije (interval integracije) na N=10 podintervala (koraka) i uporediti ga sa tanim reenjem:
y( x) = e 25 x
b) Ponoviti proraun sa N = 15 integracionih koraka i uporediti ga sa tanim reenjem. c) Ponoviti proraun i pore enje za N = 50 d) Poveavati broj integracionih koraka, dok maksimalno odstupanje priblinog od tanog reenja na intervalu integracije ne postane manje od 0.01
Reenje :
Podaci: f ( x, y ) := 25y Korak integracije: a := 0 h := ba N b := 1 Tacno resenje: h = 0.1 x := a
0
( x) := e
0
25x
a)
N := 10
y := 1
Integracija : i := 1 .. N
i 0 0 0 1 -1.5 2.25 -3.375 5.063 -7.594 11.391 -17.086 25.629 -38.443 57.665 0 1 2 3 1 2 3 0 1 0.082 6.73810 -3 5.53110 -4 4.5410 -5 3.72710 -6 3.05910 -7 2.51110 -8 2.06110 -9
x := x + i h y := y
i i 1
+ h f x
( i1 , yi1)
yt := 1
0 i
Tacne vrednosti :
y t := x
( i)
y=
4 5 6 7 8 9 10
yt =
4 5 6 7 8
:= y yt
i := 0.. N
100 100 yi yt
i
50 50 0 i 0 50 0 5 i 10
50
5 i
10
b)
N := 15 Integracija : x := x + i h
i 0
h :=
ba N i := 1.. N
h = 0.067
0 0 1 2 3 4 5 1 -0.667 0.444 -0.296 0.198 -0.132 0.088 -0.059 0.039 -0.026 0.017 -0.012 7.70710 -3 3.42510
-3
0 0 1 2 3 4 5 6 8 9 10 11 12 1 0.189 0.036 6.73810 -3 1.27310 -3 2.40410 -4 4.5410 -5 8.57510 -6 1.6210 -6 3.05910 -7 5.77810 -8 1.09110 -8 2.06110 -9
y := y
i
i1
+ h f x
( i1 , yi1)
i
Tacne vrednosti :
yt := x
( i)
y= 7
8 9 10 11 12 14
yt = 7
Greske:
:= y y t
13 -5.13810 -3 15 -2.28410 -3
i := 0 .. N
1 1
yi yt 0
i
5 i
10
15
5 i
10
Priblizno resenje osciluje oko tacnog, ali se greska po apsolutnoj vrednosti smanjuje.
max = 0.856
( )
100 yi yt i
i
100 50
5 i
10
50
5 i
10
Numericko resenje osciluje oko tacnog, pri cemu odstupanje raste. b) N := 15 h := ba N h = 0.067
0
0 1 -0.667 0.444 -0.296 0.198 -0.132 0.088 -0.059 0.039 -0.026 0.017 -0.012 7.70710 -3 3.42510 -3 0 1 2 3 4 5 6 8 9 10 11 12 1 2 3 4 5
0 1 0.189 0.036 6.73810 -3 1.27310 -3 2.40410 -4 4.5410 -5 8.57510 -6 1.6210 -6 3.05910 -7 5.77810 -8 1.09110 -8 2.06110 -9
Integracija: x := x + i h
i 0
i := 1 .. N
y := y
i
i1
+ hf x
( i1 , yi1)
yt := x
i
:= y yt
( i)
y= 7
8 9 10 11 12 14
yt = 7
i := 0 .. N
13 -5.13810 -3 15 -2.28410 -3 1
yi yt 0
i
Priblizno resenje osciluje oko tacnog, ali se greska po apsolutnoj vrednosti smanjuje.
0 5 i 10 15
max = 0.856
( )
5 i
10
c)
N := 50
Korak integracije: h :=
ba N
h = 0.02
Integracija : i := 1 .. N Greske: x := x + i h
i 0
y := y
i
i1
+ h f x
( i1 , yi1)
y t := x
i
( i)
1
:= y y t
max = 0.118
( )
i := 0 .. N
yi yt 0.5
i
10 i
15
20
0.05 i 0.1
0.15
c)
N := 50
Korak integracije:
h :=
ba N
h = 0.02
x := x + i h
i 0
y := y
i
yt := x
i
( i)
i 1
+ h f x
( i1 , yi1)
:= y yt
max = 0.118
( )
0.8
yi yt
i
0.6
0.4
0.2
10
15 i
20
25
30
0.05
i
Greska ima stalni znak i po apsolutnoj vrednosti monotono opada. Racunski proces je stabilan, ali ne dovoljno tacan
2 4 i 6 8 10
0.1
0.15
d)
Korak integracije:
h :=
ba N + h f x
h = 0.01
x := x + i h
i 0
y := y
i
i1
( i1 , yi1)
y t := x
i
( i)
:= y yt
max = 0.051
( )
Povecavati broj integracionih koraka dok se ne dobiju prihvatljivi rezultati: < 0.01
Ei +1 = O h n
( )
Po dogovoru, kaemo da je metoda p - tog reda tanosti, ako je njena lokalna greka reda h p+1:
Ei +1 = O h p+1
( )
(8.6)
Da bi izveli izraz za lokalnu greku Ojlerove metode, pretpostavimo da je vrednost yi tana. Tanu vrednost za yi+1 bi dobili integracijom diferencijalne jednaine (8.4) u granicama xi do xi+1:
yi +1
dy = f (x, y(x))dx
xi +1 yi xi
yi +1 = yi +
xi +1
f (x, y(x))dx
xi
(8.7)
Ojlerov metod se bazira na aproksimaciji podintegralne funkcije Tajlorovim polinomom nultog reda - konstantom. Naime, funkcija f(x, y), tj. prvi izvod traene funkcije y(x) se uzima konstantnim i jednakim f(xi, yi) u celom intervalu [ xi , xi +1 ] , odakle sledi formula (8.5). Tana vrednost yi+1 bi bila:
( yi +1 )t = yi +
xi
xi +1
xi < < xi +1
odnosno,
2 2 ( yi +1 )t = 14hf ( xi ,4i ) + ( x xi ) f ( ) dx = yi +1 + h f ( ) = yi+1 + h y ( ) yi + y 4 43 2 xi+1 Ojlerov metod xi
1!
Ei +1 = ( yi +1 )t yi +1 =
h2 y( ) , 2
xi < < xi +1
(8.8)
U skladu sa dogovorom (8.6), kaemo da je Ojlerova metoda prvog reda tanosti. Na Sl. 8.2 data je grafika ilustracija lokalne greke Ojlerove metode. Metode prvog reda tanosti su najmanje tane metode i radi postizanja zahtevane tanosti numerikog reenja ODJ, u nekim problemima neophodno je odabrati vrlo male integracione korake (Vidi primer 8.1).
y f(x,y(x))
( yi+1 )t
E i +1 yi+1 yi f(xi,yi) xi xi+1 xi nagib = f(xi,yi ) E i +1
y i +1 y i
xi+1
(8.9)
Poveanje globalne greke tokom raunskog procesa moe biti prouzrokovano i akumulacijom greaka zaokruivanja. Tako, sa smanjenjem integracionog koraka, radi poveanja tanosti metode moe do i do propagacije greaka zaokruivanja (veliki broj raunskih operacija) i poveanja nestabilnosti procesa. Propagacija greaka zaokruivanja se moe minimizovati ako se proraun izvodi sa velikim brojem znaajnih cifara, to je sluaj pri korienju Mathcad-a, ili pri proraunu u dvostrukoj preciznosti u nekom programskom jeziku .
Jasno je da ako lokalna greka metode raste iz koraka u korak, to e prouzrokovati poveanje globalne greke sa poveanjem x odnosno i, tj. propagaciju greke u toku raunskog procesa. U skladu sa definicijom stabilnosti raunskog procesa, takva numerika metoda je nestabilna . U problemu 8.1a) uo ava se nestabilnost Ojlerove metode pri priblinom reavanju zadate ODJ, sa korakom integracije 0.1 .
Na Sl. 8.1, globalne greke u pojedinim takama su odstupanja krive (tano reenje dif. jednaine) od taaka (priblino reenje).
10
greke izraunatog prirataja koja potie od greke yi , lokalne greke metode Ei +1 , greke zaokruivanja
Ako greku zaokruivanja zanemarimo, globalnu greku vrednosti Ojlerovom metodom, dobijamo kao:
i +1 = i + hf ( xi , yi ) + Ei +1 , i = 0,1,..., N 1
yi +1 procenjene
hf ( xi , yi ) =
pa je:
[hf ( x, y)]xi i = h f ( xi , y i ) i y y
i+1 = [1 + h
odnosno:
f ( xi , yi )] i + Ei +1 , y
i = 0,1,..., N 1
i +1 = [1 + h( xi )] i + Ei+1 ,
gde je funkcija (x) definisana kao:
i = 0,1,..., N 1
(8.10)
( x ) =
f ( x, y ) y
(8.11)
y = y ,
ije je analitiko reenje ,
y (0) = y 0 , ( = const.)
(8.12)
y( x ) = y 0 e x
jednaina (8.10) sa izrazom (8.8) za lokalnu greku metode daje :
11
i+1 = [1 + h]i +
(8.13)
Stabilnost metode
Iz (8.10) je jasno da globalna greka priblinog reenja ODJ ne raste po apsolutnoj vrednosti u toku Ojlerovog postupka (i raste), ako su zadovoljeni uslovi:
2 h( x) 0,
x [ x0 , x N ]
(8.14a)
lokalna greka (8.8), odnosno drugi izvod funkcije y(x), je konstantan ili monotono opada po apsolutnoj vrednosti:
d y ( x) dx < 0, x [ x0 , x N ] (8.14b)
Formulisali smo dakle dovoljan uslov stabilnosti Ojlerove metode. U specijalnom sluaju (8.12) navedeni uslovi su i neophodni i uslov (8.14a) glasi :
2 h 0
( h > 0)
(8.15)
pa je za pozitivne vrednosti parametra , Ojlerova metoda nestabilna, sa bilo koliko malim korakom integracije h (tada nije zadovoljen ni drugi uslov,8.14b),
za negativne vrednosti (tada je zadovoljen drugi uslov), metoda e biti stabilna, ako i samo ako integracioni korak (h > 0) zadovoljava uslov (8.15) odnosno,
h 2 (8.16)
Iz izraza (8.10), vidimo da se u slu aju nestabilnog procesa, ako su na intervalu integracije funkcije ( x ) i y ( x ) ograniene, efekat nestabilnosti na globalnu greku Ojlerove metode moe uiniti proizvoljno malim, ako se uzme dovoljno mali korak integracije.
PRIMER 8.2: U prethodnom primeru smo Ojlerovom metodom integrisali ODJ oblika (8.12) sa = -25, sa poetnim uslovom y0 = 1. Stabilnu (to ne znai i dovoljno tanu) raunsku proceduru obezbe uje izbor veliine integracionog koraka:
h 2 25 = 0.08
12
to objanjava nestabilnost prorauna sa N = 10, h = 0.1 (a). Nestabilan raunski proces u (a) ima oscilatoran karakter. To se moe objasniti na sledei nain. Za datu ODJ, Ojlerova metoda (8.5), za priblinu vrednost funkcije u taki xi+1 daje:
(1 + h) < 1 < 0
Stabilan raunski proces moe da ima oscilatoran ili monoton karakter. On je oscilatoran, ako je: 1 (1 + h ) < 0 1 2 <h
odnosno u posmatranom primeru: 0.04 < h 0.08, to smo imali za N = 15 (b). Stabilan raunski proces ima monoton karakter (vrednosti yi ne menjaju znak),za: 0 < (1 + h ) < 1 0 > 1 h > 1 1 > h > 0 0 < h < to smo imali u sluajevima (c) i (d). 1
13
k1 k2 k2 yi yi+1
k1 = f ( xi , yi ) = f i
k 2 = f ( xi + 0 .5 h, yi + 0.5hf i )
xi
(8.18)
y k1 yi k2
k2 ks y i+1
k 2 = f ( x i + h , y i + hf i ) ks = k1 + k 2 2
k1 = f (xi , y i ) = f i
xi
x i+ 1
14
yi+1 = yi +
1 (K1 + 2K 2 + 2 K3 + K 4 ), i = 0,1,..., N 1 6
K1 = hf ( xi , yi ) K 2 = hf ( xi + h 2 , yi + K1 2) K 3 = hf ( xi + h 2 , yi + K 2 2) K 4 = hf ( xi + h, yi + K 3 ) Geometrijska interpretacija je sledea. Taka (xi+1, yi+1) se dobija pomeranjem iz take (xi, yi) po pravoj, iji je nagib izraunat kao srednja vrednost 4 nagiba, pri emu su 2. i 3. nagib uzeti sa dvostrukom teinom u odnosu na 1. nagib (nagib tangente u poetnoj taki) i 4. nagib (nagib tangente u krajnjoj taki). Naime, u formulama (8.19), prepoznajemo: 1. 2. 3. 4. f (xi, yi) f (xi+h/2, yi+K1/2) f (xi+h/2, yi+K2/2) f (xi+h, yi+K3) nagib u poetnoj taki nagib u sred.taki dobijenoj iz po .take nagibom 1 nagib u sred.taki dobijenoj iz po .take nagibom 2 nagib u krajnjoj taki dobijenoj iz po .take, nagibom 3 (8.19)
PRIMER 8.3 Diferencijalna jednaina koja opisuje promenu koncentracije reaktanta u reakciji prvog reda A B koja se odigrava u idealno meanom i idealno izolovanom (adijabatski reim) arnom reaktoru glasi:
dC A 0 = k 0 e R T ( C A ) C A , C A (0 ) = C A dt H R 0 T (C A ) = T0 + (C A C A ) c p
E
gde su:
0 T0 , C A - poetna temperatura i koncentracija
k0, E - predeksponencijalni faktor i energija aktivacije u Arenijusovom izrazu R - univerzalna gasna konstanta
H R - toplota reakcije cp, - specifina toplota i gustina reakcione smee
Potrebno je za date podatke (Praktkum) odrediti koncentraciju reaktanta nakon 2500s od startovanja reaktora, a) Ojlerovom metodom s razliitim integracionim koracima b) Runge - Kuta (Runge- Kutta) metodom 4. reda sa razliitiom integracionim koracima i uporediti rezultate
15
Jedna podela metoda je na: jednokorane, koje za izraunavanje vrednosti funkcije yi+1 u narednoj taki koriste samo vrednost funkcije i izvoda u prethodnoj taki (yi, fi ) To su prethodno izloene Ojlerove metode i metoda Runge-Kuta. viekorane, koje za izraunavanje yi+1 pored yi i fi koriste i vrednosti funkcije i izvoda u nizu prethodnih taaka : yi-1, fi-1 = f(xi-1, yi-1), yi-2, fi-2 = f(xi-2, yi-2), ...
Druga podela je na: eksplicitne, kod kojih je formula za izraunavanje vrednosti funkcije u narednoj taki, yi+1 ekplicitno izraena po yi+1. Izloene Ojlerove metode i metoda Runge Kuta su eksplicitne jednokorane metode implicitne, kod kojih je formula za izraunavanje yi+1 implicitna pa se ono rauna iterativno, postupkom uzastopnih zamena. Implicitne metode su stabilnije u odnosu na eksplicitne istoga reda tanosti.
prediktor formulu, koja slui za odre ivanje prve procene za yi+1, pomo u neke eksplicitne jednokorane metode korektor formulu, koja je implicitna i ijim se iterativnim korienjem (metod uzastopnih zamena) dobija yi+1 sa unapred zadatom preciznou. izlazni kriterijum za okonanje iteracionog procesa
Tako se implicitnom metodom srednjeg nagiba, koja je, kao i odgovaraju a eksplicitna metoda, drugog reda, vrednost funkcije yi+1 rauna kao:
yi +1 = yi + y0 = y ( x0 )
h ( f ( xi , yi ) + f ( xi +1 , yi +1 )), i = 0,1,..., N 1 2
(8.20)
16
prediktor:
0 yi(+1) = yi + hf ( xi , yi )
(8.21a)
korektor:
h k f ( xi , yi ) + f ( xi +1 , yi(+1) ) 2
k yi(+1+1) = yi +
k = 0,1,... ; i = 0,1..., N 1
(8.21b)
izlazni kriterijum:
k k yi(+1+1) yi(+1) <
(8.21c)
Moe se pokazati da je dovoljan uslov stabilnosti implicitne Ojlerove metode manje restriktivan nego uslov stabilnosti Ojlerove eksplicitne metode, jer je umsto (8.14a) dovoljno da bude ispunjeno:
( x) = f ( x, y ) 0 y x [x 0 , x N ] (8.22)
PRIMER 8.4 Problem iz prethodnog zadatka reiti primenom Ojlerove implicitne metode Reenje: (Praktikum, XIII-4)
dy = f ( x, y) , dx
y ( x0 ) = y 0
(8.23)
u taki xi+1 moe da se odredi priblinom integracijom jedna ine u granicama xi-k do xi+1 gde je k 0:
xi +1
yi+1 yi k =
xi k
Pri tom emo podintegralnu funkciju aproksimirati pomo u II Njutnovog interpolacionog polinoma r-tog stepena, sa vorovima interpolacije: xi , xi-1 ,...,xi-r. Dakle, on ne prolazi kroz (nepoznatu) taku (xi+1, yi+1), da bi rezultujua formula bila ekplicitna. Tako se viekorane eksplicitne metode izvode iz jednaine:
17
y i +1 = y i k + h Pr ( )d , =
1
k
x xi , h
Pr (1) f ( xi +1 , y i +1 )
(8.24)
Pr ( = 1) f ( xi +1 , y i +1 ) , znai da gornja granica integracije xi+1( = 1) nije interpolacioni vor pa je interpolacioni polinom Pr ( ) na desnom kraju intervala integracije "slobodan" . Kae se da je rezultujua integraciona formula otvorenog tipa, za razliku od formula zatvorenog tipa, koje slue za priblino raunanje odre enih integrala ( napr. trapezna i Simpsonova formula).
Uslov
na primer, za r = 2
( + 1) 2 ( + 1) f i = f i + ( f i f i 1 ) + ( f i 2 f i 1 + f i 2 ) 2! 2!
( )
(8.25)
Ona o igledno zahteva prethodno izraunavanje prve tri vrednosti funkcije, nekom jednokoranom metodom. to se tanosti eksplicitnih viekoranih metoda tie, moe se, integracijom greaka interpolacije, izvesti:
O h r + 2 , Ei +1 = r +3 O h ,
( ) ( )
za r parno za r neparno
(8.26)
yi+1 = yi k +
xi+1
P (x )dx,
r
Pr ( xi +1 ) = f ( xi +1 , yi+1 )
xik
Rezultat je implicitna formula (korektor formula). Kao prediktor formula koristi se neka viekorana eksplicitna metoda.
prediktor:
18
0 yi(+1) = yi 3 +
4h ( 2 f i f i 1 + 2 f i 2 ), i = 3,4,..., N 1 3
(8.27a)
korektor:
h ( k yi(+1+1) = yi 1 + ( f i +k ) + 4 f i + f i 1 ), k = 0,1,2,... 1 3
(8.27b)
Za dobijanje prve tri take numerikog reenja, koristi se neka jednokorana metoda, najbolje, istog reda tanosti. To je metoda Runge-Kuta 4. reda (8.19). Ako se Milne-ova implicitna viekorana metoda uporedi sa eksplicitnom Runge-Kuta metodom, moe se, imajui u vidu efekat korektora, konstatovati: obe metode imaju lokalne greke istog reda, O(h 5) Milneova metoda je stabilnija, tj. otpornija na propagaciju greaka u toku procesa, pa u optem sluaju ima manju globalnu greku. PRIMER 8.5 Problem formulisan u Primeru 8.3 reiti Milne-ovom metodom. Reenje: (Praktikum, XIII-5) raunskog
dyi = f i ( x, y1 , y2 ,K , yn ), i = 1,2,..., n dx yi ( x0 ) = yi ,0
ili u vektorskom obliku:
dy = f ( x, y ) , dx
y ( x0 ) = y 0
(8.28)
Numeriko reavanje problema zahteva diskretizaciju domena nezavisno promenljive: x0 x xN , xk = x0 + kh , yi,k = yi(xk), i = 1,2,...,n , k = 0,1,..., N k = 0,1,..., N (8.29a) (8.29b)
Dakle, za oznaavanje razliitih funkcija koristiemo indeks i, a za oznaavanje diskretnih vrednosti x i odgovarajuih vrednosti funkcija, indeks k. Za numeriku integraciju sistema (8.28) koriste se metode numerike integracije jedne ODJ 1. reda, pri emu se primenjuju simultano na sve jednaine u sistemu. Opisaemo primenu Ojlerove metode i metode Runge-Kuta.
19
(8.30a)
y k +1 = y k + hf ( xk , y k ),
k = 0,1,.., N 1
(8.30b)
(8.31)
K i1 = hfi ( xk , y1 ( xk ),..., yn ( xk ) ),
(8.31a)
(8.32)
h K (k ) K (2k ) = hf xk + , y + 1 2 2 (k ) h K K (3k ) = hf xk + , y + 2 2 2 (k ) (k ) K 4 = hf ( xk + h, y + K 3 )
(8.32a)
20
Integracija ODJ 1. reda Za priblino reavanje ODJ prvog reda (8.4) ili uopte reavanje jedne ODJ vieg reda (za detalje videti Help System Mathcad-a), namenjen je Odesolve block:
prvi deo bloka po inje reju Given (analogija sa Solve block-om) iza koje se daje formulacija problema (diferencijalna jednaina i poetni uslov), u obliku vrlo slinom izvornom (8.4) drugi deo bloka je poziv funkcije Odesolve, koja definie funkciju y(x) kao interpolacionu funkciju za izraunatu tabelu - numeriko reenje.
Zna enja argumenata (x, xmax, nk) funkcije Odesolve su:
x - nezavisno promenljiva xmax - gornja granica intervala integracije nk - broj integracionih koraka, N (neobavezan)
Ako se nk izostavi iz pozivne liste u okviru funkcije se automatski bira integracioni korak da se zadovolji tanost sa kriterijumom definisanim sistemskim parametrom TOL. Funkcija se bazira na Runge-Kuta metodi 4. reda sa konstantnim integracionim korakom du intervala integracije. Postoji mogunost izbora (desnim klikom na Odesolve) iste metode uz promenljivi korak, du intervala integracije sa ciljem dostizanja zadovoljavajue tanosti. Pozivom funkcije y(x), ije ime je definisano u formulaciji problema, moe se dobiti vrednost funkcije, koja predstavlja reenje date ODJ, u bilo kojoj taki iz intervala [a.x max] , (a = x0) .
PRIMER 8.6 Problem formulisan u zadatku 8.3 reiti pomou Odesolve block-a. Reenje: (Praktikum, XIII-6)
Poetni problem za sistem ODJ 1. reda Od vie funkcija kojima raspolae Mathcad za numeriko reavanje sistema ODJ (8.28), odabraemo dve:
Rkadapt, koja za razliku od rkfixed menja korak du intervala integracije da bi se zadovoljio kriterijum ta nosti, definisan sistemskim parametrom TOL. y - vektor po etnih vrednosti funkcija
rkfixed, koja se bazira na Runge-Kuta metodi, sa konstantnim integracionim korakom u celom intervalu integracije [ x0 , xN ] (8.31),
21
nt - broj izraunatih vrednosti funkcija traenih yi ( x), i = 0,1,..., n 1 , koje korisnik dobija
Funkcije vraaju matricu dimenzija [(nt+1) (nt+1)] ija prva kolona sadri levu granicu x0 i nt ekvidistantnih vrednosti nezavisno promenljive, a ostale kolone odgovarajue vrednosti traenih funkcija yi ( x), i = 0,1,..., n 1 .
PRIMER 8.7 Diferencijalne jednaine koje opisuju promene koncentracija u esnika u reakcijama prvog reda:
A B C,
k0
k1
k0 = 0.1s 1 , k2 = 0.05s 1
sa vremenom, u arnom, idealno meanom reaktoru, su: dC A = k 0C A dt dC B = k0C A k1C B dt dCC = k1C B dt C A (0) = 1 kmol m3 , C B (0) = CC (0) = 0 a) Pomou funkcije rkfixed nai numeriko reenje datog sistema u vremenskom intervalu (s) [0, 60] , sa N = 20 integracionih koraka i krajnje koncentracije komponenata. b) Proveriti da li je odabrani broj koraka dovoljno veliki da obezbedi tanost krajnjih koncentracija od 4 sigurne cifre. c) Isti problem reiti pomo u funkcije Rkadapt, pri emu se trae koncentracije u 5 ekvidistantnih vremenskih momenata u datom intervalu. Uporediti reenja.
PRIMER 8.8 Problem definisan u Primeru 8.3, reiti pomou funkcija rkfixed i Rkadapt Reenje: (Prakt., XIV-3)
Funkcije rkfixed i Rkadapt mogu da se koriste za integraciju jedne ODJ 1. reda, pri emu se ona posmatra kao specijalan slu aj sistema ODJ.
sa razdvojenim graninim uslovima, koji u najoptijem sluaju (Robinov problem) glase: Ay(a) + B y (a) = c (8.33a)
22
A1y(b) + B1 y (b) = c1 Specijalan sluaj ODJ (8.32) je linerna ODJ: y + g 2(x)y + g1(x)y = g 0(x)
(8.33b)
(8.32a)
Treba rei, da u optem sluaju, tip graninog uslova na levoj granici ne mora da bude isti kao tip uslova na drugoj granici. Recimo na levoj granici moemo imati Dirihleov uslov (8.34a), a na desnoj Nojmanov (8.35b)
diferencijalna jednaina (8.32) se reava numerikom integracijom ekvivalentnog sistema ODJ prvog reda : dy1 = y2 ( y1 = y, y2 = y) dx
dy2 = g 0 ( x ) g1 ( x, y1 ) y1 g 2 ( x, y1 ) y2 dx y1 ( x0 ) = c y2 ( x0 ) = y( x0 ) = ?
(8.36)
Me utim, za otpoinjanje numerike integracije sistema nedostaje vrednost prvog izvoda traene funkcije u taki x0 = a. Probajui sa razliitim po etnim vrednostima za y(x) , dobijali bi razliite
23
vrednosti funkcije yn = y ( xn ) na kraju intervala integracije i traimo onu vrednost y( x0 ) za koju se za yn dobija zadata vrednost c1, tj. dok se ne zadovolji uslov (8.34b) na desnoj granici x = b: 1. k = 0, usvaja se polazna procena y( x0 )( k ) 2. Integrie se sistem ODJ 1. reda: dy1 = y2 dx dy2 = g 0 ( x ) g1 ( x, y1 ) y1 g 2 ( x, y1 ) y2 dx y2 ( x0 ) = y( x0 ) y1 ( x0 ) = c
(k )
4. k = k+1, usvaja se nova procena y( x0 )( k ) . Povratak na 2. Kojim algoritmom da korigujemo procenu y( x0 ) ( k ) ? Iz prethodne analize sledi da se problem moe postaviti kao problem traenja korena jedna ine:
(8.37)
odnosno nule funkcije F(y (x0)), koja nije definisana analitiki nego se njena vrednost za neku vrednost nezavisno promenljive y (x0), dobija numerikom integracijom sistema (8.36) za tu vrednost y (x0) (vidi Sl. 8.5).
y
F (k)
c1
a = x0
b = xn
Slika 8.5 - Grafika ilustracija metode probe i greke za reavanje Dirihleovog problema Tako, ako odaberemo metod sekante, korigovanu procenu poetne vrednosti prvog izvoda traene funkcije dobijamo formulom:
24
y( x0 ) ( k +1) = y ( x0 ) ( k ) F
(k )
F ( k ) [ y( x0 ) ( k ) y( x0 ) ( k 1) ] F ( k ) F ( k 1)
(8.38)
= y ( xn )
(k )
c1 ,
k = 1,2, K
Poto je na levoj granici intervala integracije poznata vrednost izvoda, ali ne i vrednost same funkcije koju traimo, problem reavamo kao problem traenja korena jednaine:
F ( y ( x0 ) ) = y( xn ) c1 = 0
metodom sekante.
(8.39)
Iz procene poetne vrednosti funkcije y(x0)(k), dobijene metodom sekante, poetnu vrednost njenog prvog izvoda dobijamo iz graninog uslova (8.33a):
y( x0 ) ( k ) =
1 [c Ay( x0 )( k ) ] B
Alternativno, ako se kao nezavisno promenljiva uzme poetna vrednost prvog izvoda y(x0)(k), iz istog graninog uslova se dobija procena poetne vrednosti funkcije y(x0)(k).
PRIMER 8.9 U tankom filmu tenosti, debljine L, koji je sa jedne strane (x = 0) u kontaktu sa turbulentnom masom fluida, a sa druge (x = 1), sa vrstim zidom, odvija se reakcija:
A B
i bezdimenzioni koncentracijski profil y(x) reaktanta A u filmu, opisan je diferencijalnom jednainom:
25
2 =
kL2 D
D - koeficijent difuzije reaktanta kroz film tenosti Izraunati koncentracijski profil reaktanta u filmu za 2 = 0.8
A B
n - tog reda, u poroznom zrnu katalizatora oblika plo ice, debljine L je:
Reenje: (Mathcad)
d2 dx
2
y(x) y(x)
2
y' ( 0)
y( 1) 1 y := Odesolve(x , 1)
26
Primena funkcije sbval Nedostajua poetna vrednost funkcije ili prvog izvoda za integraciju sistema dif. jednaina 1. reda
dy1 = y2 dx
( y1 = y,
y 2 = y )
dy2 = g 0 ( x ) g1 ( x, y1 ) y1 g 2 ( x, y1 ) y2 dx
ekvivalentnog diferencijalnoj jednaini 2. reda (8.32), pri kojoj je zadovoljen zadati granini uslov na drugoj granici, dobija se pozivanjem funkcije sbval(u, x1, x2, D, load, score) iji argumenti su:
u - vektor, iji su elementi: poetna vrednost traene finkcije i njenog izvoda. Jedna od njih je poznata (zadata), a za drugu je neophodno dati polaznu procenu x1, x2 donja i gornja granica intervala nezavisno promenljive D vektorska funkcija iji su elementi desne strane sistema sistema ODJ koji se integrie (8.36) load(a, u) vektorska funkcija, iji su elementi redom:
- u0 i zadata poetna vrednost izvoda , ako se poga a poetna vrednost funkcije, ili
pri emu u0 ili u 1 (polazne procene nedostajue poetne vrednosti) moraju prethodno biti definisani.
- zadata poetna vrednost funkcije i u1, ako se poga a poetna vrednost izvoda
PRIMER 8.11 Problem iz prethodnog primera za vrlo veliki Bajotov broj reiti,
a) Pomou Odesolve bloka, b) POmou sbva l funkcije (Reenje: Praktikum XV-1)
27
d 2 y 2 dy + 2 y n = 0, 0 x 1 dx 2 x dx x = 0: dy =0 dx (centar zrna )
x = 1: funkcija
g 2 ( x, y ) =
2 x
nije definisana na levoj granici (singularitet). Kako se reava problem singulariteta na granici, ilustruju sledei primeri.
PRIMER 8.13 U poroznom katalitikom zrnu sfernog oblika, odigrava se reakcija n-tog reda: A proizvodi.
a) Izraunati i nacrtati koncentracijski profil reaktanta za = 2, n = 0.5, Bi = 5 , b) Izraunati faktor efektivnosti procesa u zrnu, (Reenje Praktikum, XVI-1)
d 2 y 1 dy + = e y dx 2 x dx y ' (0 ) = 0 y(1) = 0
predstavlja bezdimenzioni matematiki model eksplozije dinamita u obliku tapa. Reti je sa =2.
(Reenje: Praktikum, XVI-2)
Metoda superpozicije
Za linearnu diferencijalnu jednainu vai princip superpozicije: linearna kombinacija dva partikularna reenja,
y(x ) = 1 y1 (x ) + 2 y2 (x )
(8.41)
28
je tako e partikularno reenje. Tako se reenje Robinovog problema moe dobiti na sledei nain: 1. Sa polaznom procenom y1(a ) dobijamo numeriki prvo partikularno reenje y1 u obliku dva niza: y1=( y1,i , y1,i )i = 0,n 2. Sa polaznom procenom y2(a ) dobijamo numeriki drugo partikularno reenje y2=(y2,i , y2,i)i = 0,n
3. Iz uslova da traeno reenje y = 1y1 + 2y2 zadovolji granine uslove (8.33a,b), tj. iz sistema od dve linearne jednaine:
A1 (1 y1,n + 2 y2,n ) + B1 (1 y1, n + 2 y , n ) = c1 2 A(1 y1.0 + 2 y2, 0 ) + B(1 y1, 0 + 2 y ,0 ) = c 2
dobijamo parametre 1 i 2
PRIMER 8.15 Za reakciju prvog reda u tankom filmu tenosti (Primer 8./9), koncentracijski profil reaktanta je opisan linearnom ODJ 2. reda:
d2y 2 y = 0 2 dx y (0 ) = 1 y(1) = 0 Izraunati za 2 = 0.8 , koncentracijski profil, a) metodom probe i greke b) metodom superpozicije
Reenje: (Mathcad) PRIMER 8.16 Za reakciju 1. reda u poroznoj plo ici katalizatora (Primer 8.10), matematiki model glasi:
d2y 2 y = 0, 0 x 1 dx 2 dy x = 0: =0 dx 1 dy x = 1: = y 1 Bi dx
Izraunati koncentracijski profil u zrnu za: = 2, Bi = 5 a) metodom probe i greke b) metodom superpozicije
Reenje: (Mathcad)
29
y( xi )
yi + yi 1 yi+1 yi 1 = , E = O h2 2h 2h
( ) ( )
(8.42)
2 y y h yi1 h yi +1 2 yi + yi 1 y( xi ) 2 i = i = , E = O h2 2 h h h
(greka aproksimacija je reda h2) ime se diferencijalna jednaina zamenjuje sledeim sistemom od (n -1) linearne algebarske jednaine sa, u usluaju Robinovog problema, ukupno (n +1) nepoznatih: yi, i = 0,1,..., n,
yi +1 2 yi + yi 1 y yi 1 + g 2 ( xi ) i +1 + g1 ( xi ) yi = g 0 ( xi ) , 2 h h i = 1,2,..., n 1 (8.43)
Nedostaju e 2 jednaine su granini uslovi (8.33a,b) u kojima su prvi izvodi aproksimirani konanim razlikama unapred ili u nazad (greke aproksimacija su reda h): Ay0 + B y1 y0 =c h yn yn 1 = c1 h tj. njegova matrica (8.44a)
A1 yn + B1
emu je i = k 1 )
On se reava se Tomasovim (Thomas) algoritmom koji tedi memoriju i raunsko vreme u odnosu na Gausov postupak. U specijalnom sluaju Dirihleovih graninih uslova, vrednosti funkcije u krajnjim takama, y0 i yn su zadate, pa se reavaju samo jednaine (8.43) po y1,...,yn-1.
PRIMER 8.17 Bezdimenzioni koncentracijski profil reaktanta c(z) u cevnom reaktoru, u kome se odvija reakcija prvog reda:
A B
opisan je diferencijalnom jednainom:
30
1 d 2c dc Da c = 0, Pe dz 2 dz z = 0: c z = 1:
0 z 1
dc =0 dz
x=
c( z, r1 , r2 ) = r1 =
d) Poveavati broj integracionih koraka (za po 100), dok se numerikim postupkom ne dobije stepen konverzije sa tanou od 3 sigurne cifre.
1 1 Pe + Pe2 + 4 Pe Da , 2 2
31