转自:https://blog.csdn.net/wys7541/article/details/81878111
3、实例
题目:求y=cosx+x^3 的根
%newtonFunc.m 牛顿迭代法实例的方程
function [y,y1]=newtonFunc(x)
y=cos(x)+x^3;
y1=-sin(x)+3*x^2;
%牛顿迭代法主函数,求的是局部解
n=input(‘起始点,终止点,等分量:’);
x=linspace(n(1),n(2),n(3));
y=[n(3)];
for i=1:n(3)
[y(i),y1]=newtonFunc(x(i));
end
plot(x,y,’.r’);
grid on;
x0=input(‘初始值为’); %x的初始值
[y,y1]=newtonFunc(x0); %func返回原函数x0的值和一阶导数的值
eps=10^(-5);
count=0; %迭代次数
err=1;
while abs(err)>eps && count<10^5
x=x0-y/y1;
err=abs(x-x0);
x0=x;
[y,y1]=newtonFunc(x0);
count=count+1;
end
disp(‘函数解为’);
x