P. 1
Lap Prak Regula Falsi

Lap Prak Regula Falsi

|Views: 592|Likes:
Published by maulinasukma

More info:

Published by: maulinasukma on Dec 01, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

03/31/2015

pdf

text

original

1.

Judul Praktikum
Regula Falsi
2.Waktu Pelaksanaan
Hari/Tanggal :Selasa,1 November 2011
Materi :Regula Falsi
3.Tujuan
a. Memahami Metode Regula Falsi
b. Mampu Menentukan nilai akar persamaan dengan Metode Regula Falsi
c. Mampu membuat program untuk menentukan nilai akar dengan Metode Regula
Falsi dengan Matlab
4.Perangkat dan Materi
a. Software Matlab
b. Metode Regula Falsi
5.Dasar teori
Metode regula falsi dimulai dengan dua titik awal a0 dan b0sedemikian
sehingga f(a0) dan f(b0) berlawanan tanda. Berdasarkan teorema nilai antara, ini
berarti fungsi f memiliki akar dalam selang [a0, b0]. Metode ini kemudian berlanjut
dengan menghasilkan berturut-turut selang [ak, bk] yang semuanya berisi akar f.

Pada iterasi ke-k, bilangan

dihitung. Seperti yang diterangkan di bawah, ck adalah akar dari garis sekan melalui
(ak, f(ak)) dan (bk, f(bk)). Jika f(ak) dan f(ck) memiliki tanda yang sama, maka kita
menetapkan ak+1 = ck dan bk+1 = bk. Jika tidak, kita menetapkan ak+1 = ak dan bk+1
= ck. Proses ini diteruskan hingga akar dihampiri dengan cukup baik.


