Minggu, 23 Desember 2012

METODE NUMERIK (LAGRANGE, NEWTON RAPHSON, INTERPOLASI) DENGAN MATLAB


NEWTON-RAPHSON


gb2
q  Metode ini paling banyak digunakan dalam mencari akar-akar persamaan
q  Membuat perkiraan awal dari akar adalah xi, maka suatu garis singgung didapat titik (xi, f (xi))
q  Menentukan turunan pertama pada xi adalah ekivalen dengan kemiringan
LANGKAH-LANGAH DALA PENGERJAAN METODE NEWTON-RAPHSON
  1. Menentukan turunan pertama dari fungsi f(x)
  2. Hitunglah xi + 1 dengan menggunakan rumus ekivalen kemiringan
  3. Tentukan nilai xsembarang hitung fungsi dan turunan pertama
  4. Lakukanlah langkah 2 sampai menghasilkan f(xi + 1 ) bernilai 0

Implementasi metode Newton-Raphson pada MATLAB untuk sebarang fungsi :
Dengan demikian algoritma Metode Newton-Raphson di atas , dibuat program MATLAB sebagai berikut :
function hasil=newtonraphson(N,x0,T)
N=input('masukkan nilai maksimum iterasi: ');
x0=input('masukkan nilai tebakan awal; ');
T=input('masukkan nilai toleransi: ');
m=x0
for i=1:N
    if (df(m)==0)
        break;
    else
        y=m-(f(m)/df(m))
    end;
    disp(['iterasi ke ',num2str(i),',nilai x= ',num2str(y)]);
    if (abs((y-1)/y)<=T)
        break;
    end;
    m=y;
end;
hasil=y

maka program diatas dapat digunakan untuk menyelesaikan contoh :
file berikut :
function y=f(x)
y=x^2+x;
function y=df(x)
y=2x+1;
Outputnya :
>> newtonraphson
masukkan nilai mkasimum iterasi: 10
masukkan nilai tebakan awal: 3
masukkan nilai toleransi: 0.0001

y =

    2.5024

iterasi ke 1,nilai x= 2.5024

y =

    2.0906

iterasi ke 2,nilai x= 2.0906

y =

    1.7536

iterasi ke 3,nilai x= 1.7536

y =

    1.4864

iterasi ke 4,nilai x= 1.4864

y =

    1.2913

iterasi ke 5,nilai x= 1.2913

y =

    1.1771

iterasi ke 6,nilai x= 1.1771

y =

    1.1387

iterasi ke 7,nilai x= 1.1387

y =

    1.1348

iterasi ke 8,nilai x= 1.1348

y =

    1.1347

iterasi ke 9,nilai x= 1.1347

y =

    1.1347

iterasi ke 10,nilai x= 1.1347

hasil =

    1.1347


ans =

    1.1347




INTERPOLASI

      Interpolasi adalah teknik mencari harga suatu fungsi pada suatu titik diantara 2 titik yang nilai fungsi pada ke-2 titik tersebut sudah diketahui
      dpl. : cara menentukan harga fungsi f dititik x* ε [x0,xn] dengan menggunakan informasi dari seluruh atau sebagian titik-titik yang diketahui ( x0, x1, …., xn)
x
x0
x1
x2
…….
xn
f(x)
f(x0)
f(x1)
f(x2)
…….
f(xn)





      Teknik umum yang digunakan
                                i.            Membentuk polinomial berderajat ≤ n yg mempunyai harga fungsi di titik-titik yang diketahui à Polinomial Interpolasi
                              ii.            Masukkan titik yang ingin dicari harga fungsinya ke dalam polinomial interpolasI




Interpolasi Linier
gb2
Ò  Metode ini dikenal juga dengan metode false positionnnya. 
Ò  Metode guna menutupi kekurangan pada metode biseksion
Ò  Didasarkan antara dua nilai dari fungsi yang mempunyai tanda berlawanan
Ò  Kedua nilai fungsi tersebut ditarik garis lurus hingga terbentuk suatu segitiga, dengan menggunakan sifat segitiga sebangun didapat persamaan berikut :





n  Misalkan ada m bilangan : x1, x2, …., xm dan bilangan lain yang berkaitan : y1, y2 , …., y
n  maka masalahnya : berapa harga y* pada
            x* ε [xk,xk+1] ?

n  Ambil ruas garis yang menghubungkan
 titik (xk,yk) dan (xk+1,yk+1)
n  Diperoleh persamaan garisnya :

 



n  Jadi persamaan garisnya adalah :

Implementasi interpolasi Linear pada MATLAB
Dengan demikian algoritma diatas , dibuat program matlab sebagai berikut :

function linear;
for i=1:2
    x(i)=input(['x',num2str(i),'= ']);
    f(i)=input(['fx(',num2str(i),')=']);
end
p=input('Masukkan nilai yang diinterpolasi= ');
gradient=(f(2)-f(1))/(x(2)-x(1));
hasil_interpolasi=f(1)+gradient*(p-x(1));
disp('hasil: ');
disp(hasil_interpolasi);










Tidak ada komentar:

Posting Komentar