非线性方程求根

非线性方程求根

ID:43357391

大小:172.35 KB

页数:9页

时间:2019-09-30

非线性方程求根_第1页
非线性方程求根_第2页
非线性方程求根_第3页
非线性方程求根_第4页
非线性方程求根_第5页
资源描述:

《非线性方程求根》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、非线性方程求根系别计算机系专业计算机科学与技术学号200808111028姓名杨辉非线性方程求根摘要随着科学技术,生产力经济的发展,在科学与工程计算中存在着大量方程求根问题,例如贷款购房问题,工厂的最佳订货问题等都需要求解一类非线性方程的根,而本文就针对这些求根问题提出了解决方案,本文利用牛顿迭代法来结决方程的求根问题.首先根据实际问题列出数学模型,确定变量,给出各个条件及相关函数;然后对建立的模型进行具体分析和研究,选择合适的求解方法;编写函数的程序,用计算机求出方程的解,通过所求解分析具体情况.关键词:

2、非线性方程,牛顿迭代法,Matlab1绪论1.1非线性方程求根的背景牛顿迭代法是牛顿在17世纪提出的一种求解方程.多数方程不存在求根公式,从而求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要.而在各种科学和工程计算中往往要用到非线性方程组的求解,而牛顿法又是最基础的迭代法,在各种计算力学、控制工程等领域中发挥了不可代替的作用.而在数值计算中,非线性方程组的求解同样具有重要意义.随着计算机技术的成熟和高速发展,对于非线性方程求根问题出现了大量的数学软件(如MATLAB,Matheamatica

3、,Maple,SAS,SPSSD等),计算机已经成为工程师应用数学解决工程问题的主要运算工具.同时,工程专业的学生对数学教育的需求重点正在从手工演绎和运算能力的培养转变到结合计算机软件进行建模、求解和论证能力的培养.本文采用Matlab作为软件平台,介绍了非线性方程求根的内容.1.1非线性方程求根的目的为了推动科学的进步,能够很简便的完成各种工程计算,非线性方程组的求解方法以其独有的方法解决了各种计算.非线性方程组的求解正是为了这个目的才广泛被人们应用,此文也将给出非线性方程组求解的实际应用.1.2非线性方

4、程求根的内容解非线性方程的主要算法是迭代法,如fsolve、二分法、牛顿迭代法等.迭代法是从已知的解的初始近似值(简称初值)开始,利用某种迭代格式求得一近似值序列逐步逼近于所求的解α(称为不动点).这一方法是否成功取决于三个因素,首先应与同解,其次初值的选取是否合适,一般要与真解靠近,最后也是最关键的是迭代序列是否收敛,为了保证收敛性,在真解附近应有否则迭代序列可能发散.最基本的迭代法是Newton迭代法,其迭代格式为.从几何上说为用在出切线代替求得的解,所以也称为切线法,当初值与真值足够靠近,Newton

5、迭代法收敛.对于单根,Newton法收敛速度很快;对于重根,收敛较慢.牛顿迭代法的大概算法为:给定初始值,为根的容许误差,为的容许误差,为迭代次数的容许值.①如果或迭代次数大于,则算法失败,结束;否则执行②②计算③若或,则输出,程序结束;否则执行④④令,转向①下面给出了Newton迭代法的计算程序.functionx=newton(fname,dfname,x0,e)%用途:Newton迭代法解非线性方程f(x)=0%格式:x=nanewton(fname,dfname,x0,e)x返回数值解,%fname

6、和dfname分别表示f(x)及其导函数%f'(x),x0为迭代初值,e精度要求(默认为1e-4)ifnargin<4,e=1e-4;%精度默认为1e-4endx=x0;x0=x+2*e;%使while成立,进入while后x0得到赋值whileabs(x0-x)>ex0=x;x=x0-feval(fname,x0)/feval(dfname,x0);End2牛顿迭代法的实现及应用2..1Newton迭代法具体例子的实现用Newton迭代法解方程在1.5附近的根.解:当时,,即恒正,所以根在[0,2].我们

7、先用图解法找初值,在用Newton法程序newton.m求解.fun=inline('x^3+x^2-3*x-3');%就是定义一个内置函数,本质上说跟function干的是一样的事,只不过它可以直接内嵌在命令行里,不用另外单独定义function.fplot(fun,[0,2]);gridon;图2.1的函数图像由图可知方程有唯一正根在[1.6,1.8]之间,我们取初值1.5代入Newton程序中.dfun=inline('3*x^2+2*x-3');formatlong;newton(fun,dfun,

8、1.5,1e-4);formatshort;ans=1.73205080756888而用Matlab本身的函数fzero求出来的结果为:formatlong;fzero(inline('x^3+x^2-3*x-3'),1.5);formatshortans=1.73205080756888下面用牛顿迭代法解决一些实际问题2.2应用牛顿法解决购房贷款利率问题住房是居民消费的一个主要部分,大部分人选择银行按揭贷款,然

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。