revisi laporan praktikum

Post on 28-Nov-2015

117 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Laprak

TRANSCRIPT

BAB I

PENDAHULUAN

1.1 Dasar Teori

Pencarian akar atau penyelesaian suatu persamaan non-linear, 𝑦 = 𝑓(π‘₯), adalah mencari suatu

harga π‘₯, yang apabila disubstitusikan ke dalam persamaan itu, akan memberikan harga fungsi

nol. Metode-metode numerik yang banyak digunakan untuk menyelesaikan persamaan non-

linear adalah metode biseksi, metode regula falsi, secant, newton –Raphson dan titik tetap.

Pada praktikum kali ini, membahas metode biseksi dan metode Newton-Raphson.

Metode Biseksi

Metode biseksi merupakan salah satu metode tertutup untuk mentukan 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:

o Menggunakan dua buah nilai awal untuk mengurung salah satu atau lebih akar

persamaan non linear.

o Nilai akarnya diduga melalui nilai tengah antara dua nilai awal yang ada.

Dalam metode Biseksi, interval yang mengandung akar dibagi menjadi dua secara

berurutan hinggga ukuran interval mengecil dan akhirnya mencapai harga toleransi

kesalahan yang diinginkan.

π‘₯ π‘₯ π‘₯

Dalam interval [a,b] terdapat sebuah akar (yang akan dicari), apabila dipenuhi:

𝑓 (π‘Ž) βˆ— 𝑓(𝑏) ≀ 0

Kelemahan metode biseksi

o Jika akar persamaan lebih dari satu, maka nilai tersebut hanya bisa ditemukan satu

persatu/tidak bisa sekaligus.

o Tidak dapat mencari akar kompleks (imajiner).

o Proses iterasi tergolong lambat.

Algoritma Metode Biseksi

o Langkah pertama, menentukan dua nilai x (xa dan xb ) sebagai nilai awal perkiraan.

Kedua nilai ini harus memenuhi syarat 𝑓 (xa) βˆ— (xb) ≀ 0.

o Langkah kedua, jika nilai awal telah didapatkan selanjutnya menentukan nilai x

(misal xc ) baru menggunakan persamaan π‘₯

o Langkah ketiga, mencari nilai f(xc )

o Langkah selanjutnya, melakukan langkah 2 dan 3 hingga didapatkan f(xc ) = 0 atau

kurang dari toleransi.

Metode Newton-Rapshon

Metode Newton Raphson biasa digunakan dalam mencari akar dari suatu persamaan non

linier, jika diasumsikan f mempunyai turunan kontinu f’. Metode Newton Rapshon sering

digunakan karena kesederhanaannya dan mempunyai konvergensi yang cepat. Karena

metode ini merupakan metode Terbuka, maka tetap diperlukan nilai tebakan awal untuk

Xo. Secara geometri, metode Newton Raphson hampir sama dengan metode regula falsi,

bedanya garis yang dipakai adalah garis singgung. Dengan menggunakan x0 sebagai

tebakan awal, dilanjutkan dengan mencari titik (x0, f(x0)). Kemudian dibuat garis

singgung dari titik (x0, f(x0)), sehingga diperoleh titik potong (x1, 0) antara sumbu-x dan

garis singgung titik (x0, f(x0)). Kemudian dilanjutkan lagi dengan mencari titik (x1, f(x1)).

Dari titik (x1, f(x1)) kemudian dibuat garis singgung, sehingga diperoleh titik potong (x2,

0) antara sumbu-x dan garis singgung titik (x1, f(x1)).

Algoritma Metode Newton-Raphson:

o Definisikan fungsi f(x) dan f’(x)

o Tentukan toleransi error (e) dan iterasi maksimum (n)

o Tentukan nilai pendekatan awal x0

o Hitung f(x0) dan f1(x0)

o Untuk iterasi I = 1 s/d n atau |f(xi)| β‰₯ e

o Akar persamaan adalah nilai xi yang terakhir diperoleh.

