Professional Documents
Culture Documents
BAB I
PENDAHUAN
A. Latar belakang
Persamaan diferensial berperang penting di alam , sebab kebanyakan fenomena
alam dirumuskan dalam bentuk diferensial. Persamaan diferensial sering digunakan
sebagai model matematika dalam bidang sains maupun dalam bidang rekayasa.
Persamaan differensial adalah pesamaan yang memuat turunan satu (atau
beberapa ) fungsi yang tidak diketahui. Suatu persamaan diferensial yang terdiri dari
satu variabel bebas saja dinamakan perasamaan diferensial biasa (Ordinary
Differential Equation-ODE). Sedangkan persamaan diferensial yang terdiri dari dua
atau lebih variabel bebas dinamakan persamaan diferensial parsial (partial
Differential Equation-PDE). Pada pembahasan makalah kami akan membahas
persamaan diferensial biasa (ODE) dengan metode Euler dan metode heun.
Penyelesaian persamaan diferensial biasa (ODE) mempunyai bentuk umum yaitu:
( ) ,
dy
f x y
dx
=
Penyelesaian PDB secara umerik berarti menghitung nilai fungsi di x
r+1
= x
r
+ h,
dengan h adalah ukuran langkah (step )setiap lelaran. Pada metode analitik, nilai
awal berfungsi untuk memperoleh solusi yang unik, sedangkan pada metode numeric
nilai awal (initial value ) pada ersamaan di atas berfungsi untuk memulai lelaran .
B. Tujuan Makala
Tujuan dalam pembuatan makalah ini adalah untuk mengetahui cara
menganalisis Metode Euler dan Heun, baik melalui teori maupun melalui
pemrograman.
2
II.4
2.4.1 Metode Euler
Metode Euler adalah salah satu dari metode satu langkah yang paling
sederhana. Di banding dengan beberapa metode lainnya, metode ini paling
kurang teliti. Namun demikian metode ini perlu dipelajari mengingat
kesederhanaannya dan mudah pemahamannya sehingga memudahkan dalam
mempelajari metode lain yang lebih teliti.
Metode euler atau disebut juga metode orde pertama karena
persamaannya kita hanya mengambil sampai suku orde pertama saja.
Misalnya diberikan PDB orde satu,
= = =
(p.6)
Galat longgokan total ini sebenarnya adalah
( ) ( )
total sejati n Euler
E y b y x =
ALGORITMA UNTUK METODE EULER
Merghitung hampiran penyelesaian masalah nilai awal y
= f(t,y) dengan
y(t
0
) = y
0
pada [t
0
, b]
INPUT : n, t
0
, b, y
0
, dan fungsi f
OUTPUT : (t
k
, y
k
), r = 1, 2, 3, , n
LANGKAH-LANGKAH:
1. Hitung h = (b t
0
)/n
2. FOR r = 1, 2, 3, , n
Hitung x
r
= x
r-1
+ h, y
r
= y
r-1
+ h * f(x
r-1
, y
r-1
)
3. SELESAI
5
Contoh:
Diketahui PDB
Dy/dx = x + y dan y(0)=1
Gunakan metode Euler untuk menghitung y(0, 10)dengan ukuran langkah h = 0,05 dan h
= 0,02. Jumlah angka bena = 5.diketahui solusi sejati PDB tresebut adalah
y(x) = e
x
x 1.
Penyelesaian:
(i) Diketahui
a = x
0
= 0
b = 0.10
c = 0.05
dalam hal ini f(x,y) = x + y, dan penerapan metode Euler pada PDB tersebut menjadi
1
0.02( )
r r r r
y y x y
+
= + +
Langkah-langkah:
0 0
0 0 x y = =
1 1 0 0 0
0.05 0.05( ) 1 (0.05)(0 1) 1.0050 x y y x y = = + + = + + =
2 2 1 1 1
0.10 0.05( ) 1.0050 (0.05 1.0050) 1.05775 x y y x y = = + + = + + =
Jadi, (0.10) 1.05775 y ~
(bandingkan dengan solusi sejatinya,
0.10
(0.10) 0.1 1 0.0052 y e = =
Sehingga galatnya adalah
Galat = 0.0052 1.05775 = -1.1030
(ii) Diketahi
0
0
0.10
0.02
a x
b
h
= =
=
=
Dalam hal ini , ( , ) f x y x y = + , dan penerapan metode Euler pada PDB
tersebut menjadi
1
0.02( )
r r r r
y y x y
+
= + +
Langkah-langkah:
0 0
0 1 x y = =
1 1 0 0 0
0.02 0.02( ) 1 (0.02)(0 1) 1.0200 x y y x y = = + + = + + =
2 2 1 1 1
0.04 0.02( ) 1.0200 (0.02)(0.02 1.0200) 1.0408 x y y x y = = + + = + + =
6
3 3
0.06 1.0624 x y = =
4 4
0.08 1.0848 x y = =
5 5
0.10 1.1081 x y = =
Jadi (0,10) 1.1081 y ~
(bandingkan dengan solusi sejatinya, y(0,10) = 1.1103, sehingga galatnya
adalah
Galat = 1.1103 1.1081 = 1.1081)
Program matlabnya yaitu:
clc;
clear;
x=0;
y=1;
b=0.10;
n=5;
h=(b-x)/n
hasil=[0 1];
for r=1:n
y=y+h*(x+y);
x=x+h;
hasil=[hasil; x y];
end
f=exp(b)-b-1;
galat=f-y;
hasil
eror=[f galat]
Autputnya yaitu:
h = 0.0200
hasil =
0 1.0000
0.0200 1.0200
0.0400 1.0408
0.0600 1.0624
0.0800 1.0849
0.1000 1.1082
eror = 0.0052 -1.1030
7
2.4.2. Metode Heun (Perbaikan Metode Euler)
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 (modifified Eulers
method ). Pada metode Heun , solusi dari metode Euler dijadikan sebagai solusi
perkiraan awal (prediktor), selanjutnya solusi perkiraan awal diperbaiki dengan
metode Heun (Corrector).
Metode Heun diturunkan sebagai berikut:
Pandang PDB orde Satu
'
( ) ( , ( )) y x f x y x =
Integrasikan kedua ruas persamaan dari x
r
sampai x
r+1
:
1 1
'
( , ( )) ( )
r r
r r
x x
x x
f x y x dx y x dx
+ +
=
} }
= y(x
r+1
)-y(x
r
)
= y
r+1
-y
r
Nyatakan y
r+1
di ruas kiri dan suku-suku lainnya di ruas kanan:
1
1
( , ( ))
r
r
x
r r
x
y y f x y x dx
+
+
= +
}
(p.7)
Suku yang mengandung integral di ruas kanan ,
1
( , ( ))
r
r
x
x
f x y x dx
+
}
,
dapat diselesaikan dengan kaidah trapezium menjadi
1
1 1
( , ( )) [ ( , ) ( , )]
2
r
r
x
r r r r
x
h
f x y x dx f x y f x y
+
+ +
= +
}
(p.8)
Sulihkan persamaan (p.7) ke dalam persamaan (p.8) , menghasilkan persamaan
1 1 1
[ ( , ) ( , )]
2
r r r r r r
h
y y f x y f x y
+ + +
= + +
(p.9)
Yang nerupakan metode Heun , atau metode Euler-Cauchy yang diperbaiki.
Dalam persamaan (p.8) suku ruas kanan mengandung y
r+1
ini adalah solusi
perkiraan awal (prediktor) yang dihitung dengan metode Euler. Persamaan (p.9)
dapat dituls sebagai :
predictor :
(0)
1
( , )
r r r r
y y hf x y
+
= +
Corrector :
(0)
1 1 1
[ ( , ) ( , )]
2
r r r r r r
h
y y f x y f x y
+ + +
= + +
(p.10)
Atau ditulis dalam satu kesatuan,
8
1 1
[ ( , ) ( , ) ( , )]
2
r r r r r r r r
h
y y f x y f x y hf x y
+ +
= + + +
(p. 11)
2.4.2.1. Tafsiran Geometri Metode Heun
Pada selang x
r
sampai x
r
+ hkita menghampiri solusi y dengan garis
singgung melalui titik (x
r
, y
r
) dengan gradien f(x
r
, y
r
) dan kemudian
meneruskan garis singgung dengan gradien f(x
r+1
, y
(0)
r+1
) sampai x mencapai
x
r+1.
y(x)
y
1
y
0
x
0
x
1
(tafsiran
geometri metode Heun)
2.4.2.2 Galat metode Heun
Dari persamaan (p.10) suku h/2 [f(x
r
, y
r
) + f(x
r+1
, y
(0)
r+1
)] bersesuaian
trapesiun pada integrasi numeric. Dapat dibuktikan bahwa galat per langkah
metode Heun sama dengan galat kaidah trapesiun, yaitu:
E
p
=
(t) , x
r
< t < x
r+1
(p. 12)
= o(h
3
)
Bukti:
Misalkan ,
Y
r+1
adalah nilai y sejati di x
r+1
y
r+1
adalah nampiran nilai y di x
r+1
Uraikan Y
r+1
di sekitar x
r
:
Y
r+1
=
1 2 3
1 1 1
( ) ( ) ( )
( ) '( ) "( ) "'( ) ...
1! 2! 3!
r r r r r r
r r r r
x x x x x x
y x y x y x y x
+ + +
+ + + +
=
2 3
' " "' ...
2 6
r r r r
h h
y hy y y + + + +
Dengan menyatakan
'
,
( , )
r r r r
y f x y f = = maka
9
2 3
' '''
1
...
2 6
r r r r r
h h
y y hf f f
+
= + + + +
(p.13)
Dari persamaan (p.10)
(0)
1 1 1
[ ( , ) ( , )]
2
r r r r r r
h
y y f x y f x y
+ + +
= + +
Uraikan
(0)
1 1
( , )
r r
f x y
+ +
dengan menggunakan deret taylor di sekitar
r
x :
(0)
1 1
( , )
r r
f x y
+ +
=
1 1
( , )
r r
f x y
+ +
=
2 2
' '' 1 2 1 2
( ) ( )
( , ( , ) ( , ) ...
2! 2!
r r
r r r r r r
x x x x
f x y f x y f x y
+ +
+ + +
=
2
' "
...
2
r r r
h
f hf hf + + +
Sehingga persamaan (p.10) dapat ditulis menjadi:
(0)
1 1 1
[ ( , ) ( , )]
2
r r r r r r
h
y y f x y f x y
+ + +
= + +
=
' "
1
[ ...]
2 2
r r r r r
h
y f f hf hf + + + + +
=
2 3
' "
...
2 4
r r r r
h h
y hf f f + + + +
Galat per langkah = nilai sejati nilai hampiran
=
1 1 r r
Y y
+ +
=
2 3 2 3
' "' ' '"
( ...) ( ...)
2 6 2 4
r r r r r r r r
h h h h
y hf f f y hf f f + + + + + + + +
=
3 3
"' '"
...
6 4
r r
h h
f f +
=
3
'"
...
12
r
h
f +
=
3
'"
( ),
12
r
h
f t x
r
<t<x
r+1
10
= 0(h
3
)
Galat longgokannya adalah,
3
1
1
"( )
12
n
L
r
E h y t
=
=
=
2 "
( )
( )
12
b a
h y t
= 0(h
2
)
Jadi galat longgokan metode Heun sebanding dengan h
2
. Ini berarti solusi
PDB metode heun lebih baik dari pada solusi dari metode Euler, namun jumlah
komputasinya menjadi lebih banyak dibandingkan dengan metode Euler.
Perbandingan metode Heun dengan metode Euler dapat dilihat pada gambar
berikut:
y y(x)
y
r+1
sejati
y
r+1
(1)
Heun
y
r+1
(0)
Euler
y
r
h
x
r
x
r+1
ssperbandingan metode Euler dengan metode Heun
ALGORITMA METODE HEUN
Menghitung hampiran penyelesaian masalah nilai awal y
= f(t,y) dengan
y(t
0
) = y
0
pada [t
0
, b].
INPUT : t
0
, b, y
0
, h, dan fungsi f
OUTPUT: (t
r
,y
r
), r = 1, 2, , n
11
LANGKAH-LANGKAH:
1. Hitung n = (b t
0
)/h
2. FOR r = 1, 2, 3, , n
Hitung t
r
= t
r-1
+ h,
Hitung S
1
= f(t
r-1
, y
r-1
),
Hitung S
2
= f(t
r
, y
r-1
+ h * S
1
),
Hitung y
r
=
y
r-1
+
(S
1
+S
2
).
SELESAI
Contoh:
Diketahui PDB
dy/dx = x + y ; y(0) = 1
hitung y(0.10) dengan metode Heun (h = 0.02)
penyelesaian:
dietahui:
f(x,y) = x + y
a = x
0
= 0
b = 0.10
h = 0.02
maka n = (0.10 - 0)/0.02 = 5 (jumlah langkah)
langkah-langjah:
x
1
= 0,02 y
(0)
1 = y
0
+ hf(x
0
, y
0
)
= 1 + 0.02(0+1)
= 1.0200
Y
(1)
1 = y
0
+ (h/2)[f(x
0
,y
0
)+f(x
1
,y
(0)
1)]
= 1 + (0.02/2)(0+1+0.02+1.0200)
= 1.0204
X
2
= 0.04 y
(0)
2 = y
1
+ hf(x
1
, y
1
)
12
= 1.0204 + 0.02(0.02 + 1.0204)
= 1.0412
Y
(1)
2 = y
1
+ (h/2)[f(x
1
, y
1
) + f(x
2
, y
(0)
2)]
= 1.0204 + (0.02/2)[0.02 + 1.0204 + 0.04 + 1.0412]
=1.0416
X
5
= 0.10 y
(0)
5 = y
4
+ hf(x
4
, y
4
)
Y
(0)
5 = y
4
+ (h/2)[f(x
4
, y
4
) + f(x
5
,y
(0)
5)]
= 1.1104
Jadi, y(0.10) 1.1104
Program matlabnya yaitu:
clc;
clear;
x=0;
y=1;
b=0.10;
n=5;
h=(b-x)/n
hasil=[0 1];
for r=1:n
y=y+(h/2)*((x+y)+(x+(y+h*(x+y))));
x=x+h;
hasil=[hasil; x y];
13
end
f=exp(b)-b-1;
galat=f-y;
hasil
eror=[f galat]
Outpunya yaitu:
h = 0.0200
hasil =
0 1.0000
0.0200 1.0202
0.0400 1.0412
0.0600 1.0631
0.0800 1.0857
0.1000 1.1093
eror = 0.0052 -1.1041
14
BAB III
PENUTUP
A. KESIMPULAN
1. Metode Euler
Metode Euler adalah salah satu dari metode satu langkah yang paling
sederhana.Metode euler atau disebut juga metode orde pertama karena
persamaannya kita hanya mengambil sampai suku orde pertama saja.
Misalnya diberikan PDB orde satu,