Professional Documents
Culture Documents
Dodatak D
Dodatak D
Tražimo funkciju y(x), definisanu u oblasti [a, b], koja zadovoljava datu ODJ 1. reda i
dati početni uslov :
y ′ = f ( x, y ) , y (a) = y0 (D.1).
Numeričko rešenje dobijamo u vidu približnih vrednosti yi, i = 1,2,..., N tražene funkcije, u
nizu ekvidistantnih tačaka:
(b − a )
xi = x0 + ih, h = , i = 1, 2,..., N
N (D.1a)
x 0 = a, x N = b
odnosno u vidu tabele: (xi, yi), i = 0,1,...,N. Korak h se naziva integracioni korak. Na slici
su prikazani: tačno rešenje, tj. neka (nepoznata) funkcija ϕ(x) i numeričko rešenje, tj. niz
tačaka (xi, yi), i = 0,1,...,N.
yi
x0 xi
Ojlerova metoda
( yi +1 )t
nagib = f(xi,yi )
lokalna i glo-
balna greska
yi+1
yi
xi x i+1
dy
= −25 y, 0 ≤ x ≤ 1
dx
y (0) = 1
Tacno resenje:
Podaci: f ( x, y ) := −25y a := 0 b
a) b−a
N := 10 Korak integracije: h :=
N
0 0
0 1 0 1
1 -1.5 1 0.082
Tacne vrednosti : 2 2.25 2 6.738·10 -3
3 -3.375 3 5.531·10 -4
y t := 1
0 i
( i)
y t := φ x y=
4
5
5.063
-7.594
yt =
4
5
4.54·10 -5
3.727·10 -6
6 11.391 6 3.059·10 -7
7 -17.086 7 2.511·10 -8
8 25.629 8 2.061·10 -9
9 -38.443 9 1.692·10 -10
10 57.665 10 1.389·10 -11
i := 0 .. N
100
yi 50
yt
i
0
50
0 5 10
i
Numericko resenje osciluje oko tacnog, pri cemu greska raste u toku racunskog procesa
ε := y − yt
100
50
Racunski proces je nestabilan!
εi
0
50
0 5 10
i
b) b −a
N := 15 h := h = 0.067
N
Integracija : i := 1 .. N
x := x + i⋅ h
i 0
y := y
i i−1
+ h⋅ f x ( i−1 , yi−1)
0 0
Tacne vrednosti : y := φ x ()
0 1 0 1
ti i 1 -0.667 1 0.189
2 0.444 2 0.036
Greske: ε := y − y t 3 -0.296 3 6.738·10 -3
4 0.198 4 1.273·10 -3
5 -0.132 5 2.404·10 -4
6 0.088 6 4.54·10 -5
y= 7 -0.059 yt = 7 8.575·10 -6
8 0.039 8 1.62·10 -6
9 -0.026 9 3.059·10 -7
10 0.017 10 5.778·10 -8
11 -0.012 11 1.091·10 -8
12 7.707·10 -3 12 2.061·10 -9
13 -5.138·10 -3 13 3.893·10 -10
-3 14 7.353·10 -11
i := 0 .. N
14 3.425·10
15 -2.284·10 -3 15 1.389·10 -11
yi
yt 0
i
1
0 5 10 15
i
Priblizno resenje osciluje oko tacnog, ali se greska po apsolutnoj vrednosti smanjuje .
0.5
0
εi Racunski proces je stabilan
0.5
Greska metode je velika ( )
→
max ε = 0.856
1
5 10
i
c) b −a
N := 50 h := h = 0.02
N
Integracija :
i := 1 .. N x := x + i⋅ h
i 0
y := y
i i−1
+ h⋅ f x ( i−1 , yi−1)
Greske:
y t := φ x ( i) ε := y − y t
→
( )
max ε = 0.118
i
i := 0 .. N
yi
yt 0.5
i
0
0 10 20 30 40 50
i
Priblizno resenje ne osciluje. Greska ima stalni znak i po apsolutnoj vrednosti opada.
0.05
εi Racunski proces je stabilan, ali
0.1 ne dovoljno tacan
0.15
2 4 6 8 10
i
b−a
d)
N := 100 Korak integracije: h := h = 0.01
N
Integracija :
i := 1 .. N x := x + i⋅ h
i 0
y := y
i i−1 ( i−1 , yi−1)
+ h⋅f x
Greske:
y t := φ x ( i) ε := y − y t
→
( )
max ε = 0.051
i
yi +1 = yi +
1
( K1 + 2 K 2 + 2 K 3 + K 4 ), i = 0,1,..., N − 1
6
K1 = hf ( xi , yi )
K 2 = hf ( xi + h 2 , yi + K1 2) (D.3)
K 3 = hf ( xi + h 2 , yi + K 2 2)
K 4 = hf ( xi + h, yi + K 3 )
Dok je lokalna greška Ojlerove metode proporcionalna kvadratu koraka integracija, lokalna
greška Runge-Kuta metode je proporcionalna 5. stepenu koraka, dakle znatno je tačnija.
Rezultat znatno veće tačnosti je i znatno veća stabilnost.
Za približno rešavanje ODJ prvog reda (D.1) i uopšte rešavanje jedne ODJ višeg reda
(za detalje videti Help System Mathcad-a), namenjen je Odesolve block:
• prvi deo bloka počinje rečju Given (analogija sa Solve block-om) iza koje se daje
formulacija problema (diferencijalna jednačina i početni uslov), u obliku vrlo
sličnom izvornom (D.1)
• drugi deo bloka je poziv funkcije Odesolve, koja definiše funkciju y(x) kao
interpolacionu funkciju za izračunatu tabelu (numeričko rešenje).
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 tačnost sa kriterijumom definisanim sistemskim parametrom TOL. Funkcija
se bazira na Runge-Kuta metodi 4. reda sa konstantnim integracionim korakom duž intervala
integracije. Postoji mogućnost izbora (desnim klikom na Odesolve) iste metode uz
promenljivi korak, duž intervala integracije sa ciljem dostizanja zadovoljavajuće tačnosti.
Pozivom funkcije y(x), čije ime je definisano u formulaciji problema, može se dobiti
vrednost funkcije, koja predstavlja rešenje date ODJ, u bilo kojoj tački iz intervala
[a, max ] , (a = x0)
PRIMER D2 Diferencijalna jednačina koja opisuje promenu koncentracije reaktanta u
reakciji prvog reda A → B koja se odigrava u idealno mešanom i idealno izolovanom
šaržnom reaktoru glasi:
E
= −k 0e R T ( C A ) C A , C A (0) = C A0
dC A −
dt
∆H R
T (C A ) = T0 + (C A − C A0 )
c pρ
gde su:
T0 , C A0 - početna temperatura i koncentracija
k0, E - predeksponencijalni faktor i energija aktivacije u Arenijusovom izrazu
R - univerzalna gasna konstanta
∆H R - toplota reakcije
cp, ρ - specifična toplota i gustina reakcione smeše
Potrebno je za podatke:
C A0 = 4.5 kmol m 3 , T0 = 300 K , ∆H = −20000 kJ kmol , c p = 2.2 kJ kmolK , ρ = 850 kg m 3
k 0 = 2 × 1013 s −1 , E R = 12000 K
a) Odrediti koncentraciju reaktanta i temperaturu u reaktoru nakon 2500s od startovanja
reaktora sa korakom integracije h = 25s
b) Nacrtati grafik promene koncentracije reaktanta u reaktoru u toku vremena
c) Pokazati da je dati korak integracije dovoljan da obezbedi tačnost traženih rezultata
od 4 sigurne cifre.
Definisanje desne strane dif. jednacine:
Er
( )
∆H
−
T( c) := T0 + ⋅ c − c0 f ( t , c) := −k0⋅ e ⋅c
T ( c)
cp ⋅ ρ
a)
ODESOLVE blok:
tk
Broj integracionih koraka: n := n = 100
h
Given
f ( t , c( t ) )
d
c( t )
dt
c( 0) c0
(
c := Odesolve t , t k , n )
ck := c t k( ) ck = 0.3089 Tk := T ck ( ) Tk = 344.8
b)
c( t )
0
0 1000 2000
t
c)
y i ( x0 ) = y i , 0 (D.4a)
tj. na tzv. problem početnih vrednosti. Rezultat numeričke integracije je tabela vrednosti
traženih funkcija za niz ekvidistantnih vrednosti x (D.1a).
Sistem ODJ (D.4), sa početnim uslovima (D.4a) se približno rešava simultanom
primenom metoda numeričke integracije jedne ODJ 1. reda na sve jednačine sistema.
k ⋅c
Integracija funkcijom rkfixe d: 1 1
CA
CB
0.5
CC
0
0 10 20 30 40 50 60
t
b) Krajnje koncentracije sa 5 znacajnih cifara, dobijene
2.480010−3
⋅
C := 0.094615
sa 20 integ. koraka su:
0.90290
2.478810−3
⋅
C := 0.094617
sa 40 integ koraka su:
0.90290
2.478810−3
⋅
C := 0.094617
sa 100 integ. koraka su:
0.90290
Poredjenjem zakljucujemo da rezultati dobijeni sa 40 i 100 integ, koraka imaju 4 sigurne
cifre, ali ne i rezultat ( krajnja koncentracija supstance A) dobijen sa 20 koraka.
c)
Integracija funkcijom Rkadapt: n := 5
Parametar n ovde ima znacenje pocetnog broja integracionih koraka i definise broj vrsta
matrice rezultata
0
12 0.495 0.204
1 0 0
0.301
24 0.421 0.488
S = 36 0.276 0.697
0.091
S := Rkadapt ( c , 0 , tmax, n , D)
0.027
60 2.479× 10 0.095 0.903
−3
CA = 2.479× 10
−3
Krajnje koncentracije :
n
CB = 0.09462
n
CC = 0.9029
n