1.2 Tujuan

a. Dapat menghitung akar persamaan nonlinear dengan metode Biseksi, dan Metode

Newton Raphson

b. Mencari besarnya kesalahan dari suatu perhitungan akar persamaan nonlinear dengan

metode Biseksi, dan Metode Newton Raphson.

1.3 Permasalahan

1. Buatlah program dengan Bahasa Pascal untuk menghitung akar persamaan non linier

dari:

a. x2 - 11 menggunakan Metode Biseksi dengan ketentuan:

Batas Bawah: 1

Batas Atas: 5

Toleransi 10-7

Maksimal iterasi 50

b. x3 – 10 menggunakan Metode Newton Rapshon dengan ketentuan

x0 = 1

Data = 2.15443469

Toleransi 10-7

Maksimal iterasi 59

BAB II

PEMBAHASAN

1. Program untuk Menghitung Persamaan Non Linier f(x)= x2 – 11 Menggunakan Metode

Biseksi

a) Source Code

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

{*********************************************************

**}

{ Program untuk Menghitung Akar Persamaan Nonlinear

}

{ dari fungsi : f(x) = x^2 - 11

}

{ dengan Metode Biseksi

}

{ Dibuat oleh :

}

{ Nama : Faqih Arifian A

}

{ NIM : 24010312130054

}

{ Prog.Studi : Informatika

}

{*********************************************************

**}

program biseksi ;

uses crt;

var

a,b,m,F_a,F_b,F_m,epsilon,data,tol,galat: real;

iter,maxit: integer;

function f(var x : real) : real;

begin

f := x * x-11;

end;

begin

clrscr;

data := sqrt(11);

writeln('Mencari Akar Persamaan Nonlinear ');

writeln(' f(x) = x^2-11 ');

writeln('Metode Biseksi ');

writeln('-------------------------------------------

----------');

writeln;

write('Masukkan Batas bawah = '); readln(a);

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

write('masukkan Batas atas = ');readln(b);

write('Toleransi = ');readln(tol);

write('Jumlah maksimum iterasi = ');readln(maxit);

iter :=0;

F_a := f(a);

F_b:= f(b);

If F_a*F_b > 0 then

writeln('Nilai F(a) * F(b) > 0 ')

else

begin

writeln;

writeln('===========================================

==========================');

writeln('|iter| a | m | b | f(a) |

f(b) |abs[f(b) - f(a)]/2| galat |');

writeln('===========================================

==========================');

epsilon := tol+1;

while ((iter<=maxit) and (epsilon >tol)) do

begin

iter := iter +1;

m := (a+b)/2;

F_m := f(m);

galat := data - abs(m);

writeln('| ',iter,' |',a:3:4,' |',m:3:4,'

|',b:3:4,' |',f(a):3:4,' |',f(b):3:4,' | ',(abs(f(b) -

f(a))/2):3:4,' |',galat:3:7,' |');

epsilon := abs(m-a);

If( F_a * F_m <= 0 ) then

begin

b := m;

F_b := F_m;

end

else

begin

a :=m;

F_a := F_m;

end;

end ;

if(iter<=maxit) then

begin

writeln('toleransi terpenuhi');

writeln('Hasil akhir = ', m:9:7);

end

else writeln ('Toleransi tidak terpenuhi ');

end;

readkey();

end.

b) Penjelasan

Diketahui:

𝑓(π‘₯) π‘₯

π‘₯ π‘₯

𝑓(π‘₯ )

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dicari x3

π‘₯ π‘₯ π‘₯

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dicari x3

π‘₯ π‘₯ π‘₯

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dicari x4

π‘₯ π‘₯

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dicari x5

π‘₯ π‘₯ π‘₯

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dicari x6

π‘₯ π‘₯ π‘₯

𝑓(π‘₯ )

π‘Ž π‘Ž 𝑓(π‘₯ ) βˆ— 𝑓(π‘₯ )

o Dan seterusnya sampai

didapatkan nilai error lebih kecil

dari toleransi.

c) Printscreen

