matlab-牛顿迭代法code

评价:
5
(1用户)
%牛顿迭代法
eps=5e-8;%牛顿迭代法
delta=1e-3;
N=100;%迭代次数上限
k=0;x0=1;
tic%计时
while(1)
x1=x0-func2_2(x0)/func2_2_1(x0);
k=k+1
if(k>N||abs(x1)<eps)
disp(‘Newton method failed’)
break
end
if abs(x1)<1
d=x1-x0;
else
d=(x1-x0)/x1;
end
x0=x1
y0=func2_2(x0)
if(abs(d)<eps||abs(func2_2(x1))<delta)
break
end
end
toc
function y=func2_2_1(x)%导数
y=3*x^2+4*x+10;
end
function y=func2_2(x)%函数
y=x^3+2*x^2+10*x-20;
end

本文为原创文章,转载请注明出处!

注册并通过认证的用户才可以进行评价!

admin:支持一下,感谢分享!,+10,  

One thought on “matlab-牛顿迭代法code”

发表评论