Proses dengan cara ini memberikan perhitungan yang lebih cepat dibandingkan
dengan metode bisection. Algoritma untuk metode ini sama dengan metode bisection,
hanya pada bagian menentukan nilai m disesuaikan dengan rumus yang ada.
6.Algoritma
1. Tentukan fungsi f(x), batas bawah a, batas atas b, toleransi, dan jumlah iterasi
maksimum.
2. Hitung f(a) dan f(b).
3. Periksa apakah f(a).f(b)> 0; jika ya, keluar dari progam karena pada interval yang
diberikan tidak terdapat akar persamaan.
4. Hitung nilai
) ( ) (
) )( (
a f b f
a b b f
b m


 
5. Jika nilai mutlak f(m) < toleransi, tuliskan m sebagai hasil perhitungan, dan akhiri
program; jika tidak, lanjutkan ke langkah berikutnya.
6. Jika jumlah iterasi > iterasi maksimum, akhiri program.
7. Jika f(a).f(m)<0, maka b = m, jika tidak, a = m.
8. Kembali ke langkah (2).


Diagram alir Regula Falsi
7.Source code












function m=regfalsi(f,a,b,n)
%f=fungsi,a=nilai awal,b=nilai akhir,n=jumlah iterasi
format long % angka yang dipakai 15 digit di belakang koma
fa = f(a);
fb = f(b);
if fa*fb > 0.0
error('pesan kesalahan:sama tanda')
end
disp(' m y ')
for i=1:n
m=b-((b-a)*fb/(fb-fa));
y=f(m);
disp([m y])
if abs(y) <= 0.000001 % akar persamaan ditemukan
break % menghentikan iterasi
end














8.Analisa dan Pembahasan
8.1 menyelesaikan persoalan 1 ) (
2 3
   x x x f dalam command window MATLAB,
ketikkan perintah:
>>f=inline(‘x^3-x^2-1’) % mendefinisikan fungsi f(x)=x3-x2 -1
>>x=regfalsi(f,1,2,20) % memanggil file regfalsi.m a=1,b=2,
iterasi=20
Hasilnya
m y
1.25000000000000 -0.60937500000000
1.43750000000000 -0.09594726562500
1.57812500000000 0.43980789184570
1.47265625000000 0.02505737543106
1.44628906250000 -0.06647393759340
1.45782470703125 -0.02700672448077
function m= TengahInterval(f,a,b,n)
% f=fungsi,a=nilai awal,b=nilai akhir,n=jumlah iterasi
format long % angka yang dipakai 15 digit di belakang koma
fa = f(a);
fb = f(b);
if fa*fb > 0.0 % jika nilai f(a) dan f(b) sama tanda
error('pesan kesalahan:sama tanda')
end
for i=1:n
m=(a+b)/2;
y=f(m);
disp([m y]) % menampilkan m dan f(m) ke layar
if abs(y) <= 0.000001 % toleransi dipenuhi (akar
persamaan ditemukan)
break % menghentikan iterasi
end
if fa*y < 0
b=m;
else
a=m;
end
end

1.46153259277344 -0.01413060394978
1.46431350708008 -0.00441245589910
1.46639919281006 0.00291058710115
1.46483492851257 -0.00258446469666
1.46522599458694 -0.00121226003640
1.46551929414272 -0.00018242496629
1.46573926880956 0.00059033482427
1.46557428780943 0.00001073416219
1.46553304255940 -0.00013413711025
1.46554335387191 -0.00009792037557
1.46555108735629 -0.00007075735056
1.46555688746957 -0.00005038481518
1.46556123755454 -0.00003510526367
x =
1.46556123755454
Dari perhitungan menggunakan matlab di atas didapat nilai x dengan metode
regula falsi yaitu1.46556123755454 yang merupakan nilai m pada iterasi
ke-18.
8.2 Soal
1. x e x f
x
4 ) (   dengan titik awal a = 0 dan b = 1, carilah nilai x dengan
program Matlab dengan Metode :
a. Biseksi
b. Regula Falsi

a)Dengan menggunakan metode biseksi
>> f=inline('exp(1)^x-4*x')
Untuk mendefinisikan fungsi f(x)=e
x
-4x
>> x=TengahInterval(f,0,1,30)
Untuk memanggil file TengahInterval.m dengan fungsi f(x), nilai a=0, nilai
b=1, dan iterasi maksimal 30
Hasil
m y
0.50000000000000 -0.35127872929987
0.25000000000000 0.28402541668774
0.37500000000000 -0.04500858538180
0.31250000000000 0.11683794117380
0.34375000000000 0.03522603492571
0.35937500000000 -0.00506613643492
0.35156250000000 0.01503657480070
0.35546875000000 0.00497433317255
0.35742187500000 -0.00004862845180
0.35644531250000 0.00246217132078
0.35693359375000 0.00120660109145
0.35717773437500 0.00057894372367
0.35729980468750 0.00026514698559
0.35736083984375 0.00010825660415
0.35739135742188 0.00002981341047
0.35740661621094 -0.00000940768710
0.35739898681641 0.00001020282008
0.35740280151367 0.00000039755609
x =
0.35740280151367
Dari perhitungan menggunakan matlab di atas didapat nilai x dengan metode
biseksi yaitu 0.35740280151367 yang merupakan nilai m pada iterasi ke-18.


b) Dengan menggunakan Regula Falsi
Command
>> x=regfalsi(f,0,1,30)
Untuk memanggil file regfalsi.m dengan fungsi f(x), nilai a=0, nilai b=1,
dan iterasi maksimal 30
Hasil
m y
0.43826622081230 -0.20304738383464
0.19207728030509 0.44345503763004
0.29997357686697 0.14992883308050
0.36058257129503 -0.00816561077095
0.32653645180219 0.08001296961888
0.34145771592564 0.04116623477573
0.34983949401196 0.01948182198458
0.35454782189271 0.00734462482181
0.35719264870681 0.00054060345893
0.35867833726840 -0.00327706126947
0.35784377581800 -0.00113293865849
0.35747801572510 -0.00019292813633
0.35731771543146 0.00021910700928
0.35738796963535 0.00003852140127
0.35742743379480 -0.00006291653980
0.35740526544337 -0.00000593569588
0.35739554980377 0.00001903730467
0.35739980784042 0.00000809246548
0.35740219972344 0.00000194439097
0.35740354332493 -0.00000150918657
0.35740278857859 0.00000043080428

x =
0. 35740278857859
Dari perhitungan menggunakan matlab di atas didapat nilai x dengan metode
regula falsi yaitu 0.35740278857859 yang merupakan nilai m pada iterasi ke-
21.
Berdasarkan perhitungan di atas diketahui bahwa untuk metode biseksi
membutuhkan 18 iterasi untuk dapat menemukan akar fungsi f(x) sedangkan
dengan menggunakan metode regula falsi membutuhkan 21 iterasi, tetapi

