Anda di halaman 1dari 24

Pendahuluan

Metode Euler dan Heun


Metode Deret Taylor
Metode Runge-Kutta

PAM 252 Metode Numerik


Bab 7 Persamaan Diferensial Biasa

Mahdhivan Syafwan

Jurusan Matematika FMIPA Universitas Andalas

Semester Genap 2017/2018

1 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Motivasi
Metode Deret Taylor Konstruksi Dasar
Metode Runge-Kutta

Motivasi
Persamaan diferensial banyak digunakan untuk pemodelan
matematika dalam sains dan rekayasa.
Tidak semua persamaan diferensial dapat diselesaikan secara
eksak, sehingga penyelesaian secara numerik menjadi sangat
diperlukan.
Pada kuliah ini, akan dibahas beberapa metode numerik untuk
menyelesaikan persamaan diferensial biasa
y ′ = f (t, y ), t ∈ [a, b],
dengan syarat awal y (a) = y0 .
Solusi numerik yang diperoleh bukan berupa suatu fungsi yang
memenuhi persamaan diferensial, tetapi himpunan titik
{(tk , yk )} yang digunakan sebagai hampiran dari y (tk ), yaitu
y (tk ) ≈ yk .
2 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Euler dan Heun Motivasi
Metode Deret Taylor Konstruksi Dasar
Metode Runge-Kutta

Bagaimana membangun titik {(tk , yk )}?

Pilih absis {tk } sedemikian sehingga membagi/mempartisi


selang [a, b] menjadi M selang bagian yang sama panjang,
yaitu
tk = a + kh, k = 0, 1, 2, ..., M,
dengan h = (b − a)/M.
Titik {tk } disebut titik kisi/titik partisi dan nilai h disebut
ukuran langkah.
Selanjutnya tentukan solusi hampiran dari

y ′ = f (t, y ) pada [t0 , tM ] dengan y (t0 ) = y0 .

Caranya?

3 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Euler - konstruksi


Asumsikan y (t), y ′ (t) dan y ′′ (t) kontinu.
Uraikan y (t) atas deret Taylor di sekitar t = t0 :
(t − t0 )2
y (t) = y (t0 )+y ′ (t0 )(t−t0 )+y ′′ (c1 ) , untuk suatu c1 ∈ (t0 , t).
2
Substitusi y ′ (t0 ) = f (t0 , y (t0 )) dan h = t1 − t0 ke persamaan di
atas, sehingga diperoleh hasil untuk y (t1 ) sebagai berikut:
h2
y (t1 ) = y (t0 ) + hf (t0 , y (t0 )) + y ′′ (c1 )
.
2
Jika h cukup kecil, maka suku terakhir dapat diabaikan. Dengan
memperhatikan syarat awal y (t0 ) = y0 , diperoleh hampiran
y (t1 ) ≈ y1 = y0 + hf (t0 , y0 ).
yang kemudian disebut hampiran Euler.
Proses di atas diulang untuk t2 , ..., tM sehingga diperoleh barisan
titik {(tk , yk )} yang menghampiri kurva solusi y = y (t).
4 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Euler - langkah umum dan contoh


Langkah umum dari metode Euler adalah
tk+1 = tk + h, yk+1 = yk + hf (tk , yk ), untuk k = 0, 1, 2, ..., M − 1.

Contoh:
Gunakan metode Euler untuk menentukan hampiran solusi dari masalah
nilai awal (MNA)
y ′ = Ry pada [0, 1] dengan y (0) = y0 dan R konstan.
Jawab:
Dari yk+1 = yk + hf (tk , yk ) dengan f (tk , yk ) = Ryk , diperoleh
y1 = y0 (1 + hR),
y2 = y1 (1 + hR) = y0 (1 + hR)2 ,
..
.
yM = yM−1 (1 + hR) = · · · = y0 (1 + hR)M .

5 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Euler - deskripsi geometrik

Dari titik (t0 , y0 ) dibuat garis dengan kemiringan


m = y ′ (t0 ) = f (t0 , y0 ) dan lebar h. Titik pada garis tersebut adalah
(t1 , y1 ), sebagai hampiran dari y = y (t1 ).
Proses di atas diulang dari (t1 , y1 ) dan seterusnya.

