KELOMPOK VII
1.
2.
3.
4.
5.
6.
METODE EULER
1. Metode Euler Eksplisit
Metode
Euler
merupakan
metode
yang
paling
sederhana
untuk
mengintegrasikan PDB orde satu secara numerik. Kondisi atau syarat atau nilai
awal (xo, yo) digunakan untuk menghitung besarnya slope (atau tangen arah) y(x)
pada x = xo:
Dengan menganggap bahwa slope (dy/dx) pada interval x bernilai tetap, maka
nilai y(xo+x) dapat diperkirakan sebesar:
atau: yi+1 = yi +x . f ( xi , yi )
atau: yi+1 = yi + h . f ( xi , yi )
dengan: x = h menyatakan lebar langkah (step size)
f (xi , yi) merupakan bentuk persamaan diferensial seperti pada persamaan
diferensial
, sehingga:
atau
Perhatikan bahwa formula metode Euler ini juga dapat dijabarkan dari
ekspansi deret Taylor untuk yi+1 di sekitar yi:
Dengan kata lain, metode Euler ini mempunyai tingkat ketelitian yang dinyatakan
dengan local truncation error sebesar:
ei = (x2)
atau:
ei = (h2)
Contoh Soal
Gunakan metode Euler untuk menghitung nilai y pada x = 1 jika:
2 dengan nilai awal: y = 1 pada x = 0
Penyelesaian:
Formula metode Euler untuk kasus ini dapat dituliskan sebagai: yi+1 = yi
+x 2
Jika diambil step size x = 0,1, maka:
pada xo = 0 dan yo = 1 dapat dihitung:
y1 = 1 + (0,1) (0)2 (1) = 1
Selanjutnya, pada x1 = xo + x = 0 + 0,1 = 0,1 dan y1 = 1 dapat dihitung:
y2 = 1 + (0,1) (0,1)2 (1) = 1,001
Selanjutnya, pada x2 = x1 + x = 0,1 + 0,1 = 0,2 dan y2 = 1,001 dapat dihitung:
y3 = 1,001 + (0,1) (0,2)2 (1,001) = 1,005
Demikian seterusnya, hingga diperoleh y pada x = 1.
Sebagai perbandingan, dapat diambil nilai step size yang lain, misalnya: x = 0,05
x = 0,02, dan x = 0,2. Dengan cara yang sama, maka dapat diperoleh hasilhasil perhitungan sebagai berikut:
Dan apabila diplotkan nilai x dan y, akan diperoleh grafik sebagai berikut:
+ 1001 + 1000y = 0
Penerapan dari metode Euler, kita dapat mengurangi persamaan orde kedua untuk
dua persamaan orde pertama oleh:
z=
sehingga:
= -1001z 1000y
=z
Dalam prakteknya kita tidak tahu nilai yn +1. Jadi kita perlu mulai dari y0. Dasar
langkah untuk bentuk persamaannya adalah:
= f(x,y)
xn+1 = xn + x
yn+1 = yn + f(xn+1,yn+1)x
+1.
Karena yn
+1
tidak
Contoh Soal:
Gunakan metode Euler, untuk menyelesaikan persamaan differensial
y = -y; dengan syarat y(0) = 1
Misalkan h yang akan digunakan adalah 0.01 untuk x dalam interval [0,04].
Penggunaan persamaan terakhir dengan h(x) = 0,01 memberikan hasil berikut :
y(0,01) = 1 + (0,01)(-1) = 0,99
y(0,02) = 0,99 + (0,01)(-0,99) = 0,9801
y(0,03) = 0,9801 + (0,01)(-0,9801) = 0,9703
y(0,04) = 0,9703 + (0,01)(-0,9703) = 0,9606
-x
Solusi eksak dari persamaan differensial di atas adaalah y = e , dan dari nilai x =
0,04 diperoleh nilai y = 0,9606.
METODE RUNGE-KUTTA
Ada dua alasan utama mengapa metode Euler umumnya tidak digunakan
dalam komputasi ilmiah. Pertama, kesalahan pemotongan per langkah terkait dengan
metode ini jauh lebih besar daripada yang terkait dengan lainnya, lebih maju, metode
(untuk nilai tertentu h). Kedua, metode Euler terlalu rentan terhadap ketidakstabilan
numerik.
Alasan utama bahwa metode Euler memiliki seperti kesalahan pemotongan
besar per langkah adalah bahwa dalam mengembangkan solusi dari xn untuk x{n +1}
metode hanya mengevaluasi derivatif pada awal interval: yaitu, pada xn. Metode ini,
oleh karena itu, sangat asimetris sehubungan dengan awal dan akhir interval. Kita
dapat membuat metode integrasi yang lebih simetris dengan membuat langkah
percobaan Euler-seperti untuk titik tengah dari interval, dan kemudian menggunakan
nilai dari kedua x dan y pada titik tengah untuk membuat langkah nyata di interval.
Untuk lebih tepatnya,
Sebagaimana
ditunjukkan
dalam
jangka
kesalahan,
simetrisasi
ini
membatalkan kesalahan orde pertama, dengan membuat metode orde kedua. Bahkan,
metode di atas umumnya dikenal sebagai metode orde kedua Runge-Kutta. Metode
Euler dapat dianggap sebagai metode orde pertama Runge-Kutta.
Di sini, y adalah fungsi yang tidak diketahui (skalar atau vektor) dari waktu t
yang kita ingin perkiraan, kita diberitahu bahwa
mendefinisikan
Berikut
(metode Euler);
Dalam rata-rata empat bertahap, bobot yang lebih besar diberikan kepada
peningkatan pada titik tengah. Bobot yang dipilih sedemikian rupa sehingga jika f
adalah independen dari y, sehingga persamaan diferensial setara dengan terpisahkan
sederhana, maka RK4 adalah aturan Simpson.
Metode Runge-Kutta Orde 2 diberikan dalam skema berikut
yn+1 = yn + (k1 + k2)/2
dengan
k1 = hf (xn,yn), k2 = hf (xn,yn + k1)
h = step size
Contoh
Diberikan MNA dalam bentuk
Penyelesaian:
(i) Metode Runge-Kutta Orde Dua
Pilih h = 0,1 , f(x,y) = y-x, dan y (0) = 2. Kemudian tentukan nilai-nilai koefisien k1
dan k2 dengan cara berikut:
k1 = hf0 (x0,y0) = 0,1f (0,2) = 0,1 (2-0) = 0,2
k2 = hf (x0 + h,y0 + k1) = 0,1 [f ( 0 + 0,1 , 2 + 0,2)]
k2 = 0,1 [f(0,1 ; 2,2)]
k2 = 0,1 (2,2 0,1) = 0,21
Kemudian dihitung nilai y pertama yaitu
y1 = (0,1)
= y0 + (k1 +k2)
= 2 + (0,2 + 0,21)
= 2,2050
Guna mendapatkan nilai fungsi y2 = y(0,2), diperlukan x0 = 0,1 dan y0 = 2,2050.
Dengan cara yang sama diperoleh:
k1 = hf0 (x0,y0)
= 0,1f (0,1 ; 2,2050)
= 0,1f (2,2050 0,1) = 0,2105
k2 = hf (x0 + h,y0 + k1)
= 0,1 f (0,2 , 2,4155)
0,3
y hitung
h = 0,1 : 2,4210
h = 0,2 : 2,4200
h = 0,1 : 2,8909
h = 0,2 : 2,8880
y eksak
2,4214
2,4918
Selisih
0,0004
0,0014
0,0009
0,0038
Rasio
3,5
4,2
Dari tabel di atas terlihat bahwa metode Runge-Kutta orde dua konvergen
= 0,1 (2,1-0,05)
= 0,205
k3 = hf(x0 + h, y0 + k2)
= 0,1f (0,05 , 2 + 0,1025)
= 0,1 (2,1025 0,05)
= 0,20525
k4 = hf (x0 + h , y0 + k3)
= 0,1f ( 0,1 , 2,20525)
= 0,1 (2,20525 0,1)
= 0,21053
Dari nilai-nilai tersebut diperoleh :
y1 = y(0,1)
= y0 + (k1 + 2k2 + 2k3 + k4)
= 2 + (0,2 + 0,410 + 0,4105 + 0,21043)
= 2,2052
Dengan cara yang sama didapat juga y (0,2) = 2,4214
PROGRAM MATLAB
Matlab merupakan salah satu paket aplikasi matematika yang sangat cepat
dan menyenangkan untuk digunakan sebagai ala pemecahan masalah matematika
secara numerik. Masalah-masalah komputasi yang ditemui di dalam matematika
dapat diselesaikan secara jauh lebih cepat dengan Matlab. Matlab sangat cocok dan
cepat untuk melakukan perhitungan-perhitungan yang melibatkan matriks. Hal ini
sesuai dengan nama Matlab yang merupakan singkatan dari Matrix Laboratory.
Matlab dapat digunakan untuk melakukan komputasi numerik, simbolik, visualisasi,
serta pemrograman.
Contoh aplikasi dari Matlab adalah penyelesaian persamaan diferensial.
Matlab menyediakan beberapa perintah untuk menyelesaikan persamaan diferensial
biasa (PDB) maupun persamaan diferensial parsial (PDP), baik tingkat rendah
maupun tingkat tinggi.
PERSAMAAN DIFERENSIAL
1. Persamaan Diferensial Biasa Orde 1 Tunggal
Bentuk umum :
Contoh :
Dengan menggunakan metoda euler eksplisit, tentukanlah nilai y pada x =1 jika
dy/dx = x2y, dimana y = 1 pada x = 0.
Penyelesaian:
Dari bentuk umum, maka:
maka:
b. Metoda Runge-Kutta
Bentuk umum:
Hasil yang diperoleh dengan fungsi built-in ode45 ini sama dengan hasil perhitungan
secara analitik.
dimana
Metoda yang digunakan juga sama seperti penyelesaian PDB orde 1 yang tunggal.
dimana
pada nilai x yang ke-j (yaitu, jika kondisi awal ditentukan pada x = 0, maka nilai x
yang ke-j adalah j. x
b. Metoda Runge-Kutta
Bentuk umum:
Menghasilkan penyelesaian: