You are on page 1of 13

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
mb

f (b)(b a)
f (b) f (a)

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

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

8.Analisa dan Pembahasan


end

8.1 menyelesaikan persoalan f ( x) x 3 x 2 1 dalam command window MATLAB,


if fa*y < 0
ketikkan perintah:
b=m;
>>f=inline(x^3-x^2-1) % mendefinisikan fungsi f(x)=x3-x2 -1
else
>>x=regfalsi(f,1,2,20) % memanggil file regfalsi.m a=1,b=2,
iterasi=20
a=m;

Hasilnya
m

end

end
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

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. f ( x) e x 4 x dengan titik awal a = 0 dan b = 1, carilah
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)=ex-4x
>> x=TengahInterval(f,0,1,30)

nilai

x dengan

Untuk memanggil file TengahInterval.m dengan fungsi f(x), nilai a=0, nilai
b=1, dan iterasi maksimal 30
Hasil
m

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

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 ke21.
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. f ( x) e x 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

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

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 ke19.
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
f (b)(b a)
mb
f (b) f (a)
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

You might also like