6 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Euler - analisis galat


Perhatikan bahwa dari uraian deret Taylor, sebagai dasar
pembentukan hampiran Euler, lebar h yang digunakan sangat
berpengaruh terhadap galat dalam perhitungan.
Pada tiap langkah, galat yang terjadi adalah
ek+1 = y (tk+1 ) − yk+1 = y (tk+1 ) − (yk + hf (tk , yk ))
h2
≈ y ′′ (ck+1 ) = O(h2 ).
2
Setelah M langkah, galat terakumulasi menjadi
X
M−1 X
M−1
h2 h2
E = ek+1 ≈ y ′′ (ck+1 ) = My ′′ (c)
2 2
k=0 k=0
b−a
= y ′′ (c) h = O(h).
2
7 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Euler - contoh lagi


Hitung solusi numerik dari MNA
t −y
y′ = ,
2
pada selang [0, 3] dengan syarat awal y (0) = 1. Bandingkan
solusinya untuk h = 1, 1/2, 1/4.
Jawab:

8 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Heun - konstruksi


Menurut teorema dasar kalkulus,
Z t1 Z t1
t
f (t, y (t))dt = y ′ (t)dt = [y (t)]t10 = y (t1 ) − y (t0 )
t0 t0
Z t1
⇔ y (t1 ) = y (t0 ) + f (t, y )dt.
t0

Terapkan aturan trapesium pada perhitungan integral, yaitu


h
y (t1 ) ≈ y (t0 ) + [f (t0 , y (t0 )) + f (t1 , y (t1 ))] , h = t1 − t0 .
2
Selanjutnya, y (t1 ) dihampiri dengan rumus Euler, sehingga diperoleh
h
[f (t0 , y (t0 )) + f (t1 , y0 + hf (t0 , y0 ))] , h = t1 − t0 ,
y (t1 ) ≈ y (t0 ) +
2
yang kemudian disebut hampiran Heun.
Proses di atas diulang untuk t2 , t3 , ..., tM sehingga diperoleh barisan
titik {(tk , yk )} yang menghampiri kurva solusi y = y (t).
9 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Heun - langkah umum


Pada tiap langkah, metode Euler digunakan sebagai prediktor dan
aturan trapesium digunakan sebagai korektor (lihat gambar).
Langkah umum metode Heun adalah:
pk+1 = yk + hf (tk , yk ),
tk+1 = tk + h,
h
yk+1 = yk + [f (tk , yk ) + f (tk+1 , pk+1 )] .
2

10 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Euler dan Heun Metode Euler
Metode Deret Taylor Metode Heun
Metode Runge-Kutta

Metode Heun - analisis galat dan contoh


Penurunan metode Heun berdasarkan pada hampiran trapesium.
Pada tiap langkah, galat dari metode Heun dihampiri oleh galat dari
aturan trapesium, yaitu
h3 ′′
− y (ck ).
12
Setelah M langkah, galat yang terakumulasi dihampiri oleh
X
M
h3 ′′ b − a ′′
− y (ck ) = − y (c)h2 = O(h2 ).
12 12
k=1

Contoh:
Gunakan metode Heun untuk menyelesaikan y ′ = t−y 2 pada selang
[0, 3] dengan syarat awal y (0) = 1. Bandingkan solusinya untuk
h = 1, 1/2, 1/4. Bandingkan juga dengan metode Euler yang
diperoleh sebelumnya.
11 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Deret Taylor?
Metode Euler dan Heun
Konstruksi
Metode Deret Taylor
Analisis Galat dan Contoh
Metode Runge-Kutta

Metode deret Taylor?

Mempunyai penerapan umum.

Metode baku sebagai pembanding akurasi dari metode


lainnya.

Dapat dirancang untuk memperoleh hampiran dengan tingkat


akurasi yang diinginkan.

12 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan
Metode Deret Taylor?
Metode Euler dan Heun
Konstruksi
Metode Deret Taylor
Analisis Galat dan Contoh
Metode Runge-Kutta

Metode deret Taylor - konstruksi


