MATLAB : Source Code Interpolasi Linier ,Newton-Raphson, dan Secant

Minggu, 03 November 2013

1.Metode Iterpolasi Linier
%metode bagi dua
clc
clear all
xi=0.5;
xu=1.5;
f=inline('exp(x)-2-x^2');
xt=(xi+xu)/2;
es=0.01;
iterasi=1;
disp('iter xt ea');
disp('===========================')
if f(xi)*f(xu)>0
disp('Tidak ada Akar !!');

break
end
while (xu-xi)>es
xt=(xi+xu)/2;
ea=(xt-xi)/xt*0.01;
fprintf('%3d %10.7f %10.7f %10.7f\n ',iterasi,xt,ea);
disp('|');
if f(xi)*f(xt)>0
xi=xt;
elseif f(xi)*f(xt)<0 br=""> xu=xt;
elseif f(xi)*(fxt)==0
exit
end
iterasi=iterasi+1;
end
disp(sprintf('Hasil Akar=%1.8f',xt))

2.Metode Newton-Raphson clc
clear all
x0=1;
fx=inline('x^3+x^2-3*x-3');
fdx=inline('3*x^2+2*x-3');
x1=x0-(fx(x0)/fdx(x0));
ea=(x1-x0)/x1*0.01;
es=0.0001;
iterasi=0;
disp(' iter x0 x1 fx(x0) fx(x1) ea');
disp('=============================================================');
while abs(fx(x0))>es & iterasi<50 br=""> xb=x0;
x1=x0-(fx(x0)/fdx(x0));
ea=(x1-x0)/x1*0.01;
x0=x1;
iterasi=iterasi+1;
fprintf('%3d | %8.5f | %8.5f | %8.5f | %8.5f | %8.5f |%8.5f |',iterasi,x0,x1,fx(xb),fx(x1),ea);
fprintf('\n');
end
fprintf('\n-------------------------------------------------------------');
fprintf('\nHasil Akar= %.8f',x0);
fprintf('\n');

Tidak ada komentar:

Posting Komentar