Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

11
APLIKASI MATLAB UNTUK PENYELESAIAN PERSAMAAN NON LINEAR MENGGUNAKAN METODE NEWTON RAPHSON DI SUSUN OLEH KELOMPOK 2 IBRAHIM SIREGAR FARIS N IKHSAN MASTURA Dedhi nugroho …. UNIVERSITAS MALIKUSSALEH FAKULTAS TEKNIK JURUSAN ELEKTRO

Transcript of Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Page 1: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

APLIKASI MATLAB UNTUK PENYELESAIAN PERSAMAAN NON LINEAR MENGGUNAKAN METODE

NEWTON RAPHSON

DI SUSUN OLEH

KELOMPOK 2

IBRAHIM SIREGAR

FARIS N IKHSAN

MASTURA

Dedhi nugroho

….

UNIVERSITAS MALIKUSSALEH

FAKULTAS TEKNIK

JURUSAN ELEKTRO

2012/2013

Page 2: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

APLIKASI MATLAB UNTUK PENYELESAIAN PERSAMAAN NON LINEAR MENGGUNAKAN METODE NEWTON RAPHSON

APLIKASI MATLAB UNTUK PENYELESAIAN PERSAMAAN NON LINEAR

MENGGUNAKAN METODE NEWTON RAPHSON

A.    DASAR TEORI

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

linier, jika diasumsikan f mempunyai turunan kontinu f’.

Metode Newton Raphson sering digunakan karena kesederhanaannya dan mempunyai

konvergensi yang cepat. Karena metode ini merupakan metode Terbuka, maka tetap diperlukan

nilai tebakan awal untuk Xo.

Titik pendekatan ke n+1 dituliskan dengan : 

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)).

B.     DESAIN DAN IMPLEMENTASI

1.      Algoritma

Input :

a) Masukkan persamaan nonlinear f(x) dan f’(x).

b) Masukkan toleransi yang diinginkan dalam persen (%). Toleransi merupakan batas kesalahan

(galat) yang diinginkan, semakin mendekati nilai 0 semakin baik.

c) Masukkan maksimum iterasi yang diinginkan. Iterasi awal = 0

Page 3: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

d) Masukkan nilai pendekatan awal x0.

Proses :

Dengan metode Newton Raphson

a) Hitung x0

b) Nilai iterasi = iterasi +1 atau i=i+1

c) Hitung nilai x1 dengan kembali ke langkah a

d) Hitung nilai galat Ea

e) Jika iter < maksimum iterasi lanjutkan proses, jika tidak proses berhenti.

f) Jika nilai Ea < Es, lanjutkan ke proses selanjutnya

Jika nilai Ea > Es, kembali ke proses a

Output :

a) Tampilkan tabel iterasi , x , f(x), f’(x) ,galat.

b) Tampilkan akar persamaan.

c) Tampilkan grafik.

2.      Implementasi

Pada implementasi, akan digunakan fungsi nonlinear untuk menguji program apakah

berjalan dengan baik atau tidak, contoh 1, fungsi yang digunakan adalah f(x) = x2+4x-21 , yang

secara perhitungan manual dapat dicari diferensialnya f’(x) = 2x+4 , dan untuk nilai awal x = 0 .

Pada pengujian program didapat :

Isikan persamaan non-linearnya (string) : 'x0.^2+4*x0-21'Isikan nilai awal : 0Isikan maksimum iterasinya : 10Isikan toleransinya : 0.00001======================================================iter x f(x) df(x) galat====================================================== 1 5.250000 -21.000000 4.000000 1.000000 2 3.349138 27.562500 14.500000 0.567568 3 3.011394 3.613277 10.698276 0.112155 4 3.000013 0.114071 10.022788 0.003794====================================================== Akarnya : 3.00001 dengan toleransi : 0.00001 dan pada iterasi ke : 4

Page 4: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Akarnya adalah 3.00001 karena galat dari nilai x tersebut lebih mendekati angka 0 maka proses

iterasi pun dihentikan pada proses iterasi ke -4.

Contoh 2 :

Isikan persamaan non-linearnya (string) : 'x0.^2+4*x0-21'Isikan nilai awal : 0Isikan maksimum iterasinya : 2Isikan toleransinya : 0.0001======================================================iter x f(x) df(x) galat====================================================== 1 5.250000 -21.000000 4.000000 1.000000 2 3.349138 27.562500 14.500000 0.567568====================================================== Akarnya : 3.34914 dengan toleransi : 0.00010 dan pada iterasi ke : 2

Jika maksimum iterasinya diisikan dengan 2 maka proses pun berhenti dan hasilnya 3.349138

( belum mencapai nilai akhir seperti pada contoh 1).

Page 5: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

contoh -3

F(x) = 4x2+7x-31 à F’(x) = 8x+7

Isikan persamaan non-linearnya (string) : '4*x0.^2+7*x0-31'Isikan nilai awal : 0Isikan maksimum iterasinya : 40Isikan toleransinya : 0.00001======================================================iter x f(x) df(x) galat====================================================== 1 4.428571 -31.000000 7.000000 1.000000 2 2.579606 78.448980 42.428571 0.716763 3 2.084806 13.674699 27.636845 0.237336 4 2.043447 0.979306 23.678448 0.020240 5 2.043154 0.006842 23.347580 0.000143====================================================== Akarnya : 2.04315 dengan toleransi : 0.00001 dan pada iterasi ke : 5

Page 6: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Akarnya adalah 2.04315 dengan toleransi 0.00001 dan karena galat dari nilai x pada iterasi ke- 5

sudah memenuhi syarat mendekati ketentuan angka dari toleransi error maka proses iterasi ke-5

dihentikan.

Contoh 4 :F(x) = 14x2+5 à F’(x) = 28xIsikan persamaan non-linearnya (string) : '14*x0+5'Isikan nilai awal : 2Isikan maksimum iterasinya : 12Isikan toleransinya : 0.00001======================================================iter x f(x) df(x) galat====================================================== 1 -0.357143 33.000000 14.000000 6.600000====================================================== Akarnya : -0.35714 dengan toleransi : 0.00001 dan pada iterasi ke : 1

Page 7: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Akarnya adalah -0.35714 dengan toleransi 0.00001 dan karena galat dari nilai x pada iterasi ke- 1

sudah memenuhi syarat mendekati ketentuan angka dari toleransi eror maka proses iterasi ke-1

dihentikan.

Contoh 5 :

Isikan persamaan non-linearnya (string) : 'x0.^3'Isikan nilai awal : 2Isikan maksimum iterasinya : 5Isikan toleransinya : 0.00001======================================================iter x f(x) df(x) galat====================================================== 1 1.346939 8.000000 12.250000 0.484848 2 0.917676 2.443676 5.692732 0.467771 3 0.639328 0.772803 2.776390 0.435376 4 0.462309 0.261320 1.476222 0.382902 5 0.351436 0.098809 0.891189 0.315487====================================================== Akarnya : 0.35144 dengan toleransi : 0.00001 dan pada iterasi ke : 5

Page 8: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Akarnya adalah -0.35144 dengan toleransi 0.00001 dan karena galat dari nilai x pada iterasi ke- 5

sudah memenuhi syarat mendekati ketentuan angka dari toleransi eror maka proses iterasi ke-5

dihentikan.

Page 9: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

Kode Program :

% -- kelompok 2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %% -- nama2 -- %

% -- PROGRAM METODE NEWTON -- %

clearclcformat longfx = input('Isikan persamaan non-linearnya (string) : ');x0 = input('Isikan nilai awal : ');maks = input('Isikan maksimum iterasinya : ');tol = input('Isikan toleransinya : '); iter=0;h=0.5;

fprintf('======================================================\n');fprintf('iter x f(x) df(x) galat\n');fprintf('======================================================\n');while iter<maks f=inline(fx); fun=f(x0); fak = (f(x0+h)-f(x0-h))/(2*h); Es=abs((x0-fun/fak)-x0)/abs(x0-fun/fak); if fak==0 break elseif Es<tol akar=x0-fun/fak; break else x0=x0-fun/fak; end fprintf('%3d %3.6f %3.6f %3.6f %3.6f\n',iter+1,x0,fun,fak,Es); iter=iter+1;endakar=x0;func=f(akar);%grafik fungsi (x0)t=-10:10; z=f(t);plot(t,z),title('Grafik fungsi (x)');grid on;fprintf('======================================================\n');

Page 10: Aplikasi Matlab Untuk Penyelesaian Persamaan Non Linear Menggunakan Metode Newton Raphson

fprintf(1,' Akarnya : %10.5f \n',akar) ;fprintf(1,' dengan toleransi : %10.5f \n',tol) ;fprintf(1,' dan pada iterasi ke : %10g \n',iter) ;