y: real; begin Me to de He un Pe rb a ika n Me to da Eule r

384 Metode Numerik dan berakhir di x n = b maka total galat yang terkumpul pada solusi akhir y n adalah h t y a b t y h h a b t y h n t y h E n r total 2 2 2 2 1 2 2 1 2 − = − = = = ∑ = P.8.10 Galat longgokan total ini sebenarnya adalah E total = yb sejati - yx n Euler Persamaan P.8.10 menyatakan bahwa galat longgokan sebanding dengan h. Ini berarti metode Euler memberikan hampiran solusi yang buruk, sehingga dalam praktek metode ini kurang disukai, namun metode ini membantu untuk memahami gagasan dasar metode penyelesaian PDB dengan orde yang lebih tinggi. Pengurangan h dapat meningkatkan ketelitian hasil, namun pengurangan h tanpa penggunaan bilangan berketelitian ganda tidaklah menguntungkan karena galat numerik meningkat disebabkan oleh galat pembulatan [NAK93]. Selain galat pemotongan, solusi PDB juga mengandung galat pembulatan, yang mempengaruhi ketelitian nilai y 1 , y 2 , …, semakin lama semakin buruk dengan meningkatnya n baca kembali Bab 2 Deret Taylor dan Analisis Galat. Program 8.1 Metode Euler function y_Eulerx0, y0, b, h:real:real; {menghitung nilai yb pada PDB y=fx,y; yx0=y0 dengan metode Euler } var r, n: integer;

x, y: real; begin

n:=b-x0h; {jumlah langkah} y:=y0; {nilai awal} x:=x0; for r:=1 to n do begin y:=y + hfx,y; { hitung solusi y[xr] } x:=x + h; { hitung titik berikutnya } end; {for} y_Euler:=y; {yb} end; Bab 8 Solusi Persamaan Diferensial Biasa 385 Contoh 8.4 Diketahui PDB dydx = x + y dan y0 = 1 Gunakan metode Euler untuk menghitung y0,10 dengan ukuran langkah h = 0.05 dan h = 0.02. Jumlah angka bena = 5. Diketahui solusi sejati PDB tersebut adalah yx = e x - x - 1. Penyelesaian: i Diketahui a = x = 0 b = 0.10 h = 0.05 Dalam hal ini, fx, y = x + y, dan penerapan metode Euler pada PDB tersebut menjadi y r+1 = y r + 0.02x r + y r Langkah-langkah: x = 0 → y = 1 x 1 = 0.05 → y 1 = y + 0.05x + y = 1 + 0.050 + 1 = 1.0050 x 2 = 0.10 → y 2 = y 1 + 0.05x 1 + y 1 = 1.0050 + 0.050.05 + 1.0050 = 1.05 775 Jadi, y0.10 ≈ 1.05775. Bandingkan dengan nilai solusi sejatinya, y0.10 = e 0.10 - 0.01 - 1 = 1.1103 sehingga galatnya adalah galat = 1.1103 - 1.05775 = 0.05255 ii Diketahui a = x = 0 b = 0.10 h = 0.02 Dalam hal ini, fx, y = x + y, dan penerapan metode Euler pada PDB tersebut menjadi y r+1 = y r + 0.02x r + y r Langkah-langkah: 386 Metode Numerik x = 0 → y = 1 x 1 = 0.02 → y 1 = y + 0.02x + y = 1 + 0.020 + 1 = 1.0200 x 2 = 0.04 → y 2 = y 1 + 0.02x 1 + y 1 = 1.0200 + 0.020.02 + 1.0200 = 1.0408 x 3 = 0.06 → y 3 = 1.0624 x 4 = 0.08 → y 4 = 1.0848 x 5 = 0.10 → y 5 = 1.1081 Jadi, y 0,10 ≈ 1.1081 Bandingkan dengan solusi sejatinya, y 0.10 = 1.1103, sehingga galatnya adalah galat = 1.1103 - 1.1081 = 1.1081 Contoh 8.4 memperlihatkan bahwa kita dapat mengurangi galat dengan memperbanyak langkah memperkecil h.

8.5 Me to de He un Pe rb a ika n Me to da Eule r

