1. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 1
8. Persamaan Differensial Biasa
(PDB)
Euler, Heun, Runge Kutta 1-4
1
Pendahuluan
Persamaan Differensial :
gabungan dari fungsi yang tidak diketahui dengan turunannya.
Kategori Persamaan Differensial :
– PD Biasa :
Persamaan Differensial yang hanya memiliki satu variabel bebas.
Berdasarkan turunan tertinggi yang dimiliki, PDB dikategorikan
menjadi :
PDB Orde 1 : turunan tertingginya adalah turunan pertama
2
PDB Orde 2 : turunan kedua merupakan turunan tertinggi
PDB Orde 3 : turunan ketiga merupakan turunan tertingginya.
Dan seterusnya
– PD Parsial
Persamaan Differensial yang memiliki lebih dari satu variabel
bebas.
2. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 2
Pendahuluan Cont.
Contoh Persamaan :
yx
dx
dy +=
Turunan dilambangkan dengan : dy/dx atau f’(x) atau y’,
sedangkan fungsi yang tidak diketahui dilambangkan
dengan keberadaan variabel terikatnya.
3
seperti contoh di atas, maka :
Turunan dilambangkan dengan dy/dx dan fungsi yang tidak
diketahui diwakili dengan variabel y.
Pendahuluan Cont.
22
' yxy +=
Kategorikan : (PD / bukan PD / PDP / PDB ?)
)2(3)(''' xSinyxCosyy =−+
)(;173' 53
tfytty =+−= −
1. PDB orde 1
2. PDP
3. Bukan PD
4. PDB orde 2
yx
xye
y
u
x
u +
=
∂
∂
+
∂
∂
62
2
2
2
4 02 2
=−+ yyx
dx
dy
)()( yyy
''1'2'''2 yyy −=−
2
2
2
2
2
)1()(3
y
u
x
x
u
txSin
t
u
∂
∂
++
∂
∂
++=
∂
∂
4)(' 2
−=−− xxxf
PDB orde 2
5. PDB orde 3
6. Bukan PD
7. PDP
8. PDB orde 1
3. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 3
Pendahuluan (Cont.)
Solusi PDB :
– solusi analitik : salah satunya dengan teknik integral
– solusi numerik : menggunakan metode hampiran.
Solusi Numerik :
mencari nilai fungsi di xr+1, dimana r menunjukkan
jumlah langkah atau iterasi.
Langkah/iterasi memiliki jarak yang sama (h)
5
Langkah/iterasi memiliki jarak yang sama (h)
xr = x0 +rh;r = 0,1,2,…,n
PDB Orde Satu
Bentuk baku PDB orde satu :
Contoh :
),(')(' yxfyxf
dx
dy ===
y
x
yxyyyyy
x
yxy
xy
yyxyy
++−=→−=−=+−
−
=→==+
2'1)1(;'2
2
100
'1)0(;100'2
6
Metode penyelesaian :
– Euler
– Heun
– Runge Kutta
4. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 4
Metode Euler
Bentuk baku :
Penurunan
– Deret Taylor : uraikan y(xr+1) disekitar xr
rhxx
xyy
yxyyxfyxf
dx
dy
r
rr
+=
=
====
0
00
)(
)();,(')('
...)(''
!2
)(
)('
!1
)(
)()(
2
11
1 +
−
+
−
+= ++
+ r
rr
r
rr
rr xy
xx
xy
xx
xyxy
7
– Dipotong sampai orde 3 :
– Karena y’(xr) = f(xr,yr) dan xr+1-xr = h, maka :
!2!1
1
2
11
1 );(''
!2
)(
)('
!1
)(
)()( +
++
+ ≤≤
−
+
−
+= rr
rr
r
rr
rr xtxty
xx
xy
xx
xyxy
nrhOyxhfxyxy rrrr ,...,2,1,0);(),()()( 2
1 =++≈+
Metode Euler (Cont.)
Penurunan secara geometris :
f(x,y) adalah persamaan differensial yang dapat
digambarkan sebagai gradien garis singgung di titik
(x,y).
Garis singgung ditarik menyinggung titik (x0,y0) untuk
menemukan nilai y(x ) pada titik (x y ) ditarik lagi
8
menemukan nilai y(x1), pada titik (x1,y1) ditarik lagi
garis yang menyinggung titik tersebut dengan fungsi
f(x,y) untuk mendapatkan f(x2) dan seterusnya.
5. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 5
Metode Euler (Cont.)
4
5
6
7
8
y(x)
(x1,y1)
(x2,y2)
(x3,y3)
(x4,y4)
(x5,y5)
(x6,y6)
(x7,y7) (x8,y8)
9
0
1
2
3
4
0 0.5 1 1.5 2 2.5 3 3.5 4
dy/dx
(x0,y0)
Metode Euler (Cont.)
0
1
2
3
4
5
6
7
y(x)
yr
Yr+1
sejati
Yr+1
hampiran
Yr
sejati
A
B
C
galat
10
0
0 0.5 1h
),(
),(
),()('
1
1
1
rrrr
rrrr
rr
rrr
yxhfyy
yyyxhf
h
yy
AB
BC
x
y
yxfxym
+=
−=
−
==
∆
∆
===
+
+
+
6. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 6
Metode Euler (Cont.)
Galat
– Galat Pemotongan
sebanding dengan kuadrat ukuran langkah
– Galat Kumulatif
)()(''
2
1 22
hOtyhEp =≈
11
)(
2
)('')(
)(''
2
)(
)(''
2
)(''
2
1 2
2
2
1
hO
thyab
tyh
h
ab
yy
nh
tyhE
n
r
kumulatif =
−
=
−
==≈ ∑=
Metode Euler (Cont.)
Contoh Soal :
1. dy/dx =x + y ; y(0) = 0
Berapa y(0.1) dengan langkah h = 0.02 dan h = 0.05
jika diketahui fungsi asli adalah y(x) = ex-x-1, langkah mana yang lebih teliti ?
h = 0.05
x = 0 y(0) = 0
x = 0.05 y(0.05) = 0 + 0.05(0+0) = 0
x = 0.1 y(0.1) = 0 + 0.05(0.05+0) = 0.0025
12
h = 0.02
x = 0 y(0) = 0
x = 0.02 y(0.02) = 0 + 0.02(0+0) = 0
x = 0.04 y(0.04) = 0 + 0.02(0.02+0) = 0.0004
x = 0.06 y(0.06) = 0.004 +0.02(0.04+0.004) = 0.001208
x = 0.08 y(0.08) = 0.001208 +0.02(0.06+0.001208) = 0.00243216
x = 1 y(0.1) = 0.00243216 + 0.02(0.08+0.00243216) = 0.0040808032
y(0.1) = e0.1-0.1-1 =
Langkah h = 0.02 lebih teliti
0.00517091807564762
7. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 7
Metode Heun
Merupakan perbaikan metode Euler.
Solusi Euler dijadikan solusi perkiraan awal
dan diperbaiki dengan metode Heun.
Perbaikan gradien yang digunakan
merupakan rata-rata gradien dari 2 titik yang
13
merupakan rata rata gradien dari 2 titik yang
ada.
Metode Heun (Cont.)
Dari satu titik awal (xr,yr), iterasi dan
gradien didapatkan perkiraan nilai
y(xr+1) selanjutnya (xr+1,yr+1)
beserta gradiennya.
Dari dua gradien yang ada dicari
rata-ratanya kemudian digunakan
untuk menghitung kembali nilai
y(xr+1).
Misal :
A l it i di iliki ( 0 0) d
),(
)),(),((
2
1
,(
),();,(
),(
),();,(
1
0
11)
0
11
0
11
0
1
rrrr
rrrrrr
rrrr
rrrr
rrrr
yxfhyy
yxfyxfyxf
yxfyx
yxhfyy
yxfyx
+=
+=
+=
+
++
++++
+
14
– Awal iterasi dimiliki (x0,y0) dan
f(x0,y0)
– Kemudian digunakan untuk
menghitung y(x1) dan didapatkan
f(x1,y1)
– Hitung kembali y(x1) dengan gradien
(f(x0,y0)+f(x1,y1)/2
8. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 8
Metode Heun (Cont.)
Secara geometris :
3
4
5
6
7
y(x)
yr_euler
yr_heun
f(xr,yr) f(xr+1,yr+1)
frat(xr,yr)
(xr+1,yr+1)
15
0
1
2
0 0.5 1
(xr,yr)
Metode Runge Kutta
Bentuk umum Runge Kutta Orde n:
yr+1 = yr + a1k1 + a2k2 + … + ankn
Dengan a1,a2,a3, …,an adalah konstanta
k1 = hf(xr,yr)
k2 = h(f(xr+p1h, yr+q11k1)
k3 = h(f(xr+p2h,yr+q21k1+q22k2)
k4 = h(f(xr+p3h,yr+q31k1+q32k2+q33k3)
…
16
kn = h(xr+pn-1h,yr+qn-1,1k1+qn-1,2+…+qn-1,n-1kn-1)
Galat
– Per langkah Runge Kuta orde –n : O(hn+1)
– Kumulatif orde-n :O(hn)
9. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 9
Metode Runge Kutta (Cont. )
Orde 1
k1 = hf(xr,yr)
yr+1 = yr + a1k1 ; a1 = 1
yr+1 = yr + hf(xr,yr) Rumus Euler
Galat :
17
Per langkah : O(h2)
Kumulatif : O(h)
Metode Runge Kutta (Cont. )
Orde 2
k1 = hf(xr,yr)
k2 = h(f(xr+p1h, yr+q11k1)
yr+1 = yr + a1k1 + a2k2
Dengan penurunan rumus yang sudah ada didapatkan :
a1 = 1-a2 = 1-t
p1 = 1/(2a2) = 1/(2t)
18
q11 = 1/(2a2) = 1/(2t)
Artinya ada tak berhingga formula orde dua.
Dengan a1=a2 = ½, p1 = 1
yr+1 = yr + ½ (k1 + k2) Metode Heun
10. Variabel bebas, sebagai lawan variabel
terikat yaitu variabel yang nilainya
tergantung oleh variabel yang lain. 10
Metode Runge Kutta (Cont. )
Orde 3
k1 = hf(xr,yr)
k2 = h(f(xr+p1h, yr+q11k1)
k3 = h(f(xr+p2h,yr+q21k1+q22k2)
yr+1 = yr + a1k1 + a2k2 + a3k3
dengan menggunakan penurunan rumus yang ada didapatkan :
k = hf(x y )
19
k1 = hf(xr,yr)
k2 = h(f(xr+1/2 h, yr+1/2 k1)
k3 = h(f(xr+h,yr-k1+2k2)
yr+1 = yr + 1/6( k1 + 4k2 + k3)
Metode Runge Kutta (Cont. )
Orde 4
k1 = hf(xr,yr)
k2 = h(f(xr+p1h, yr+q11k1)
k3 = h(f(xr+p2h,yr+q21k1+q22k2)
k4 = h(f(xr+p3h,yr+q31k1+q32k2+q33k3)
yr+1 = yr + a1k1 + a2k2 + a3k3 + a4k4
dengan menggunakan penurunan rumus yang ada didapatkan :
k hf( )
20
k1 = hf(xr,yr)
k2 = h(f(xr+1/2 h, yr+1/2 k1)
k3 = h(f(xr+1/2h,yr+2k2)
k4 = h(f(xr+h,yr+k3)
yr+1 = yr + 1/6( k1 + 2k2 + 2k3 + k4)