预览加载中,请您耐心等待几秒...
1/2
2/2

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

禁止复制北京石油化工学院Onlyunited Newton迭代法解非线性方程 Newton迭代法解非线性方程算法: Step1给定初值,e为根的容许误差 Step2计算 Step3判断转到Step4否则转到Step2 Step4迭代结果为 Newton迭代法解非线性方程程序: functionNewton_diedai(fun,x0,e) %fun--原函数 %dfun-导函数 %x0---迭代初值 %e----精度 %k----迭代次数 dfun=inline(diff('x^3-x^2-1'));%计算导函数 x=x0; x0=x+1000*e; k=0; whileabs(x0-x)>e&k<100%判断误差和迭代次数 k=k+1;%计算迭代次数 x0=x; x=x0-feval(fun,x0)/feval(dfun,x0); end ifk==500 disp('迭代次数过多,防止死循环终止'); else fprintf('迭代到%d次时得到结果%f\n',k,x) end 例:用Newton迭代法求解非线性方程在附近的根 输入: clearall clc fun=inline('x^3-x^2-1') Newton_diedai(fun,1.5,0.5e-6) 得到: 迭代到4次时得到结果1.465571 指导教师:年月日