Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Secant Method
clc
function c=secant(f, x0, x1, tol)
i=1;
n(1)=100;
if f(x0)*f(x1)<0
a(1)=x0;
b(1)=x1;
c(1)=(a(1)*f(b(1))-b(1)*f(a(1)))/(f(b(1))-f(a(1)));
printf('i.\t\ta\t\tc\t\tb\t\tf(c)\tGalat\n');
printf('%2d\t%11.6f\t%11.6f\t%11.6f\t%11.6f\n',i,a(i),c(i),b(i),f(c(i)));
while abs(n(i))>=tol,
a(i+1)=a(i);
b(i+1)=c(i);
c(i+1)=(a(i+1)*f(b(i+1))-b(i+1)*f(a(i+1)))/(f(b(i+1))-f(a(i+1)));
n(i+1)=abs((c(i+1)-c(i)));
r(i+1)=abs((c(i+1)-c(i))/(c(i+1)))*100;
printf('%2d\t%11.6f\t%11.6f\t%11.6f\t%11.6f\t%7.6f\n',i+1,a(i+1),c(i+1),b(i+1),f(c(i
+1)),n(i+1)),r(i+1);
i=i+1;
end
else
printf('');
end
endfunction
function y=myfunc(x)
y=x^3-3*x^2+2.5
endfunction
secant(myfunc,1,2,0.0001)
scf(1);
clf(1);
x=linspace(-2,10,25)
plot(x,myfunc(x),'o-o');
set(gca(),"grid",[11]);
a=gca();
axlocation="origin";
aylocation="origin";
xlabel("$x$","fontsize",4,"color","blue");
ylabel("$y=x^3-3*x^2+2.5$","fontsize",4,"color","blue");
title("runge function("+string(length(x))+")","color","red","fontsize","4")
legend("function evaluation");
i. a c b f(c) Galat
Newton-Raphson Method
clc
clear
function [f, df]=fun7(x)
f=x^2-3
df=2*x
endfunction
xold=1;
maxit=2;
iter=1;
while(1)
[fx,dfx]=fun7(xold);
xnew=xold-fx/dfx;
if iter==maxit then
break
end
xold=xnew;
iter=iter+1;
end
root=round(xnew*10^3)/10^3;
disp(root,"root=")
Power method
clear
clc;
close();
A=[1,-3,2;4,4 -1;6,3,5];
u0=[1,0,0]';
v=A*u0;
a=max(u0);
while abs (max(v)-a)>0.005
a=max(v);
u0=v/max(v);
v=A*u0;
end
format('v',3);
disp(max(v),'eigen values:')
format('v',3);
disp(u0,'eigen vector:')