Kita tahu uraian deret Taylor diberikan oleh
h2
y (tk + h) = y (tk ) + y ′ (tk )h + y ′′ (tk ) + ··· . (1)
2!
Perhatikan bahwa [tunjukkan!]
y ′′ = ft + fy y ′ = ft + fy f , (2)
′′′ 2
y = · · · = ftt + 2fty f + fyy f + fy (ft + fy f ),
..
.
 N−1
(N) ∂ ∂
y = +f f.
∂t ∂y
Metode Taylor orde N:
h2 hN
yk+1 = yk + d1 h + d2 + · · · + dN ,
2! N!
dengan dj = y (j) (tk ) untuk j = 1, 2, ..., N pada tiap langkah
k = 1, 2, ..., M − 1.
13 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan
Metode Deret Taylor?
Metode Euler dan Heun
Konstruksi
Metode Deret Taylor
Analisis Galat dan Contoh
Metode Runge-Kutta

Metode deret Taylor - analisis galat dan contoh


Jika deret Taylor dipotong sampai turunan ke-N, maka galat pada
setiap langkah berorde O(hN+1 ).

Galat global akhirnya adalah E (y (b), h) = |y (b) − yM | = O(hN ).

Contoh:
Gunakan metode Taylor orde N = 4 untuk menyelesaikan y ′ = t−y
2
pada selang [0, 3] dengan syarat awal y (0) = 1. Bandingkan
solusinya untuk h = 1, 1/2, 1/4. Bandingkan juga dengan metode
Euler dan metode Heun yang diperoleh sebelumnya.

14 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode Runge-Kutta?

Kendala pada metode deret Taylor:


Nilai N harus ditentukan sebelumnya dan harus diambil cukup
besar agar diperoleh galat yang kecil.
Komputasi turunan tingkat tinggi yang rumit dan merepotkan.
Pada metode Runge-Kutta:
Perhitungan dapat dibangun untuk sebarang orde N (yang
paling populer N = 4).
Perhitungan turunan yang lebih tinggi dapat dihindari dengan
cara melakukan beberapa evaluasi fungsi pada tiap langkah.
Ciri metode Runge-Kutta: stabil, cukup akurat, mudah
diprogram.

15 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode RK2 - konstruksi (1)

Bentuk umum:

y (t + h) = y (t) + Ahf0 + Bhf1 , (3)

dengan f0 = f (t, y ) dan f1 = f (t + Ph, y + Qhf0 ).


Uraikan f1 menjadi deret Taylor untuk dua peubah:

f1 = f (t + Ph, y + Qhf0 )
= f (t, y ) + Phft (t, y ) + Qhfy (t, y )f (t, y ) + CP h2 + · · · .

Dengan demikian persamaan (3) menjadi

y (t + h) = y (t) + (A + B)hf (t, y ) + BPh2 ft (t, y )


+BQh2 fy (t, y )f (t, y ) + BCP h3 + · · · . (4)

16 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode RK2 - konstruksi (2)


Perhatikan kembali deret Taylor [dari persamaan (1) dan (2)]:
1 1
y (t+h) = y (t)+hf (t, y )+ h2 ft (t, y )+ h2 fy (t, y )f (t, y )+CT h3 +· · · .
2 2
(5)
Dengan mencocokkan koefisien-koefisien suku yang sesuai pada
persamaan (4) dan (5), diperoleh sistem persamaan
1 1
1 = A + B, = BP, = BQ.
2 2
Perhatikan bahwa sistem di atas terdiri dari 3 persamaan dengan 4
variabel, sehingga satu variabel dapat dipilih bebas.
Kasus (1): Pilih A = 1/2. Maka B = 1/2 dan P = Q = 1, sehingga
rumus hampiran yang diperoleh adalah metode Heun [periksa!].
Kasus (2): Pilih A = 0. Maka B = 1 dan P = Q = 1/2. Rumus
hampiran yang diperoleh dikenal dengan metode Euler-Cauchy yang
dimodifikasi [tuliskan rumusnya!].
17 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode RK4 - konstruksi

Bentuk umum:

yk+1 = yk + w1 k1 + w2 k2 + w3 k3 + w4 k4 ,

dengan

