You are on page 1of 34

1

BAB I
PENDAHULUAN
1.1 Latar Belakang
Dalam pandangan formalis, matematika adalah penelaahan struktur
abstrak yang didefinisikan secara aksioma dengan menggunakan logika simbolik
dan notasi matematika. Sedangkan secara umum, matematika ditegaskan
sebagai penelitian pola dari suatu struktur, perubahan dan ruang. Struktur
spesifik yang diselidiki oleh matematika sering kali berasal dari ilmu pengetahuan
alam termasuk di dalamnya biologi, akan tetapi yang paling umum berasal dari
fisika.
Pada perkembangannya, matematika tingkat lanjut digunakan sebagai alat
untuk mempelajari berbagai fenomena fisik yang kompleks khususnya berbagai
fenomena alam yang teramati agar pola struktur, perubahan ruang dan sifat-sifat
fenomena tersebut bisa didekati atau dinyatakan dalam sebuah bentuk perumusan
yang sistematis dan penuh dengan berbagai konvensi, simbol dan notasi. Hasil
perumusan yang menggambarkan prilaku dan proses fenomena fisik tersebut biasa
disebut model matematika. Karena kebanyakan fenomena fisik secara alamiah
berujung pada hubungan antara kuantitas dan laju perubahannya, maka
dibangunlah kalkulus, yang secara khusus topik tersebut dibahas dalam persamaan
diferensial.
Persamaan diferensial yang pada mulanya disebut sebagai persamaan
turunan merupakan persamaan yang diperkenalkan oleh Leibniz pada tahun 1676
(Finizio dan Ladas, 1988: 1). Secara definisi, persamaan diferensial merupakan
persamaan yang menyangkut turunan dari satu atau lebih variabel tak bebas
terhadap satu atau lebih variabel bebas (Ross, 1984: 3).
Dan berdasarkan pada kasus kali ini adalah untuk menyelesaikan
persamaan defleksi dengan berbagai metode pendekatan secara numerik, yaitu
dengan metode euler, metode heun, metode polygon, metode raltson. Untuk itu
dilakukanlah praktikum ini untuk mengetahui perbedaan di antara metode-metode
tersebut.

2

1.2 Tujuan
1. Menyelesaikan persamaan profil muka air dengan menggunakan metode
euler, heun, polygon, raltson, runge kutta orde 3, dan runge kutta orde 4
2. Mengetahui besarnya nilai atau hasil antara metode euler, heun, polygon,
raltson, runge kutta orde 3, dan runge kutta orde 4


























3

BAB II
TINJAUAN PUTAKA

Metode artinya cara, sedangkan numerik artinya angka, sehingga metode
numerik secara harfiah berarti cara berhitung dengan menggunakan angka-angka.
Sedangkan secara istilah, metode numerik adalah teknik yang digunakan untuk
memformulasikan persoalan matematik sehingga dapat dipecahkan dengan
operasi perhitungan atau aritmetika biasa (tambah, kurang, kali dan bagi) (Munir,
2006: 5). Secara lebih sederhana metode numerik merupakan cabang atau bidang
matematika khususnya matematika rekayasa, yang menggunakan bilangan untuk
menirukan proses matematika (Djojodiharjo, 2000: 1).
Metode numerik disebut juga sebagai alternatif dari metode analitik, yang
merupakan metode penyelesaian persoalan matematika dengan rumus-rumus
aljabar yang sudah baku atau lazim. Disebut demikian, karena adakalanya
persoalan matematik sulit diselesaikan atau bahkan tidak dapat diselesaikan secara
analitik sehingga dapat dikatakan bahwa persoalan matematik tersebut tidak
mempunyai solusi analitik. Sehingga sebagai alternatifnya, persoalan matematik
tersebut diselesaikan dengan metode numerik. Perbedaan utama antara metode
numerik dengan metode analitik terletak pada dua hal, yaitu:
a) Solusi dengan metode numerik selalu berbentuk angka, sedangkan dengan
metode analitik biasanya menghasilkan solusi dalam bentuk fungsi
matematikyang selanjutnya fungsi matematik tersebut dapat dievaluasi untuk
menghasilkan nilai dalam bentuk angka.
b) Dengan metode numerik hanya diperoleh solusi yang menghampiri atau
mendekati solusi sejati sehingga solusi numerik dinamakan juga solusi
hampiran approximation) atau solusi pendekatan. Akan tetapi, solusi
hampiran tersebut apat dibuat seteliti yang diinginkan. Solusi hampiran tentu
tidak tepat sama dengan solusi sejati, sehingga ada selisih antara keduanya,
dan selisih tersebut dinamakan sebagai galat (error). Sedangkan dengan solusi
analitik sudah pasti dihasilkan solusi sejati yang sesuai dengan kenyataannya
(Munir, 2006:5).
4

