PERSAMAAN
DIFERENSIAL(DIFFERENTIAL EQUATION)(DIFFERENTIAL EQUATION)
metode euler
metode runge-kutta
Persamaan Diferensial
• Persamaan paling penting dalam bidang
rekayasa, paling bisa menjelaskan apa yang
terjadi dalam sistem fisik.
• Menghitung jarak terhadap waktu dengan • Menghitung jarak terhadap waktu dengan
kecepatan tertentu, 50 misalnya.
50=dt
dx
Rate equations
Persamaan Diferensial
• Solusinya, secara analitik dengan integral,
• C adalah konstanta integrasi
∫∫ = dtdx 50 Ctx += 50
• C adalah konstanta integrasi
• Artinya, solusi analitis tersebut terdiri dari
banyak ‘alternatif’
• C hanya bisa dicari jika mengetahui nilai x dan
t. Sehingga, untuk contoh di atas, jika x(0) = (x
saat t=0) = 0, maka C = 0
Klasifikasi Persamaan Diferensial
Persamaan yang mengandung turunan dari satu
atau lebih variabel tak bebas, terhadap satu atau
lebih variabel bebas.
• Dibedakan menurut:• Dibedakan menurut:
– Tipe (ordiner/biasa atau parsial)
– Orde (ditentukan oleh turunan tertinggi yang ada
– Liniarity (linier atau non-linier)
PDOPers.dif. Ordiner = pers. yg mengandung sejumlah tertentu turunan ordiner dari satu atau lebih variabel tak bebas terhadap satu variabel bebas.
tetytdy
ttyd
=++ )(5)()(2
y(t) = variabel tak bebas
t = variabel bebas
dan turunan y(t)
Pers di atas: ordiner, orde dua, linier
tetydt
tdt
=++ )(52
PDO
• Dinyatakan dalam 1 peubah dalam menurunkan
suatu fungsi
• Contoh:
kPPkPdt
dP
xyxdx
dy
=>−=
=>−=
'
sin'sin
Partial Differential Equation• Jika dinyatakan dalam lebih dari 1 peubah, disebut sebagai persamaan diferensial parsial
• Pers.dif. Parsial mengandung sejumlah tertentu turunan dari paling tidak satu variabel tak bebas terhadap lebih dari satu variabel bebas.
• Banyak ditemui dalam persamaan transfer polutan • Banyak ditemui dalam persamaan transfer polutan (adveksi, dispersi, diffusi)
0),(),(
2
2
2
2
=+t
txy
x
txy
δ
δ
δ
δ
PDO
dt
sd
yy
−=
=+
32
24'''
2
2
Ordiner, linier, orde 3
Ordiner, linier, orde 2
xeyy
dt
=−
−=
3)'(
32
2
2Ordiner, linier, orde 2
Ordiner, non linier, orde 1
Solusi persamaan diferensial
• Secara analitik, mencari solusi persamaan
diferensial adalah dengan mencari fungsi
integral nya.
• Contoh, untuk fungsi pertumbuhan secara • Contoh, untuk fungsi pertumbuhan secara
eksponensial, persamaan umum:
kPdt
dP=
Rate equations
But what you really want to know is…
the sizes of the boxes (or state variables) and how they change through time
That is, you want to know:
the state equations
There are two basic ways of finding the state equations for the state variables based on your known rate equations:
1) Analytical integration
2) Numerical integration
Suatu kultur bakteria tumbuh dengan
kecepatan yang proporsional dengan jumlah
bakteria yang ada pada setiap waktu. Diketahui
bahwa jumlah bakteri bertambah menjadi dua
kali lipat setiap 5 jam. Jika kultur tersebut kali lipat setiap 5 jam. Jika kultur tersebut
berjumlah satu unit pada saat t = 0, berapa
kira-kira jumlah bakteri setelah satu jam?
• Jumlah bakteri menjadi dua kali lipat setiap 5 jam, maka k = (ln 2)/5
• Jika P0 = 1 unit, maka setelah satu jam…
Solusi persamaan diferensial
kPdP
= ktePtP )( =kPdt
dP=
dtkP
dPt
t
P
P
∫∫ =1
0
1
0
)(ln 0
0
ttCkP
P−=
ktePtP 0)( =
)(1)1()1)(
5)2(ln
(eP =
1487.1=
The Analytical Solution of the Rate Equation is
the State Equation
Rate equation State equation(dsolve in Maple)
There are very few models in
ecology that can be solved
analytically.analytically.
Solusi Numerik
• Numerical integration
– Eulers
– Runge-Kutta
Numerical integration makes use of this relationship:
Which you’ve seen before…
tdt
dyyy ttt ∆+≈∆+
Relationship between continuous and discrete time models
*You used this relationship in Lab 1 to program the
logistic rate equation in Visual Basic:
1 where,11 =∆∆
−+=+ ttK
NrNNN t
ttt
Fundamental Approach of Numerical Integration
y = f(t), unknown
y , estimated
tdt
dyyy ttt ∆+≈∆+
yt+∆t,
, known
∆t, specified
y
t
yt, known
dt
dy
yt+∆t, estimatedunknown
1 where,1 =∆∆
−+=∆+ ttK
NrNNN t
tttt
dtdN
Nt/K with time, lambda = 1.7, time step = 1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
Nt/K
Euler’s Method: yt+ ∆t ≈ yt + dy/dt ∆t
Calculate dN/dt*1 at
Nt
Add it to Nt to
estimate Nt+ ∆t
Nt+ ∆t becomes the new Nt
Calculte dN/dt * 1 at new Nt
Use dN/dt to estimate next Nt+ ∆t
Repeat these steps to estimate the state
function over your desired time length
(here 30 years)
0
0.05
0.1
0 10 20 30 40 50
time (years)
Example of Numerical Integration
dy
dty y= −6 007 2.
Analytical solution to dy/dt
point to estimate
Y0 = 10
∆ t = 0.5
Euler’s Method: yt+ ∆t ≈ yt + dy/dt ∆t
m1 = dy/dt at yt
m = 6*10-.007*(10)2
analytical y(t+ ∆t)
dy
dty y= −6 007 2.
y
yt = 10
m1 = 6*10-.007*(10)2
∆y = m1*∆t
yest=yt + ∆y
∆ t = 0.5
∆y
estimated y(t+ ∆t)
Runge-Kutta Example
dy
dty y= −6 007 2.
point to estimate
Problem: estimate the slope to
calculate ∆y
∆y
∆ t = 0.5
∆y
Runge-Kutta Example
Unknown point to
estimate, yt+∆t
estimated yt+∆t
yt
½ ∆t ∆t t
estimated yt+∆t
estimated yt+∆t
∆ t = 0.5
Uses the derivative, dy/dt, to calculate 4 slopes (m1…m4) within ∆t:
Runge-Kutta, 4th order
)2/,2/(
),(1
tmyttfm
ytfm
∆+∆+′=
′=
),(at derivative),( ytytf =′
),(
)2/,2/(
)2/,2/(
34
23
12
tmyttm
tmyttfm
tmyttfm
∆+∆+=
∆+∆+′=
∆+∆+′=
tmmmmyy ttt ∆++++=∆+ )22(6
14321
These 4 slopes are used to calculate a weighted slope of the state
function between t and t + ∆t, which is used to estimate yt+ ∆t:
y
Step 1:
Evaluate slope at current value of state
variable.
y0 = 10
m1 = dy/dt at y0
m = 6*10-.007*(10)2y m1 = 6*10-.007*(10)2
m1 = 59.3m1=slope 1
y0
Step 2:
A) Calculate y1at t +∆t/2 using m1.
B) Evaluate slope at y1.
A) y1 = y0 + m1* ∆t /2
y1 = 24.82
B) m2 = dy/dt at y1
m2 = 6*24.8-.007*(24.8)2
m2 = 144.63 m2=slope 2
∆ t = 0.5/2
y1
Step 3:
Calculate y2 at t +∆t/2 using k2.
Evaluate slope at y2.
y2 = y0 + k2* ∆t /2
y2 = 46.2
k3 = dy/dt at y2
k3 = 6*46.2-.007*(46.2)2
k3 = slope 3
k3 = 6*46.2-.007*(46.2)
k3 = 263.0
∆ t = 0.5/2
y2
Step 4:
Calculate y3 at t +∆t using k3.
Evaluate slope at y3.
y3 = y0 + k3* ∆t
y3 =141.5
k4 = dy/dt at y3
k4 = 6*141.0-.007*(141.0)2
k4 = slope 4y3
k4 = 6*141.0-.007*(141.0)
k4 = 706.9
∆ t = 0.5
y2
m4 = slope 4
m3 = slope3
Now you have 4 calculations of the slope of the state equation between t and
t+∆t
∆ t = 0.5
m3 = slope3
m2 = slope 2
m1 = slope 1
Step 5:
Calculate weighted slope.
Use weighted slope to estimate y at t +∆t
weighted slope =
tmmmmyy ttt ∆++++=∆+ )22(6
14321
)22(6
14321 mmmm +++
∆ t = 0.5
true value
estimated valueweighted slope
Conclusions
• 4th order Runge-Kutta offers
substantial improvement over Eulers.
• Both techniques provide estimates, not
“true” values.
• The accuracy of the estimate depends
on the size of the step used in the
Runge-Kutta
Analytical
Eulers
on the size of the step used in the
algorithm.