k1 = hf (tk , yk ),
k2 = hf (tk + a1 h, yk + b1 k1 ),
k3 = hf (tk + a2 h, yk + b2 k1 + b3 k2 ),
k4 = hf (tk + a3 h, yk + b4 k1 + b5 k2 + b6 k3 ).

Dengan cara mencocokkan koefisien uraian Taylor orde


N = 4, diperoleh sistem 11 persamaan dengan 13 variabel
[tunjukkan!], sehingga dua variabel dapat dipilih bebas.
18 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode RK4 - bentuk paling populer


Pilihan yang paling populer adalah a1 = 1/2 dan b2 = 0,
sehingga diperoleh bentuk populer/klasik dari RK4:
h
yk+1 = yk + (f1 + 2f2 + 2f3 + f4 ),
6
dengan
f1 = f (tk , yk ),
h h
f2 = f (tk + , yk + f1 ),
2 2
h h
f3 = f (tk + , yk + f2 ),
2 2
f4 = f (tk + h, yk + hf3 ).
Tafsiran geometri dari metode RK4 ini dapat dikaitkan dengan
aturan pengintegralan Simpson [tugas baca!].
19 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Metode RK4 - analisis galat dan contoh


Karena metode RK4 menggunakan uraian Taylor orde N = 4, maka
galat RK4 pada setiap langkah berorde O(h4 ).

Galat global akhirnya adalah E (y (b), h) = |y (b) − yM | = O(h4 ).

Contoh:
Gunakan metode RK4 untuk menyelesaikan y ′ = t−y 2 pada selang
[0, 3] dengan syarat awal y (0) = 1. Bandingkan solusinya untuk
h = 1, 1/2, 1/4. Bandingkan juga dengan metode Euler, metode
Heun, dan metode deret Taylor yang diperoleh sebelumnya.

20 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Sistem persamaan diferensial

Sistem dua MNA:

x ′ (t) = f (t, x, y ), x(t0 ) = x0 ,



y (t) = g (t, x, y ), y (t0 ) = y0 .

Sistem tiga MNA:

x ′ (t) = f (t, x, y , z), x(t0 ) = x0 ,



y (t) = g (t, x, y , z), y (t0 ) = y0 .

z (t) = l (t, x, y , z), z(t0 ) = z0 .

Solusi numeriknya? (di sini hanya dibahas untuk metode RK4)

21 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Solusi sistem persamaan diferensial dengan RK4


Rumus iterasi:
h
xk+1 = xk + (f1 + 2f2 + 2f3 + f4 ),
6
h
yk+1 = yk + (g1 + 2g2 + 2g3 + g4 ),
6
dengan

f1 = f (tk , xk , yk ), g1 = g (tk , xk , yk ),
f2 = f (tk + h2 , xk + h2 f1 , yk + h2 g1 ), g2 = g (tk + h2 , xk + h2 f1 , yk + h2 g1 ),
f3 = f (· · · , · · · , · · · ), g3 = g (· · · , · · · , · · · ),
f4 = f (· · · , · · · , · · · ), g4 = g (· · · , · · · , · · · ).

Untuk penyederhanaan, tulis bentuk di atas dalam bentuk vektor!

22 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa


Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Persamaan diferensial orde lebih tinggi


MNA orde 2:

x ′′ (t) = F (t, x(t), x ′ (t)),


x(t0 ) = x0 ,
x ′ (t0 ) = y0 ,

Misalkan x ′ (t) = y (t), maka x ′′ (t) = y ′ (t). Jadi MNA di atas


menjadi sistem persamaan diferensial
x ′ (t) = y (t), x(t0 ) = x0 ,

y (t) = F (t, x, y ), y (t0 ) = y0 .

Untuk MNA orde 3?


Sistem persamaan diferensial yang terbentuk dapat
diselesaikan dengan menggunakan metode RK4.
23 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa
Pendahuluan Metode Runge-Kutta?
Metode Euler dan Heun Metode Runge Kutta Orde N = 2 (RK2)
Metode Deret Taylor Metode Runge Kutta Orde N = 4 (RK4)
Metode Runge-Kutta Sistem Pers. Diff. dan Pers. Diff. Orde Tinggi

Contoh

24 Mahdhivan Syafwan Metode Numerik: Persamaan Diferensial Biasa

Anda mungkin juga menyukai