Metode penyelesaian persamaan diferensial biasa secara numerik terbagi
menjadi 2, yaitu metode satu langkah dan metode banyak langkah. Metode yang
termasuk satu langkah adalah metode deret Taylor, metode Euler, metode Runge
Kutta dan metode Heun. Sedangkan metode yang termasuk banyak langkah
adalah metode Adam-Bashforth-Moulton, metode Milne-Simpson dan metode
Hamming.
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.
Akan diselesaikan persamaan diferensial biasa dengan bentuk sebagai
berikut:


Persamaan tersebut dapat didekati dengan bentuk berikut:


atau

atau

dengan u adalah perkiraan kemiringan yang digunakan untuk ekstrapolasi dari
nilai y
i
ke y
i + 1
yang berjarak Ax yaitu selisih antara Ax = x
i + 1
x
i
. Persamaan
diatas dapat digunakan untuk menghitung langkah nilai y secara bertahap.
Metode Euler dapat diturunkan dari Deret Taylor:



) , ( y x f
dx
dy
=
) y , x ( f
x x
y y
x
y
dx
dy
1
1
=

= ~
+
+
i i
i i

) x x )( y , x ( f y y
1 1 i i i i
+ =
+ +
...(1) x y y
1

i i
+ =
+
...
! 2
x
y
! 1
x
y y y
2
' ' '
1
+ + + =
+

i i i i
5

Apabila nilai Ax kecil, maka suku yang mengandung pangkat lebih tinggi
dari 2 adalah sangat kecil dan dapat diabaikan, sehingga persamaan diatas dapat
ditulis menjadi:

Dengan membandingkan persamaan (1) dan persamaan (2) dapat
disimpulkan bahwa pada metode Euler, kemiringan u = = f (x
i
, y
i
), sehingga
persamaan (2) dapat ditulis menjadi:


dengan i = 1, 2, 3, Persamaan (3) adalah metode Euler, nilai y
i + 1
diprediksi
dengan menggunakan kemiringan fungsi (sama dengan turunan pertama) di titik x
i

untuk diekstrapolasikan secara linier pada jarak sepanjang pias Ax. Gambar 1,
adalah penjelasan secara grafis dari metode Euler.

Gambar1. Metode Euler
Kesalahan Metode Euler
Penyelesaian numerik dari persamaan diferensial biasa menyebabkan
terjadinya dua tipe kesalahan, yaitu:
1. Kesalahan pemotongan, yang disebabkan oleh cara penyelesaian yang
digunakan untuk perkiraan nilai y.
....(2) x y y y
'
1

i i i
+ =
+
...(3) x ) y , x ( f y y
1

i i i i
+ =
+
6

2. Kesalahan pembulatan, yang disebabkan oleh keterbatasan jumlah angka (digit)
yang digunakan dalam hitungan.
Kesalahan pemotongan terdiri dari dua bagian.
1. Pertama adalah kesalahan pemotongan lokal yang terjadi dari pemakaian suatu
metode pada satu langkah.
2. Kedua adalah kesalahan pemotongan menyebar yang ditimbulkan dari
perkiraan yang dihasilkan pada langkah-langkah berikutnya. Gabungan dari
kedua kesalahan tersebut dikenal dengan kesalahan pemotongan global.

Besar dan sifat kesalahan pemotongan pada metode Euler dapat dijelaskan
dari deret Taylor. Untuk itu dipandang persamaan diferensial berbentuk:



sedang x dan y adalah variabel bebas dan tak bebas.
Penyelesaian dari persamaan tersebut dapat diperkiraan dengan deret Taylor:


Apabila persamaan (4) disubstitusikan ke persamaan (5), akan menghasilkan:


Perbandingan antara persamaan (3) dan persamaan (6) menunjukkan
bahwa metode Euler hanya memperhitungkan dua suku pertama dari ruas kanan
persamaan (6). Kesalahan yang terjadi dari metode Euler adalah karena tidak
memperhitungkan suku-suku terakhir dari persamaan (6) yaitu sebesar:


dengan c
t
adalah kesalahan pemotongan lokal eksak. Untuk Ax yang sangat kecil,
kesalahan seperti yang diberikan oleh persamaan (7)adalah berkurang
dengan bertambahnya order (order yang lebih tinggi). Dengan demikian suku
) 4 ....( ) y , x ( f ' y =
dx
dy
' y =
) 5 ...( R
! n
x
y ...
! 2
x
y
! 1
x
y y y
2
' ' '
1
n

n
n
i i i i i
+ + + + + =
+
) 6 ...( R ...
! 3
x
) y , x ( ' ' f
! 2
x
) y , x ( ' f
! 1
x
) y , x ( f y y
3 2
1 n i i i i i i i i

+ + + + + =
+
) 7 ...( R ...
! 3
x
) y , x ( ' ' f
! 2
x
) y , x ( ' f
3 2
n i i i i t

+ + + = c
7

yang mengandung pangkat lebih besar dari dua dapat diabaikan, sehingga
persamaan (7) menjadi:


dengan c
a
adalah perkiraan kesalahan pemotongan lokal.

2. Metode Heun
Metode Heun merupakan Perbaikan Metode Euler, Metode Euler
mempunyai ketelitian yang rendah karena galatnya besar (sebanding dengan h).
Kekurangan galat ini diperbaiki dengan menggunakan metode Heun.
Pada metode Heun, solusi dari metode Euler dijadikan sebagai solusi
perkiraan awal (predictor) selanjutnya perkiraan awal diperbaiki dengan metode
Heun (corrector). Metode Heun diturunkan sbb :
Pandang PDB (Persamaan Differensial Biasa) orde satu




Persamaan (*), suku


Bersesuaian dengan aturan trapesium pada integrasi numerik. Dapat dibuktikan
bahwa galat perlangkah metode Heun sama dengan galat kaidah trapezium
Galat Metode Heun :



Bukti:
Misalkan ;
Y
r+1
adalah nilai y sejati di x
r+1

y
r+1
adalah hampiran nilai y di x
r+1
) 8 ...(
! 2
x
) y , x ( ' f
2

i i a
= c
) ( , ( ) ( ' x y x f x y =
...(*) )] , ( ) , ( [ :
) , ( : Pr
1
) 0 (
1 2 1
1
) 0 (
+
+ +
+
+ + =
+ =
r
r r r
h
r r
r r r
r
y x f y x f y y Corrector
y x hf y y edictor
( ) ( ) | | 1
) 0 (
1
, ,
2
+
+
+ r
r r r
y x f y x f
h
( )
3
1
' '
3
), (
12
h O
x t x t y
h
E
r r p
=
< < =
+
8

Uraikan Y
r+1
di sekitar x
r

Menghasilkan:


Dengan menyatakan

Persamaan menjadi


Dari persamaan (*)


Uraikan

Dengan menggunakan Deret Taylor di sekitar x
r ,
menghasilkan:


Persamaan (*) menjadi


Galat perlangkah = nilai sejati-nilai hampiran




3. Metode Poligon
Metode Poligon dapat juga disebut sebagai modifikasi dari metode Euler. Metode
Euler digunakan untuk memprediksi kemiringan nilai y pada titik tengah interval.
Untuk itu pertama kali dihitung nilai y
i + 1/2
berikut ini. Gambar 2 adalah
penjelasan dari metode tersebut.
) 1 ...( ... ' ' '
6
' '
2
' ) (
3 2
1 1
+ + + + =
+ r r r r
y
h
y
h
hy y x Y
maka f y x f y
r r r r
, ) , ( ' = =
) 2 ...( ... ' '
6
'
2
) (
3 2
1
+ + + + =
+ r r r r r
f
h
f
h
hf y x Y
)] , ( ) , ( [ 1
) 0 (
1
2
1
+
+ +
+ + = r
r r r
h
r r
y x f y x f y y
) , ( 1
) 0 (
1
+
+
r
r
y x f
) 3 ...( ... ' '
4
'
2
) , (
3 2
1
0 (
1 r r r r
r
r
f
h
f
h
hf y y x f + + + = +
+
) 4 ...( ... ' '
4
'
2
3 2
1
+ + + + =
+ r r r r r
f
h
f
h
hf y y
1 1 + +
=
r r
y Y
1
3
), ( ' '
12
+
< < =
r r r
x t x t f
h
9

2

) , (
i i i
2
1
i
x
y x f y y + =
+

Gambar 2. Metode Euler yang dimodifikasi (Poligon)

Kemudian nilai tersebut digunakan untuk mengestimasi kemiringan pada
titik tengah interval, yaitu :
) , (
2
1
i
2
1
i
'
2
1
i + + +
= y x f y
Kemiringan tersebut merupakan perkiraan dari kemiringan rerata pada interval,
yang kemudian digunakan untuk ekstrapolasi linier dari x
i
ke x
i + 1
dengan
menggunakan metode Euler:
x y x f y y ) , (
2
1
i
2
1
i
i 1 i
+ +
+
+ =
4. Metode Runge-Kutta
Pada metode Euler memberikan hasil yang kurang teliti maka untuk
mendapatkan hasil yang lebih teliti perlu diperhitungkan suku yang lebih banyak
dari deret Taylor atau dengan menggunakan interval Ax yang kecil. Kedua cara
tersebut tidak menguntungkan. Penghitungan suku yang lebih banyak
memerlukan turunan yang lebih tinggi dari fungsi nilai y (x), sedang penggunaan
Ax yang kecil menyebabkan waktu hitungan lebih panjang.
10

Metode Runge-Kutta memberikan hasil ketelitian yang lebih besar dan
tidak memerlukan turunan dari fungsi, bentuk umum dari metode Runge-Kutta
adalah:
x x y x y y ) , , (
i i i 1 i
+ =
+
(12)
dengan u(x
i
, y
i
, Ax) adalah fungsi pertambahan yang merupakan kemiringan
rerata pada interval.
Fungsi pertambahan dapat ditulis dalam bentuk umum:
n n 2 2 1 1
... k a k a k a + + + = (13)
dengan a adalah konstanta dan k adalah:
k
1
= f (x
i
, y
i
)
k
2
= f (x
i
+ p
1
Ax, y
i
+ q
11
k
1
Ax)
k
3
= f (x
i
+ p
2
Ax, y
i
+ q
21
k
1
Ax + q
22
k
2
Ax)
k
n
= f (x
i
+ p
n 1
Ax, y
i
+ q
n 1, 1
k
1
Ax + q
n 1, 2
k
2
Ax + .+ q
n 1, n 1
k
n 1
Ax)
Persamaan tersebut menunjukkan bahwa nilai k mempunyai hubungan berurutan.
Nilai k
1
muncul dalam persamaan untuk menghitung k
2
, yang juga muncul
dalam persamaan untuk menghitung k
3
, dan seterusnya. Hubungan yang berurutan
ini membuat metode Runge-Kutta adalah efisien dalam hitungan.
Ada beberapa tipe metode Runge-Kutta yang tergantung pada nilai n yang
digunakan.
Untuk n = 1, yang disebut Runge-Kutta order satu, persamaan (13) menjadi:
) , (
i i 1 1 1
y x f a k a = =
Untuk a
1
= 1 maka persamaan (12) menjadi:
x y x f y y ) , (
i i i 1 i
+ =
+

yang sama dengan metode Euler.

Di dalam metode Runge-Kutta, setelah nilai n ditetapkan, kemudian nilai
a, p dan q dicari dengan menyamakan persamaan (8.19) dengan suku-suku dari
deret Taylor.
1) Metode Runge-Kutta order 2
Metode Runge-Kutta order 2 mempunyai bentuk:
11

x k a k a y y ) (
2 2 1 1 i 1 i
+ + =
+
(8.22a)
dengan:
) , (
i i 1
y x f k = (8.22b)
) , (
1 11 i 1 i 2
x k q y x p x f k + + = (8.22c)
Nilai a
1,
a
2
, p
1
dan q
11
dievaluasi dengan menyamakan persamaan (8.22a) dengan
deret Taylor order 2, yang mempunyai bentuk:
2

) , ( '
1

) , (
i i i i i 1 i
x
y x f
x
y x f y y + + =
+
(15)
dengan ) , ( '
i i
y x f dapat ditentukan dari hukum berantai (chain rule) berikut:
dx
dy
y
f
x
f
y x f
c
c
+
c
c
= ) , ( '
i i
(16)
Substitusi persamaan (16) ke dalam persamaan (15) menghasilkan:
2

) (
1

) , (
i i i 1 i
x
dx
dy
y
f
x
f x
y x f y y
c
c
+
c
c
+ + =
+
(17)
Dalam metode Runge-Kutta ini dicari nilai a
1
, a
2
, p
1
dan q
11
sedemikian
sehingga persamaan (8.22a) ekivalen dengan persamaan (17). Untuk itu
digunakan deret Taylor untuk mengembangkan persamaan (8.22c). Deret Taylor
untuk fungsi dengan dua variabel mempunyai bentuk:
... ) , ( ) , ( +
c
c
+
c
c
+ = + +
y
g
s
x
g
r y x g s y r x g
Dengan cara tersebut, persamaan (8.22c) dapat ditulis dalam bentuk:
) ( ) , ( ) , (
2
1 11 1 i i 1 11 i 1 i
x 0
y
f
x k q
x
f
x p y x f x k q y x p x f +
c
c
+
c
c
+ = + +
Bentuk diatas dan persamaan (8.22b) disubstitusikan ke dalam persamaan (8.22a)
sehingga menjadi:

) x ( 0
x
f
) y , x ( f x q a
x
f
x p a ) y , x ( f x a ) y , x ( f x a y y
3 2
11 2
2
1 2 2 1 1


i i
i i i i i i
+
c
c
+
c
c
+ + + =
+

atau
12


| |
) ( ) , (
) , ( ) , (
3 2
i i 11 2 1 2
i i 2 i i 1 i 1 1
x 0 x
x
f
y x f q a
x
f
p a
x y x f a y x f a y y
+
(

c
c
+
c
c
+
+ + =
+
(8.26)
Dengan membandingkan persamaan (17) dan persamaan (8.26), dapat
disimpulkan bahwa kedua persamaan akan ekivalen apabila:
a
1
+ a
2
= 1. (8.27a)
a
2
p
1
=
2
1
. (8.27b)
a
2
q
11
=
2
1
. (8.27c)
Sistem persamaan diatas yang terdiri dari tiga persamaan mengandung
empat bilangan tak diketahui, sehingga tidak bisa diselesaikan. Untuk itu salah
satu bilangan tak diketahui ditetapkan, dan kemudian dicari ketiga bilangan yang
lain. Dianggap bahwa a
2
ditetapkan, sehingga persamaan (8.27a) sampai
persamaan (8.27c) dapat diselesaikan dan menghasilkan:
2 1
1 a a = (8.28a)
2
11 1
2
1
a
q p = = (8.28b)
Karena nilai a
2
dapat dipilih sembarang, maka akan terdapat banyak metode
Runge-Kutta order 2.
Dibawah ini merupakan 3 metode Runge-Kutta order 2 yang sering
digunakan.
a) Metode Heun
Apabila a
2
dianggap
2
1
, maka persamaan (8.28a) dan persamaan (8.28b)
dapat diselesaikan dan diperoleh:
. 1
.
2
1
11 1
1
= =
=
q p
a

Parameter tersebut apabila disubstitusikan ke dalam persamaan (8.22a) akan
menghasilkan:
13

x k k y y )
2
1
2
1
(
2 1 i 1 i
+ + =
+
(8.29a)
dengan:
) , (
i i 1
y x f k = (8.29b)
) , (
1 i i 2
x k y x x f k + + = (8.29c)
dimana k
1
adalah kemiringan fungsi pada awal interval dan k
2
adalah kemiringan
fungsi pada akhir interval. Dengan demikian metode Runge-Kutta order 2 adalah
sama dengan metode Heun.
b) Metode Poligon (a
2
= 1)
Apabila a
2
dianggap 1, maka persamaan (8.28a) dan persamaan (8.28b) dapat
diselesaikan dan diperoleh:
.
2
1
. 0
11 1
1
= =
=
q p
a

Parameter tersebut apabila disubstitusikan ke dalam persamaan (8.22a) akan
menghasilkan:
x k y y
2 i 1 i
+ =
+
(8.30a)
dengan:
) , (
i i 1
y x f k = (8.30b)
)
2
1
,
2
1
(
1 i i 2
x k y x x f k + + = (8.30c)
c) Metode Ralston
Dengan memilih a
2
=
3
2
, akan menghasilkan kesalahan pemotongan minimum
untuk metode Runge-Kutta order 2. Dengan a
2
=
3
2
, didapat:
.
4
3
.
3
1
11 1
1
= =
=
q p
a

sehingga :
14

x k k y y )
3
2
3
1
(
2 1 i 1 i
+ + =
+
(8.31a)
dengan:
) , (
i i 1
y x f k = (8.31b)
)
4
3
,
4
3
(
1 i i 2
x k y x x f k + + = (8.31c)
Pada saat membahas metode Euler untuk penyelesaian persamaan
diferensial, kita telah sampai pada kesimpulan bahwa truncation error metode
Euler terus membesar seiring dengan bertambahnya iterasi. Dikaitkan dengan hal
tersebut, metode Runge-Kutta Orde Empat menawarkan penyelesaian persamaan
diferensial dengan pertumbuhan truncation error yang jauh lebih kecil.
Persamaan-persamaan yang menyusun metode Runge-Kutta Orde Empat
adalah











15

BAB III
METODE KERJA

3.1 Kasus
Saluran dengan tampang segi empat mempunyai lebar dasar B = 5m. Debit
Q = 10m
3
/s , kemiringan dasar saluran I
o
= 0.0005 dan koefisien manning n =
0.025. Kedalaman air diujung.
Hitung profil muka air disebelah hulu sepanjang 1500m dengan x =
100m , dengan metode:
1. Euler 4. Raltson
2. Heun 5. Runge kutta orde 3
3. Poligon 6. Runge kutta orde 4

Persamaan Profil muka air:
f(x,y) = I
o
(n
2
Q
2
/ A
2
R
4/3
) / 1 (Q
2
T / g A
3
)
Dengan: A = By T = B
P = B + 2y R = A / P
g= 9.81 m/s
2


3.2 Algoritma
3.2.1 Metode Euler
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode euler
16

3.2.2 Metode Heun
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode heun

3.2.3 Metode Poligon
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode poligon

3.2.4 Metode Raltson
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
17

n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode raltson

3.2.5 Metode Runge kutta orde 3
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode rungr kutta orde 3

3.2.6 Metode Runge kutta orde 4
1. Tentukan panjang saluran (L = 1500)
2. Tentukan selang (x = 100)
3. Tentukan beberapa konstanta
B = 5 m (Lebar dasar)
Q = 10 m
3
/s (Debit)
I
o
= 0.0005 (Kemiringan dasar saluran)
n = 0.025 (Koefisien manning)
y = 2.0 m (Kedalaman ujung hilir)
4. Masukkan angka atau konstanta-konstanta kedalam persamaan
5. Hitung dengan menggunakan metode runge kutta orde 4



18

3.3 Flowchart
3.3.1 Metode Euler
















NO

YES




Start
Input L, D
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
Do I = 1,10000
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
Y(I+1)=Y(I)+(F(I)*D)

TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
19

3.3.2 Metode Heun
















no

yes





Start
Input L, X
Do I = 1,10000
TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=F(I)*Y(I)
Y(I+1)=Y(I)+((((0.5*F(I))+(0.5*M(I))))*D)

20

3.3.3 Metode Poligon















no


yes





Start
Input L, D
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
Do I = 1,10000
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
Y(I+1)=Y(I)+(M(I)*D)

TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
21

3.3.4 Metode Raltson














no



yes





Start
Input L, D
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
Do I = 1,10000
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=(1/Y(I))*((3./4)*F(I))
Y(I+1)=Y(I)+((((1./3)*F(I))+((2./3)*M(I)))*D)

TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
22

3.3.5 Metode runge kutta orde 3
















no


yes





Start
Input L, D
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
Do I = 1,10000
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
X(I)=Y(I)*((F(I))*(2*M(I)))
Y(I+1)=Y(I)+(((1/6.)*(F(I)+(4*M(I))+X(I)))*D)

TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
23

3.3.6 Metode runge kutta orde 4

















no


yes




Start
Input L, D
O=0.0005
Q=10
I
o
=0.0005
n=0.025
y=2.0
Do I = 1,10000
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
X(I)=Y(I)*(0.5*M(I))
S(I)=Y(I)*X(I)
Y(I+1)=Y(I)+(((1/6.)*(F(I)+(2*M(I))+(2*X(I))+S(I)))*D)

TULIS J(I),Y(I)
IF J(I)==L/D
END IF
END DO
STOP
END
24

BAB IV
HASIL DAN PEMBAHASAN

4.1 Hasil
4.1.1 Metode Euler 4.1.2 Metode Heun 4.1.3 Metode Poligon
NO HASIL

1 2.000
2 1.995
3 1.991
4 1.985
5 1.980
6 1.973
7 1.967
8 1.959
9 1.952
10 1.943
11 1.934
12 1.923
13 1.912
14 1.900
15 1.887

4.1.4 Metode Ratlson 4.1.5 Runge kutta orde 3 4.1.6 Runge kutta orde 4
NO HASIL

1 2.000
2 1.997
3 1.995
4 1.992
5 1.989
6 1.985
7 1.982
8 1.979
9 1.975
10 1.971
11 1.967
12 1.963
13 1.958
14 1.954
15 1.949

NO HASIL

1 2.000
2 1.993
3 1.986
4 1.977
5 1.968
6 1.957
7 1.945
8 1.931
9 1.916
10 1.899
11 1.880
12 1.858
13 1.832
14 1.803
15 1.770
NO HASIL

1 2.000
2 1.995
3 1.991
4 1.985
5 1.980
6 1.974
7 1.967
8 1.960
9 1.952
10 1.944
11 1.935
12 1.925
13 1.915
14 1.903
15 1.891
NO HASIL

1 2.000
2 1.995
3 1.989
4 1.983
5 1.976
6 1.968
7 1.960
8 1.952
9 1.942
10 1.932
11 1.920
12 1.908
13 1.894
14 1.879
15 1.863
NO HASIL

1 2.000
2 1.996
3 1.992
4 1.988
5 1.983
6 1.978
7 1.973
8 1.968
9 1.962
10 1.956
11 1.949
12 1.942
13 1.934
14 1.926
15 1.917
25

4.2 Grafik

26

4.3 Pembahasan
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,

= dy/dx = f(x,y) dan nilai awal y(x


0
) = x
0
Misalkan
y
r
= y(x
r
)
adalah hampiran nilai di x
r
yang dihitung dengan metode euler. Dalam hal ini
x
r
= x
0
+ rh, r = 1, 2, 3,n
metode euler diturungkan dengan cara menguraikan y(x
r+1
) d
i se
kitar x
r
ke dalam
deret taylor :
y(x
r+1
)=y(x
r
)+
( )
1
1!
r
r
x x
+

y(x
r
)+
( )
2
1
2!
r r
x x
+

y(x
r
)+ (1)
bila persamaan di atas dipotong samapai suku orde tiga, peroleh
y(x
r+1
) = y(x
r
) +
( )
1
1!
r
r
x x
+

y(x
r
) +
( )
2
1
2!
r r
x x
+

y(t), x
r
<t<x
r+1

(2)
berdasarkan persamanan bentuk baku PDB orde orde satu maka
y(x
r
) = f(x
r
, y
r
)
dan
x
r+1
x
r
= h
maka persamaan 2 dapat ditulis menjadi
y(x
r+1
) y(x
r
)+hf(x
r
,y
r
)+
2
2
h
y(t) (3)
dua suku pertama persamaan di atas yaitu :

27

y(x
r+1
) = y(x
r
) + hf(x
r
, y
r
) ; r = 0, 1, 2,,n (4)
atau dapat ditulis
y
r+1
= y
r
+ hf
r
yang

merupakan 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)
28

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,
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)