1. 2. x e x f
x
 

) ( dengan titik awal a = 0 dan b = 1, carilah nilai x dengan
program Matlab dengan Metode :
a. Biseksi
Command
>> f=inline('exp(1)^-x-x')
Untuk mendefinisikan fungsi f(x)= e
-x
-x
>> x=TengahInterval(f,0,1,30)
Untuk memanggil file TengahInterval.m dengan fungsi f(x), nilai a=0,
nilai b=1, dan iterasi maksimal 30
Hasil
m y
0.50000000000000 0.10653065971263
0.75000000000000 -0.27763344725899
0.62500000000000 -0.08973857148101
0.56250000000000 0.00728282473092
0.59375000000000 -0.04149754983698
0.57812500000000 -0.01717583918553
0.57031250000000 -0.00496376038939
0.56640625000000 0.00115520201502
0.56835937500000 -0.00190535961282
0.56738281250000 -0.00037534916914
0.56689453125000 0.00038985879737
0.56713867187500 0.00000723791185
0.56726074218750 -0.00018405985370
0.56719970703125 -0.00008841202725
0.56716918945313 -0.00004058732179
0.56715393066406 -0.00001667477100
0.56714630126953 -0.00000471844608
0.56714248657227 0.00000125972876
0.56714439392090 -0.00000172935969
0.56714344024658 -0.00000023481573
x =
0.56714344024658
Dari perhitungan menggunakan matlab di atas didapat nilai x dengan metode
biseksi yaitu 0.56714344024658 yang merupakan nilai m pada iterasi ke-20.
b. Regula Falsi
Command
>> x=regfalsi(f,0,1,30)
Untuk memanggil file regfalsi.m dengan fungsi f(x), nilai a=0, nilai b=1,
dan iterasi maksimal 30
Hasil
m y
0.61269983678028 -0.07081394787317
0.37540108999058 0.31161257922584
0.52079399341680 0.07325469650304
0.57710468864476 -0.01558289294854
0.55529554719195 0.01860707362931
0.56865800460041 -0.00237312389392
0.56348272266510 0.00574043861180
0.56665361706215 0.00076745630714
0.56788170497968 -0.00115704685765
0.56740606632878 -0.00041178793909
0.56711464260500 0.00004489544778
0.56729319787299 -0.00023492010297
0.56722404338855 -0.00012654963973
0.56718167244723 -0.00006014973470
0.56715571177839 -0.00001946602072
0.56713980568083 0.00000546107304
0.56714955134421 -0.00000981177026
0.56714577684719 -0.00000389660195
0.56714346421349 -0.00000027237530

x =
0.56714346421349

Dari perhitungan menggunakan matlab di atas didapat nilai x dengan metode
regula falsi yaitu 0.56714346421349 yang merupakan nilai m pada iterasi ke-
19.
Berdasarkan perhitungan di atas diketahui bahwa untuk metode biseksi
membutuhkan 20 iterasi untuk dapat menemukan akar fungsi f(x) sedangkan
dengan menggunakan metode regula falsi membutuhkan 19 iterasi
9.Kesimpulan:
1. Pada umumnya pencarian akar dengan menggunakan metode biseksi
selalu dapat menemukan akar, tetapi kecepatan untuk mencapai akar
hampiran sangat lambat. Untuk mempercepat pencarian akar tersebut,
maka nilai-nilai dari f (a) dan f (b) perlu diperhitungkan. Metode yang
memanfaatkan nilai f (a) dan f (b) ini adalah metode regula falsi

2. Perbedaan antara metode biseksi dengan metode regula falsi terletak
pada nilai m. Pada metose biseksi menggunakan rumus m=(a+b)/2
sedangkan pada metode regula falsi menggunakan rumus
) ( ) (
) )( (
a f b f
a b b f
b m


 
sehingga konvergensinya terjamin dan kecepatannya lebih baik dari
metode biseksi.






















LAPORAN PRAKTIKUM METODE NUMERIK


TENTANG:
REGULA FALSI


Disusun oleh :
Nama : Karina Rachma
NIM : M0509038
Kelas : B


JURUSAN INFORMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SEBELAS MARET
SURAKARTA
2011











3. Periksa apakah f(a).f(m)<0. Algoritma untuk metode ini sama dengan metode bisection. jika tidak. lanjutkan ke langkah berikutnya. 6. jika tidak. Kembali ke langkah (2). Hitung nilai mb f (b)(b  a) f (b)  f (a) 5. Jika jumlah iterasi > iterasi maksimum. toleransi. 7. dan akhiri program. tuliskan m sebagai hasil perhitungan. hanya pada bagian menentukan nilai m disesuaikan dengan rumus yang ada. keluar dari progam karena pada interval yang diberikan tidak terdapat akar persamaan. maka b = m. Jika nilai mutlak f(m) < toleransi. jika ya.f(b)> 0. akhiri program.Proses dengan cara ini memberikan perhitungan yang lebih cepat dibandingkan dengan metode bisection. 2. Jika f(a). 4.Algoritma 1. dan jumlah iterasi maksimum. Hitung f(a) dan f(b). . 8. Tentukan fungsi f(x). 6. batas atas b. a = m. batas bawah a.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->