2. Program untuk Menghitung Persamaan Non Linier f(x)= x3 – 10 Menggunakan Metode

Newton-Rapshon

a) Source Code

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

{*********************************************************

**}

{ Program untuk Menghitung Akar Persamaan Nonlinear

}

{ dari fungsi : f(x) = x^3 - 10

}

{ dengan Metode Newton Raphson

}

{ Dibuat oleh :

}

{ Nama : Faqih Arifian A

}

{ NIM : 24010312130054

}

{ Prog.Studi : Informatika

}

{*********************************************************

**}

program Newton_Rapshon;

uses crt;

var

x0,xb,epsilon,data,tol,galat:real;

iter,maxit: integer;

function f(var x : real) : real;

begin

f := x * x *x - 10;

end;

function f1(var x : real) : real;

begin

f1 := 3 * x * x;

end;

begin

clrscr;

data := 2.15443469;

writeln('Mencari Akar Persamaan Nonlinear ');

writeln('f(x) = x^3-10 ');

writeln('Metode Newton Rapshon ');

writeln('-------------------------------------------

----------');

writeln;

write('Masukkan Nilai awal = '); readln(x0);

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

write('Toleransi = ');readln(tol);

write('Jumlah maksimum iterasi = ');readln(maxit);

iter := 0;

epsilon := tol+1;

writeln('iter x f(x) f''(x)

epsilon galat');

while ((iter<=maxit) and (epsilon >tol)) do

begin

iter := iter +1;

xb := x0 - f(x0)/f1(x0);

epsilon := abs(xb-x0);

galat := data - abs(xb);

writeln(' ',iter,' ',x0:3:4,'

',f(x0):3:4,' ',f1(x0):3:4,' ',epsilon:3:7,' ','

',galat:3:7);

x0 := xb;

end;

if(iter<=maxit) then

begin

writeln('toleransi terpenuhi');

writeln('hasil akhir = ', xb:9:7);

end

else writeln ('toleransi tidak terpenuhi ');

readkey();

end.

b) Penjelasan

Diketahui:

𝑓(π‘₯) π‘₯ π‘₯

𝑓 (π‘₯) π‘₯

o Iterasi 1

𝑓(π‘₯ )

𝑓 (π‘₯ ) βˆ—

π‘₯

o Iterasi 2

𝑓(π‘₯ )

𝑓 (π‘₯ ) βˆ—

βˆ—

π‘₯

o Iterasi 3

𝑓(π‘₯ )

𝑓 (π‘₯ ) βˆ—

βˆ—

π‘₯

o Dan seterusnya sampai 𝑓(π‘₯ )

o Dalam Microsoft Excel:

n Xn f(x) f'(x)

0 1 -9 3

1 4 54 48

2 2.875 13.76367188 24.796875

3 2.319943289 2.486252302 16.1464106

4 2.165961555 0.161369207 14.07416838

5 2.154495925 0.000852709 13.92555807

6 2.154434692 0.00 13.92476652

7 2.15443469 0 13.9247665

Pada iterasi ke 7 nilai 𝑓(π‘₯ ) , maka akar dari persamaan tersebut adalah

2.15443469

c) Printscreen

BAB III

PENUTUP

3.1 Kesimpulan

o Untuk menghitung akar persamaan nonlinear dapat digunakan metode Biseksi dan metode

raphson.

o Pada kedua metode yang digunakan hasil perhitungan akan didapat jika toleransi

terpenuhi, dengan syarat lebih kecil dari sama dengan maxit.

o Hasil perhitungan akar persamaan dengan kedua metode pada fungsi yang sama akan

menghasilkan hasil yang mendekati sama.

o Hasil perhitungan yang diberikan juga bergantung pada maksimum iterasi dan besarnya

toleransi yang diberikan di masing-masing metode. Jika fungsi sama tetapi maxit dan

besar toleransi berbeda, hasilnya juga akan berbeda.

top related