Berbeda dengan metode-metode sebelumnya, Metode Newton-Raphson ini hanya membutuhkan ‘tebakan’ 1 buah harga awal yang seharusnya terletak di sekitar DOMAIN JAWAB (secara intuitif) nilai akar a, sedemikian rupa sehingga formula tersebut konvergen (menuju ke titik jawab). Hal lain yang harus diperhatikan adalah bahwa Metode Newton-Raphson ini memberikan beban tambahan kepada penggunanya, karena adanya keharusan menghitung fungsi turunan f ' (xn) , di setiap iterasi (titik xn ).
Hal ini merupakan salah satu kekurangan dari metode ini, mengingat tidak semua fngsi dapat diturunkan atau mempunyai turunan pada suatu interval yang kontinyu. Namun, sekali lagi, analisis tentang kelemahan metode ini masih dapat diterima mengingat kecepatan konvergensinya yang relatif paling baik.
Berikut algoritmanya dalam program matlab
Misal fungsi inputnya : e^x-4x=0 dengan error 0.1 dan tebakan awal= 0.5
x=input('Masukkan X awal: ') ;
f=inline('exp(x)-4*x');
E=0.1;
f1=inline ('exp(x)-4');
i=1;
disp('_______________________________');
disp(' i xi f(xi) ');
disp('_______________________________');
while abs(f(x))>=E
x=x-(f(x)/f1(x));
disp(sprintf('%3.0f %12.6f %12.6f %12.6f\n',i,x,f(x)));
i=i+1;
end
disp('_______________________________');
disp(sprintf('Akarnya adalah = %10.8f\n', x))
xg=linspace(-7,7);
yg=f(xg);
plot(xg,yg)
grid on
berikut hasil iterasinya:
Masukkan X awal: 0.5
____________________
i xi f(xi)
____________________
1 0.350601 0.017517
____________________
Akarnya adalah = 0.35060098
Hal ini merupakan salah satu kekurangan dari metode ini, mengingat tidak semua fngsi dapat diturunkan atau mempunyai turunan pada suatu interval yang kontinyu. Namun, sekali lagi, analisis tentang kelemahan metode ini masih dapat diterima mengingat kecepatan konvergensinya yang relatif paling baik.
Berikut algoritmanya dalam program matlab
Misal fungsi inputnya : e^x-4x=0 dengan error 0.1 dan tebakan awal= 0.5
x=input('Masukkan X awal: ') ;
f=inline('exp(x)-4*x');
E=0.1;
f1=inline ('exp(x)-4');
i=1;
disp('_______________________________');
disp(' i xi f(xi) ');
disp('_______________________________');
while abs(f(x))>=E
x=x-(f(x)/f1(x));
disp(sprintf('%3.0f %12.6f %12.6f %12.6f\n',i,x,f(x)));
i=i+1;
end
disp('_______________________________');
disp(sprintf('Akarnya adalah = %10.8f\n', x))
xg=linspace(-7,7);
yg=f(xg);
plot(xg,yg)
grid on
berikut hasil iterasinya:
Masukkan X awal: 0.5
____________________
i xi f(xi)
____________________
1 0.350601 0.017517
____________________
Akarnya adalah = 0.35060098
thansk
ReplyDeletethanks banget bro
ReplyDelete