牛顿迭代法Matlab程序.doc

上传人:夏** 文档编号:561342754 上传时间:2024-02-29 格式:DOC 页数:4 大小:30.01KB
返回 下载 相关 举报
牛顿迭代法Matlab程序.doc_第1页
第1页 / 共4页
牛顿迭代法Matlab程序.doc_第2页
第2页 / 共4页
牛顿迭代法Matlab程序.doc_第3页
第3页 / 共4页
牛顿迭代法Matlab程序.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《牛顿迭代法Matlab程序.doc》由会员分享,可在线阅读,更多相关《牛顿迭代法Matlab程序.doc(4页珍藏版)》请在金锄头文库上搜索。

1、牛顿迭代法Matlab程序(带下山因子)本文程序可用于求解线性和非线性方程组,在使用牛顿迭代法的同时,加入了下山因子,加入下山因子后,对于初值的选取更为宽泛。使用方法:请将本文function所定义的函数存为m文件,将matlab路径改为存储newton函数的路径,然后参照本文例子的格式定义变量、表达式、初值、收敛阈值、迭代次数后,输入X=newton(f,x,x0,esp,N)即可求解。%例子syms x1 x2 x3%定义变量名称f1=x1+x2+x3+3;f2=2*x1-x2-x3;f3=x1+2*x2-2*x3-3;%定义方程表达式(方程全都移到等号左边的表达式)f=f1;f2;f3;

2、x=x1;x2;x3;x0=0;0;0;%设定初值esp=0.00001;0.00001;0.00001;%阈值N=1000;%迭代次数X=newton(f,x,x0,esp,N)%求解%真值为-1 0 -2%function x1=newton(f,x,x0,esp,N)%此函数用于解非线性方程,方法为牛顿下山法。R=jacobian(f,x);ph=size(f,1);ty(1:ph,1)=1;coo=1;while abs(coo-1)abs(f12(i) ty(i)=ty(i)/2; coo=1; endendendfor i=1:N clc i R1=subs(R,x,x0);% f1=subs(f,x,x0); x1=x0-ty.*(R1f1); xx=abs(x1-x0); if xxesp break else x0=x1; endend 1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号