KOMPUTASI BIOMEDIS
Modul II : Persamaan Non Linier Metode Tertutup
(Biseksi dan Regula Falsi)
Pelaksanaan Praktikum
Hari : Rabu
Dosen Asistensi
Jam : 13.00-14.40
DisusunOleh :
Nama
NIM
: 081311733041
perhitungan
yang
diperkenankan
serta
bentuk
kriteria
|xi-xi-1|<toleransi
|f(x)|<toleransi
masalah
yang
melibatkan
persamaan
tak
linier,
diantaranya:
a. Metode Biseksi
Metode Biseksi (bagidua), disebut juga pemotongan biner (binary
chopping), pembagian 2 (interval halving) atau metode Bolzano,
merupakan suatu jenis pencarian inkremental dimana interval
senantiasa dibagi separuhnya. Jika suatu fungsi berubah tanda
2|
3|
Blood Rheology
Darah berperilaku sebagai fluida non - newtonian, dan dapat
dimodelkan sebagai " Casson Fluid". Model ini memprediksi bahwa
tidak seperti cairan sederhana seperti air , darah akan mengalir melalui
tabung sehingga inti pusat akan bergerak sebagai plug dengan
deformasi kecil , dan sebagian besar gradien kecepatan akan terjadi di
dekat dinding pembuluh darah. persamaan berikut digunakan untuk
menggambarkan aliran plug cairan Casson :
5|
berderajat tidak sama dengan satu atau mengandung nilai fungsi non
linear. Penyelesaian persamaan non linier bisa menggunakan 2 jenis
metode yaitu metode terbuka atau metode tertutup. Pada praktikum kali ini
menggunakan metode tertutup.
Metode tertutup atau metode pengurung merupakan metode untuk
menentukan akar persamaan fungsi dengan mengurung akar sejati dalam
suatu interval. Cara yang digunakan dengan mengurangi lebar selang
secara sistematis sehingga lebar selang tersebut semakin sempit dan
menuju akar yang benar. Kondisi ini akan terjadi manakala nilai f(x1). f(x2)
< 0 atau dengan kata lain f(x1) berlainan tanda dengan f(x2), ada yang
positif dan ada yang negatif.
Pada percobaan pertama yaitu membut program Metode Biseksi
(bagidua). Metode Biseksi merupakan metode untuk menyelesaikan
persamaan non linier dengan membuat dua buah bagian interval dari
domain penyelesaian persamaan non linier tersebut. Proses pembagian
interval tersebut di awali dengan penentuan interval yang memuat solusi
(akar) untuk f(x). Dari dua bagian ini dipilih bagian mana yang
mengandung dan bagian yang tidak mengandung akar akan dibuang.
Setelah diketahui dibagian mana terdapat akar, maka batas bawah dan
batas atas di perbaharui sesuai dengan range dari bagian yang mempunyai
akar. Hal ini dilakukan berulang-ulang hingga diperoleh akar persamaan.
Pencarian akar pada suatu persamaan tidak akan pernah menemukan
nilai dengan kesalahannya sama dengan nol. Sehingga hanya dilakukan
pendekatan dengan tingkat ketelitian tertentu. Untuk menghindari
pencarian akar secara terus-menerus tanpa henti, diperlukan suatu syarat
agar proses tersebut dapat dihentikan. Maka perlu adanya harga toleransi
atau toleransi error untuk menghentikan pencarian terus menerus.
Dalam percobaan ini akan mencari akar dari persamaan f(x) = x2 x
6 dengan menggunakan metode Biseksi. Pertama akan membuat program
dengan menggunakan beberapa bentuk perulangan yaitu for dan while.
Berikut Listing Program beserta algoritmanya.
For
6|
Listing Program :
Untuk
bilangan
bulat
Untuk bilangan
desimal atau
pecahan
Hasil Eksekusi :
7|
Output (i,a,b,c,error)
Tidak
b=c
Algoritma : Ya
1) Start
f(c)*f(b) nilai
<0 a dan b.
2) Tentukan
Input (a)a = c
Input (b)
3) Hitung f(a) dan f(b).
f(a)a2-a-6
f(b)b2-b-6
4) for i = 1:20
5) Hitung c.
(a+ b)
c
2
Interval Baru
Flowchat :
Start
Input (a,b)
f(a)=a2-a-6
f(b)=b2-b-6
for i = 1 sampai 20
6) Hitung f(c).
f(c)c2-c-6
c=
7) Hitung nilai error.
f(c)=c2-c-6
error abs(f(c))
error = abs(f(c))
8) Tampilkan nilai i, a, b, c, error.
Output (i)
Output (a)
Output (b)
Output (c)
Output (error)
9) Jika f(c)*f(b)<0 maka a = c.
10) Jika tidak, b = c.
11) Perhitungan atau program akan dihentikan apabila telah mencapai
iterasi ke-20. Jika terpenuhi ulangi langkah 5.
12) End
i
While dengan syarat i < 20
Listing Program :
End
8|
Tidak
Output (i,a,b,c,error)
Ya
Hasil Eksekusi :
Start
Tidak
f(c)*f(b) <0
b=c
Ya
i=0
error = 1
a = cInput (a,b)
f(a)=a2-a-6
f(b)=b2-b-6
i<20
i=i+1
c=
f(c)=c2-c-6
error = abs(f(c))
Algoritma :
1) Start
2) Tentukan nilai a dan b.
Input (a)
Input (b)
End
Flowchat :
9|
i
10 |
Hasil Eksekusi :
Ya
Start
i=0
error = 1
Tidak
f(c)*f(b) <0
Ya
Input (a,b)
b=c
a=c
f(a)=a2-a-6
f(b)=b2-b-6
error>0.001
Analisis : Pada program di atas dengan menggunakan
metode biseksi dan
errorteliti
= abs(f(c))
proses iterasi terus menerus, dimana semakin
(kecil nilai toleransi
errornya) maka semakin besar jumlah iterasi yang dibutuhkan dan berlaku
sebaliknya. Berikut algoritma dan flowchat.
Algoritma :
1) Start
Flowchat :
11 |
i
12 |
Logika
AND
Tidak
Output (i,a,b,c,error)
Hasil Eksekusi :
Ya
Start
i=0
error = 1
f(c)*f(b) <0
Ya
Input (a,b)
a=c
f(a)=a2-a-6
f(b)=b2-b-6
1)
2)
3)
4)
5)
6)
Algoritma :
Start
Tentukan nilai a dan b.
Input (a)
Input (b)
Hitung f(a) dan f(b).
f(a)a2-a-6
f(b)b2-b-6
while error>0.001 && i <100
Hitung i
i=i+1
Hitung c.
Flowchat&&
: i<100
error>0.001
End
i=i+1
c=
f(c)=c2-c-6
error = abs(f(c))
13 |
i
( a+b )
2
7) Hitung f(c).
f(c)c2-c-6
8) Hitung nilai error.
error abs(f(c))
9) Tampilkan nilai i, a, b, c,f(a),
f(b), f(c), error.
Tidak
Output (i)
Output (a)
b=c
Output (b)
Output (c)
Output (f(a))
Output (f(b))
Output (f(c))
Output (error)
10) Jika f(c)*f(b)<0 maka a = c. Jika tidak, b = c.
11) Perhitungan atau program akan dihentikan apabila salah satu atau kedua
syarat yaitu error>0.001 dan i<100 tidak terpenuhi. Jika kedua syarat
terpenuhi, maka ulangi langkah 5.
12) End
Analisis : diketahui bahwa pada logika AND, Output berlogika 1 apabila
kedua inputan berlogika 1 dan Output berlogika 0 apabila salah satu atau
kedua inputan berlogika 0. Dimana logika 1 artinya terpenuhinya syarat
(benar) dan logika 0 artinya tidak sesuai dengan syarat (salah). Pada
program di atas perulangan while akan berjalan apabila semua syarat
tepenuhi, tetapi akan berhenti apabila salah satu atau kedua syarat tidak
terpenuhi. Dengan menggunakan tolerasi error sama dengan 0.001
dibutuhkan 14 iterasi.
2. Tentukan a value of pada kasus diatas menggunakan Metode Biseksi !
Persamaan di atas merupakan merupakan penggambaran sifat darah
sebagai cairan non-newtonian menggunakan model Casson. Dengan nilai
F( )=0,4 ; batas bawah =0,05 dan batas atas =0,15 sehingga persamaan
yang menjadi :
F( ) = 1
16
4
3
1
- 21 4
14 |
dimana F( ) = 0.4
Maka didapakan
y = [1
y = 0.6
16
16
4
3
4
3
1
- 21 4] 0.4
1
- 21 4
( digambarkan dengan x) :
Metode Biseksi
Listing Program :
15 |
Hasil Eksekusi :
Algoritma :
1) Start
Flowchat :
Start
16 |
2) Definisikan fungsi y
yfungsicasson(x)
3) Tentukan nilai a dan b.
Input (a)
Input (b)
4) Hitung f(a) dan f(b).
f(a) fungsicasson(a)
f(b) fungsicasson(b)
5) Jika f(a)*f(b) > 0,
maka interval tidak mengandung
akar. Jika tidak, maka lanjut
langkah berikutnya.
6) while error>0.0001 && i <100
7) Hitung i
8) i=i+1
9) Hitung c.
( a+b )
10) c
2
i=0
error = 1
Input (a,b)
f(a)=fungsicasson(a)
f(b)=fungsicasson(b)
Ya
f(a)*f(b) >0
Tidak
Tidak
Ya
i=i+1
c=
End
(a+ b)
2
Output (i,a,b,c,f(a),f(b),f(c),error)
f(c)=fungsicasson(c)
17 |
Listing Program :
Hasil Eksekusi :
Start
1)
2)
3)
4)
5)
Algoritma :
Start
Definisikan fungsi y
yfungsicasson(x)
Tentukan nilai a dan b.
Input (a)
Input (b)
Hitung f(a) dan f(b).
f(a) fungsicasson(a)
f(b) fungsicasson(b)
Jika f(a)*f(b) > 0,
maka interval tidak mengandung
akar. Jika tidak, maka lanjut
i=0
error = 1
Flowchat :
Input (a,b)
f(a)= fungsicasson(a)
f(b)=fungsicasson(b)
f(a)*f(b) >0
Ya
Tidak
Tidak
Ya
i=i+1
c=
f(c)=fungsicasson(c)
error = abs(f(c))
End
18 |
Output (i,a,b,c,f(a),f(b),f(c),error)
Tidak
langkah berikutnya.
while error>0.0001 && i <100
Hitung i
i=i+1
Hitung c.
af ( b )bf (a)
c
f ( b )f (a)
6)
7)
8)
f(c)*f(b) <0
b=c
Ya
a=c
9) Hitung f(c).
f(c) fungsicasson(c)
10) Hitung nilai error.
error abs(f(c))
11) Tampilkan nilai i, a, b, c, error.
Output (i)
Output (a)
Output (b)
Output (c)
Output (f(a))
Output (f(b))
Output (f(c))
Output (error)
12) Jika f(c)*f(b)<0 maka a = c.
13) Jika tidak, b = c.
14) Perhitungan atau program akan dihentikan apabila salah satu atau kedua
syarat yaitu error>0.001 dan i<100 tidak terpenuhi. Jika kedua syarat
terpenuhi, maka ulangi langkah 7.
15) End
Analisis : pada hasil eksekusi dapat dilihat bahwa dengan menggunakan
Metode Regula Falsi, didapatkan akar pendekatan pada iterasi ke-5 dengan
nilai error = 0.000125. Namun jika di bandingkan metode Regula Falsi
memiliki proses iterasi lebih sedikit dibanding dengan metode Biseksi
yang hasil eksekusinya menunjukkan akar pendekatan pada iterasi ke-6.
4. Analisis kelemahan dan kelebihan Metode Biseksi dna Regula falsi !
Dari percobaan yang telah dilakukan, terdapat perbedaan dari hasil
iterasi yang dihasilkan dengan menggunakan metode Biseksi dan metode
Regula Falsi. Pada Metode Biseksi, berhasil menemukan akar (solusi)
yang dicari dari persamaan, atau dengan kata lain selalu konvergen serta
rumus yang digunakan simple. Namun metode Biseksi hanya dapat
19 |
dilakukan apabila ada akar persamaan pada interval yang diberikan. Jika
terdapat beberapa akar pada interval yang diberikan maka hanya satu akar
saja yang dapat ditemukan. Selain itu memiliki proses iterasi yang banyak
sehingga memperlama proses penyelesaian (kecepatan konvergensinya
sangat lambat). Dan harus tepat dalam pemilihan batas atas dan batas
bawah karena metode ini tidak memandang bahwa sebenarnya akar atau
solusi yang dicari dekat sekali dengan batas interval yang digunakan.
Sedangkan untuk metode Regula Falsi sama halnya dengan metode
Biseksi yang berhasil menemukan akar (solusi) yang dicari dari
persamaan, atau dengan kata lain selalu konvergen. Namun dalam
praktikum ini, metode Regula Falsi lebih bagus daripada biseksi. Dapat
dilihat bahwa dengan hasil akar dan error yang hampir sama jumlah iterasi
pada metode Regula Falsi lebih sedikit. Karena memiliki proses iterasi
yang lebih sedikit sehingga mempercepat proses penyelesaian atau dapat
dikatakan kecepatan konvergensinya terbilang cepat.
E. Daftar Pustaka
Abdia A., Gunaidi. 2006. The Shortcut of MATLAB Programming.
Bandung : Penerbit Informatika
Heru, Sutarno dan Rachmawati, Dewi. 2008. Hands-Out Metode Numerik.
Universitas Pendidikan Indonesia
Munir,R., 2003. Metode Numerik. Informatika Bandung
Subakti, Irfan. 2006. Metode Numerik. Surabaya : Institut Teknologi
Sepuluh Nopember
20 |
21 |