Metode Biseksi Menggunakan Program Mathlab
metode ini adalah metode table, dimana area
dibagi menjadi N bagian.
metode biseksi ini membagi range menjadi 2
bagian, dari dua bagian ini dipilih bagian mana yang mengandung dan bagian yang
tidak mengandung akar dibuang.Hal ini dilakukan berulang-ulang hingga diperoleh
akar persamaan.
Metode biseksi merupakan salah satu metode
tertutup untuk menentukan solusi akar dari persamaan non linear atau disebut juga
metode pembagian Interval atau metode yang digunakan untuk mencari akar-akar
persamaan nonlinear melalui proses iterasi, dengan prinsip utama sebagai
berikut:
- Menggunakan dua buah nilai
awal untuk mengurung salah satu atau lebih akar persamaan non linear.
- Nilai akarnya diduga melalui
nilai tengah antara dua nilai awal yang ada.Metode biseksi ini membagi range menjadi 2
bagian, dari dua bagian ini dipilih mana yang mengandung dan bagian yang tidak
mengandung akar dibuang. Hal ini dilakukan berulang - ulang hingga diperoleh
akar persamaan.
Untuk menggunakan metode biseksi, tentukan
batas bawah(a) dan batas atas(b). Kemudian dihitung nilai tengah: c = (a+b)/2
Dari nilai c ini perlu dilakukan pengecekan
keberadaan akar :
f(a) . f(b) < 0, maka b=c, f(b)=f(c), a
tetap
f(a) . f(b) > 0, maka a=c, f(a)=f(c), b
tetap
Setelah diketahui dibagian mana terdapat
akar, maka batas bawah & batas atas di perbaharui sesuai dengan range dari
bagian yg mempunyai akar.
Interval baru dibagi dua lagi dengan cara
yang sama. Begitu seterusnya sampai ukuran interval yang baru sudah sangat
kecil dan hal ini tentu saja sesuai dengan toleransi kesalahan yang diberikan.
Algoritma Metode Biseksi:
1. Definisikan fungsi f(x)yang akan dicari
akarnya
2. Tentukan nilai a dan b
3. Tentukantorelansie daniterasimaksimumN
4. Hitung f(a) dan f(b)
5. Jika f(a).f(b)> maka proses
dihentikan karena tidak ada akar, bila tidak dilanjutkan
6. Hitung c= Hitung f(c)
7. Bila f(c).f(a)<0maka b=c dan
f(b)=f(c), bila tidak a=x dan f(a)=f(c)
8. Jika b-a<e atau
iterasi>iterasi maksimum maka proses dihentikan dan didapatkan akar = c, dan
bila tidak, ulangi langkah6.
Metode biseksi dengan tolerasi error 0.001
dibutuhkan10 iterasi, semakin teliti (kecil toleransi errornya) maka semakin
besar jumlah iterasinya.
1.
Source Code
clc;
f=inline('x.^2 - x - 8');
c=input('Masukkan nilai Batas
Bawah (c) : ');
d=input('Masukkan nilai Batas
Atas (d) : ');
iterasi=input('Masukkan
nilaiiterasinya : ');
disp('------------------------------------------------------------------------------------------------------------');
disp(' i c d f(c) f(d) x f(x)');
disp('------------------------------------------------------------------------------------------------------------');
if f(c)*f(d)>0
disp('Tidak punya akar');
else
for iterasi = 1:1:iterasi
x=(c+d)/2;
fprintf('%3g %10.7f %10.7f %10.7f %10.7f %10.7f %10.7f\n',iterasi,c,d,f(c),f(d),x,f(x));
if f(x)*f(c)<0
d=x;
else
c=x;
end
iterasi=iterasi+1;
end
fprintf('Akarpersamaandiperoleh
di x = %10.7f \n',x);
end
x=linspace (-8,8);
y=f(x);
plot(x,y,'m')
grid on
1. Output Program
1.
PLOT
Penjelasan
1.
Clc
: Digunakan untuk menghapus lembar kerja bukan menghapus data-data pada output.
2.
Iterasi : banyak pengulangan yang
terjadi.
3.
Iterasi = Iterasi + 1 : Pengulangan yang akan terus dilanjutkan dengan kriteria yang ditambah 1
sampai mendekati nilai batas atas.
4.
Linspace : Titik koordinat untuk batas pada grafik.
5.
Plot(x,y,’m’) : grafik pada
titik koordinat.
6.
Grid on : menampilkan diagram
garis.
7.
For
: untuk pengulangan menjalankan program iterasi.
Program akan berjalan dengan mencari nilai f(c) dan f(d)
terlebih dahulu,lalu setelah itu jika f(c).f(d)>0 maka di sekitar c dan d tidak terdapat akar, jika tidak maka akan berlanjut yakni mencari titik x diantara c dan
d, setelah nilai x diperoleh maka akan di cek untuk menentukan nilai batas atas dan
bawah yg digunakan pada iterasi berikutnya.
Jika f(x).f(c)<0
maka untuk nilai batas bwh di ganti dengan nilai x yg diperoleh , begitu seterusnya hingga iterasi ke-20.