Dan berdasarkan hasil dari perhitungan yang telah kita buat menggunakan
program fortran, disitu bisa kita lihat bahwa masing-masing dari metode tersebut
mempunyai nilai yang berbeda-beda, hal itu bisa kita lihat berdasarkan hasil
output program dari masing-masing metode. Dimana Metode euler-lah yang
memang memiliki tingkat ketelitian yang rendah.
Dan jika kita lihat dari grafik yang telah ditampilkan perbedaannya sangat
signifikan antara metode euler dengan metode-metode yang lainnya (heun,
polygon, raltson metode runge kutta orde 3, dan metode runge kutta orde 4). Dan
dari grafik juga bisa kita lihat pperbedaan kedalaman dari masing-masing nilai
hasil perhitungan, dan tiap metode juga telah dibedakan dengan warna-warna.
Dan pada pengerjaan ini juga seharusnya digunakan nilai error atau galat
agar diketahui perbandingan dari masing-masing metode dan tingkat ketilitian dari
metode-metode tersebut.



5 m

1500 m
2 m
dan dapat dilihat pada grafik
disamping dan berdasarkan hasil
perhitungan maka dapat disimpulkan
bahwa kedalaman air semakin
menngalami pendangkalan.

29

BAB V
PENUTUP

5.1 Kesimpulan
1. Untuk menyelesaikan kasus profil muka air ini dengan menggunakan
metode euler, heun, polygon, raltson, runge kutta orde 3 dan runge kutta
orde 4. Anda terlebih dahulu mengerti perbedaan dari masig-masing
metode ini dan juga mengetahui persamaannya sehingga dapat
dimasukkan kedalam pemrograman untuk menghitung nilainya dengan
cepat dan singkat.
2. Dari praktikum yang telah dikerjakan maka dapat anda lihat hasil
perhitungannya dari masing-masing metode dan juga dari grafik bisa anda
lihat perbedaannya masing-masing.