Metode Euler mempunyai ketelitian yang rendah karena galatnya besar sebanding dengan h. Buruknya galat ini dapat dikurangi dengan menggunakan metode Heun, yang merupakan perbaikan metode Euler modified Eulers method. Pada metode Heun, solusi dari metode Euler dijadikan sebagai solusi perkiraan awal predictor. Selanjutnya, solusi perkiraan awal ini diperbaiki dengan metode Heun corrector. Metode Heun diturunkan sebagai berikut: Pandang PDB orde satu yx = fx, yx Integrasikan kedua ruas persamaan dari x r sampai x r+1 : ∫ ∫ + + = 1 1 , r r r r x x x x dx x y dx x y x f = yx r+1 - yx r = y r+1 - y r Nyatakan y r+1 di ruas kiri dan suku-suku lainnya di ruas kanan: y r+1 = y r + ∫ + 1 , r r x x dx x y x f P.8.11 Bab 8 Solusi Persamaan Diferensial Biasa 387 Suku yang mengandung integral di ruas kanan, ∫ + 1 , r r x x x d x y x f , dapat diselesaikan dengan kaidah trapesium menjadi ] , , [ 2 , 1 1 1 + + + ≈ ∫ + r r r r x x y x f y x f h dx x y x f r r P.8.12 Sulihkan persamaan P.8.12 ke dalam persamaan P.8.11, menghasilkan persamaan y r+1 = y r + h 2 [fx r , y r + fx r+1 , y r+1 ] P.8.13 yang merupakan metode Heun, atau metode Euler-Cauchy yang diperbaiki. Dalam persaman P.8.13, suku ruas kanan mengandung y r+1 . Nilai y r+1 ini adalah solusi perkiraan awal predictor yang dihitung dengan metode Euler. Karena itu, persamaan P.8.13 dapat ditulis sebagai Predictor : y r+1 = y r + hfx r , y r Corrector : y r+1 = y r + h 2 [fx r , y r + fx r+1 , y r+1 ] P.8.14 atau ditulis dalam satu kesatuan, y r+1 = y r + h 2 [fx r ,y r + fx r+1 , y r + hfx r , y r ] P.8.15

8.5.1 Ta fsira n G e o m e tri Me to d e He un

Metode ini mempunyai tafsiran geometri yang sederhana. Perhatikanlah bahwa dalam selang x r sampai x r + ½ h kita menghampiri solusi y dengan garis singgung melalui titik x r , y r dengan gradien fx r , y r , dan kemudian meneruskan garis singgung dengan gradien fx r+1 , y r+1 sampai x mencapai x r+1 [KRE88] lihat Gambar 8.4 dengan r = 0. x x 1 x y yx h2 h2 y 1 y Gambar 8.4 Tafsiran geometri metode Heun 388 Metode Numerik

8.5.2 G a la t Me to d e He un

Dari persamaan P.8.14, suku h 2 [fx r ,y r + fx r+1 , y r+1 ] bersesuaian dengan aturan trapesium pada integrasi numerik. Dapat dibuktikan bahwa galat per langkah metode Heun sama dengan galat kaidah trapesium, yaitu E p ≈ - 12 3 h yt , x r t x r+1 P.8.15 = Oh 3 Bukti: Misalkan, Y r+1 adalah nilai y sejati di x r+1 y r+1 adalah hampiran nilai y di x r+1 Uraikan Y r+1 di sekitar x r : Yx r+1 = yx r + 1 2 1 r r x x − + yx r + 2 2 1 r r x x − + yx r + 3 3 1 r r x x − + yx r + … = y r + hy r + 2 2 h y r + 6 3 h y r + … Dengan menyatakan y r = fx r , y r = f r , maka Y r+1 = y r + hf r + 2 2 h f r + 6 3 h f r + … P.8.16 Dari persamaan P.8.14, y r+1 = y r + h 2 [fx r ,y r + fx r+1 , y r+1 ] uraikan fx r+1 , y r+1 dengan menggunakan deret Taylor di sekitar x r : fx r+1 , y r+1 = fx r+1 , y r+1 Bab 8 Solusi Persamaan Diferensial Biasa 389 = fx r , y r + 2 2 1 r r x x − + f x r , y r + 2 2 1 r r x x − + f x r , y r + … = f r + hf r + 2 2 h f r + … sehingga persamaan P.8.14 dapat ditulis menjadi: y r+1 = y r + h 2 [fx r ,y r + fx r+1 , y r+1 ] = y r + h 2 [f r + f r + hf r + ½ h 2 f r + …] = y r + hf r + 2 2 h f r + 4 3 h f r + … P.8.17 Galat per langkah = nilai sejati - nilai hampiran = Y r+1 - y r+1 = y r + hf r + 2 2 h f r + 6 3 h f r + … - y r + hf r + 2 2 h f r + 4 3 h f r + … = 6 3 h f r - 4 3 h f r + … = - 12 3 h f r + … = - 12 3 h f r t , x r t x r+1 = Oh 3 Galat longgokannya adalah, E L = 12 1 3 1 t y h n r ∑ = − = - 12 a b − h 2 yt P.8.18 = Oh 2 390 Metode Numerik Jadi, galat longgokan metode Heun sebanding dengan h 2 . Ini berarti solusi PDB dari metode Heun lebih baik daripada solusi dari metode Euler, namun jumlah komputasinya menjadi lebih banyak dibandingkan dengan metode Euler. Perbandingan metode Heun dengan metode Euler dilukiskan pada Gambar 8.5. y r+1 sejati y r+1 y r x r x r+1 y yx h y r+1 1 Euler Heun Gambar 8.5 Perbandingan metode Euler dengan metode Heun Program 8.2 Metode Heun function y_Heunx0, y0, b, h:real:real; {menghitung yb dengan metode Heun pada PDB y=fx,y; yx0=y0 } var r, n: integer;

x, y, y_s : real; begin