5.2 Saran
Mungkin bisa juga untuk menggunakan metode deret taylor untuk
menyelesaikan kasus ini dan juga dicari nilai errornya sehingga bisa dibandingkan
metode mana yang benar-benar akurat dalam perhitungannya.












30

DAFTAR PUSTAKA

Agus Setiawan, ST, MT. 2006.Pengantar Metode Numerik. yogyakata : penerbit
Andy Yogyakarta.
Drs. Sahid, M.Sc. 2005. Pengantar Komputasi Numerik dengan Matlab.
yogyakata : penerbit Andy Yogyakarta.
Rinaldi Munir. 2008. Metode Numerik, Revisi kedua. Bandung : informatika
Bandung.























31

LAMPIRAN

Script Program
PROGRAM PROFIL_MUKA_AIR
IMPLICIT REAL (Q,B,I,F,X,M,N,Y,A,P,R,G,C,E)
PARAMETER (H=10000)
DIMENSION F(H),X(H),J(H),Z(H),M(H),Y(H),A(H),P(H),R(H),C(H),E(H),S(H)
WRITE(*,*)'INI ADALAH PROGRAM UNTUK MENGHITUNG PROFIL MUKA AIR'
WRITE(*,*)''
WRITE(*,*)'MASUKKAN PANJANG SALURAN :'
READ(*,*)L
WRITE(*,*)'MASUKKAN SELANGNYA (DELTA X) :'
READ(*,*)D
WRITE(*,*)''
7 WRITE(*,*)'ANDA INGIN MENGGUNAKAN METODE APA?'
WRITE(*,*)'1. METODE EULER'
WRITE(*,*)'2. METODE HEUN'
WRITE(*,*)'3. METODE POLIGON'
WRITE(*,*)'4. METODE RALTSON'
WRITE(*,*)'5. METODE RUNGE KUTTA ORDE 3'
WRITE(*,*)'6. METODE RUNGE KUTTA ORDE 4'
WRITE(*,*)''
WRITE(*,*)'MASUKKAN PILIHAN ANDA :'
READ(*,*)K
Q=10.0 !DEBIT
B=5.0 !LEBAR
O=0.0005 !KEMIRINGAN
N=0.025 !KOEFFISIEN MANNING
Y(1)=2.0 !KEDALAMAN
G=9.81 !GRAVITASI
IF(K==1)THEN
WRITE(*,*)'ANDA MEMILIH METODE EULER'
WRITE(*,*)''
OPEN(3,FILE='EULER.TXT',STATUS='UNKNOWN')
WRITE(3,*)' NO HASIL'
WRITE(3,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I=1,H
A(I)=B*Y(I) !====\
P(I)=B+(2*Y(I)) !=====> TETAPAN RUMUS
R(I)=A(I)/P(I) !====/
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I !NOMER
F(I)=C(I)/E(I) !F(X,Y) atau K1
Y(I+1)=Y(I)+(F(I)*D) !HASIL
WRITE(3,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==(L/D)) THEN
WRITE(*,*)''
GO TO 1
END IF
END DO
ELSE IF(K==2)THEN
WRITE(*,*)'ANDA MEMILIH METODE HEUN'
WRITE(*,*)''
32

OPEN(4,FILE='HEUN.TXT',STATUS='UNKNOWN')
WRITE(4,*)' NO HASIL'
WRITE(4,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I =1,H
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=F(I)*Y(I) !K2
Y(I+1)=Y(I)+((((0.5*F(I))+(0.5*M(I))))*D)
WRITE(4,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==L/D) THEN
WRITE(*,*)''
GO TO 1
END IF
END DO
ELSE IF(K==3)THEN
WRITE(*,*)'ANDA MEMILIH METODE POLIGON'
WRITE(*,*)''
OPEN(5,FILE='POLIGON.TXT',STATUS='UNKNOWN')
WRITE(5,*)' NO HASIL'
WRITE(5,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I =1,H
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
Y(I+1)=Y(I)+(M(I)*D)
WRITE(5,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==L/D) THEN
WRITE(*,*)''
GO TO 1
END IF
END DO
ELSE IF(K==4)THEN
WRITE(*,*)'ANDA MEMILIH METODE RALTSON'
WRITE(*,*)''
OPEN(10,FILE='RALTSON.TXT',STATUS='UNKNOWN')
WRITE(10,*)' NO HASIL'
WRITE(10,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I =1,H
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
33

J(I)=1*I
F(I)=C(I)/E(I)
M(I)=(1/Y(I))*((3./4)*F(I))
Y(I+1)=Y(I)+((((1./3)*F(I))+((2./3)*M(I)))*D)
WRITE(10,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==L/D) THEN
WRITE(*,*)''
GO TO 1
END IF
END DO
ELSE IF(K==5)THEN
WRITE(*,*)'ANDA MEMILIH METODE RUNGE KUTTA ORDE 3'
WRITE(*,*)''
OPEN(8,FILE='ORDE 3.TXT',STATUS='UNKNOWN')
WRITE(8,*)' NO HASIL'
WRITE(8,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I =1,H
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
X(I)=Y(I)*((F(I))*(2*M(I))) !K3
Y(I+1)=Y(I)+(((1/6.)*(F(I)+(4*M(I))+X(I)))*D)
WRITE(8,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==L/D) THEN
WRITE(*,*)''
GO TO 1
END IF
END DO
ELSE IF(K==6)THEN
WRITE(*,*)'ANDA MEMILIH METODE RUNGE KUTTA ORDE 4'
WRITE(*,*)''
OPEN(9,FILE='ORDE 4.TXT',STATUS='UNKNOWN')
WRITE(9,*)' NO HASIL'
WRITE(9,*)''
WRITE(*,*)' NO HASIL'
WRITE(*,*)''
DO I =1,H
A(I)=B*Y(I)
P(I)=B+(2*Y(I))
R(I)=A(I)/P(I)
C(I)=O-(((N**2)*(Q**2))/((A(I)**2)*(R(I)**(4./3))))
E(I)=1.0-(((Q**2)*B)/(G*(A(I)**3)))
J(I)=1*I
F(I)=C(I)/E(I)
M(I)=Y(I)*(0.5*F(I))
X(I)=Y(I)*(0.5*M(I))
S(I)=Y(I)*X(I) !K4
Y(I+1)=Y(I)+(((1/6.)*(F(I)+(2*M(I))+(2*X(I))+S(I)))*D)
WRITE(9,2)J(I),Y(I)
WRITE(*,2)J(I),Y(I)
IF (J(I)==L/D) THEN
WRITE(*,*)''
34

GO TO 1
END IF
END DO
ELSE
WRITE(*,*)''
WRITE(*,*)'SORRY SOB! PILIHAN LOE SALAH!!!'
WRITE(*,*)''
GO TO 7
END IF
2 FORMAT(I5,F10.3)
1 END

script grafik

a=[2,1.995,1.991,1.985,1.98,1.973,1.967,1.959,1.952,1.943,1.934,1.923,1.
912,1.9,1.887];

b=[2,1.993,1.986,1.977,1.968,1.957,1.945,1.931,1.916,1.899,1.88,1.858,1.
832,1.803,1.77];

c=[2,1.995,1.991,1.985,1.98,1.974,1.967,1.96,1.952,1.944,1.935,1.925,1.9
15,1.903,1.891];

d=[2,1.997,1.995,1.992,1.989,1.985,1.982,1.979,1.975,1.971,1.967,1.963,1
.958,1.954,1.949];

e=[2,1.996,1.992,1.988,1.983,1.978,1.973,1.968,1.962,1.956,1.949,1.942,1
.934,1.926,1.917];

f=[2,1.995,1.989,1.983,1.976,1.968,1.96,1.952,1.942,1.932,1.92,1.908,1.8
94,1.879,1.863];

g=[100,200,300,400,500,600,700,800,900,1000,1100,1200,1300,1400,1500];

plot(g,a,'-r*',g,b,'-b*',g,c,'-g*',g,d,'-y*',g,e,'-m*',g,f,'-
k*','LineWidth',3)
xlabel('Panjang Saluran (Meter)')
ylabel('Kedalaman (Meter)')
title('Merah(Euler), Biru(Heun), Hijau(Poligon), Kuning(Raltson),
Ungu(Orde 3), Hitam(Orde 4)')

You might also like