牛顿迭代法

上传人:m**** 文档编号:189974457 上传时间:2023-02-25 格式:DOCX 页数:6 大小:27.58KB
收藏 版权申诉 举报 下载
牛顿迭代法_第1页
第1页 / 共6页
牛顿迭代法_第2页
第2页 / 共6页
牛顿迭代法_第3页
第3页 / 共6页
资源描述:

《牛顿迭代法》由会员分享,可在线阅读,更多相关《牛顿迭代法(6页珍藏版)》请在装配图网上搜索。

1、实验十七 牛顿迭代法【实验目的】1了解牛顿迭代法的基本概念。2了解牛顿迭代法的收敛性和收敛速度3.学习掌握MATLAB软件有关的命令。【实验内容】用牛顿迭代法求方程x3 + x2 + x -1二0的近似根,误差不超过10-3。【实验准备】1. 牛顿迭代法原理设已知方程f (x)二0的近似根x ,则在x附近f (x)可用一阶泰勒多项式 00p(x)二f (x ) + f(x )(x x )近似代替.因此,方程f (x)二0可近似地表示为p(x)二0.0 0 0用xi表示p(x)二0的根,它与f (x)二0的根差异不大.设八x0)丰0,由于xi满足f (x) +八x)(x - x) = 0,解得f

2、 (x )=x 0f (x )0重复这一过程,得到迭代格式xn+1_ f (x )=x nnf(x )n这就是著名的牛顿迭代公式,它相应的不动点方程为g(x) = x f (x)利.2. 牛顿迭代法的几何解析在x处作曲线的切线,切线方程为y = f (x ) + f(x )(x x )。令y = 0,可得0 0 0 0f(x )切线与x轴的交点坐标x = x ,这就是牛顿法的迭代公式。因此,牛顿法又称“切10 f(x )0线法”。图 17.1 牛顿迭代法3牛顿迭代法的收敛性计算可得 g(x) = _ f(x)f U,设X* 是 f (x)二 0 的单根,有 f (x*)二 0, f(x*)丰

3、0,则 f ( x)2g(x*) :f驚 0, 故在x*附近,有g(x)| 1 .根据不动点原理知牛顿迭代法收敛.4牛顿迭代法的收敛速度定理(牛顿法收敛定理)设f (x)在区间a, b上有二阶连续导数,且满足 f (a)f (b) 0,f(x)在a,b上不变号,f(x)在a,b上不等于 0,令m = min|f (x)|, M = max|f(x)|,有 b - a 2MmMa xba xb.则对任意x0 e a,b,牛顿迭代格式收敛于f (x)二0在a,b中的唯一实根x *,并且:2m2M.(1)q2n, q 二x - x* 1.m 0(2)clear;x=0.5;for i=1:3x=x-

4、(xA3+xA2+x-1)/(3*xA2+2*x+1)end可算得迭代数列的前3 项 0.5455, 0.5437, 0.5437.近三次迭代,就大大超过了精度要求. 练习2用牛顿迭代法求方程X2 = a(a 0).的近似正实根,由此建立一种求平方根的计 算方法.1a由计算可知,迭代格式为g(x) =(x + ).,在实验12的练习4种已经进行了讨论.2x练习3用牛顿迭代法求方程xex二1的正根.牛顿迭代法的迭代函数为g (x)二 X -f (x)xex 1=x (x + 1)ex如果取初值为x二0,相应的MATLAB代码为:0clear;x=0.0;for i=1:6x=x-(x*exp(x

5、)-1)/(x+1)*exp(x)end 可算得迭代数列的前6项1, 0.6839, 0.5775, 0.5672, 0.5671, 0.5671,说明迭代是收敛的.如果取初值为x二10,相应的MATLAB代码为:0clear;x=10.0;for i=1:20x=x-(x*exp(x)-1)/(x+1)*exp(x)end可算得迭代数列的前20 项为9.0909, 8.1900, 7.2989, 6.4194, 5.5544, 4.7076, 3.8844, 3.0933, 2.3487, 1.6759,1.1195, 0.7453, 0.5902, 0.5676, 0.5671, 0.56

6、71, 0.5671, 0.5671, 0.5671, 0.5671 说明迭代是收敛的.如果取初值为xo二1,或xo二1.5,可算得(MATLAB代码略去)迭代数列是发散的请 根据函数图形分析原因,练习4求方程x = e-x在x = 0.5附近的根,精确到10-5.先直接使用g(x)二e-x的迭代格式,相应的MATLAB代码为: n=0; eps=1.0e-5; x=0.5;while abs(x-exp(-x)epsp(-x); n=n+1;endx, n结果为X= 0.5671, n = 17,说明迭代17次后达到精度要求.为加快收敛速度,用h(x)二Xg(x) + (1-九)x构造迭代格

7、式,由实验的预备知识中可知取X =沁 0.625,1 - g (0.5)相应的 MATLAB 代码为:n=0; eps=1.0e-5; x=0.5;while abs(x-0.625*exp(-x)-0.375*x)eps x=0.625*exp(-x)+0.375*x; n=n+1;endx, n结果为 x= 0.5671, n = 3,说明迭代3次后达到精度要求.练习5对练习中方程x e-x,用加快后的迭代格式h(x)=求在x 0.51 - g(x)附近的根,精确到10-5 .g (x) 一 xg(x)(x + 1)e - x计算可得h(x),相应的MATLAB代码为:1 - g(x)1 + e-xn=0; eps=1.0e-5; x=0.5;while abs(x-(x+1)*exp(-x)/(1+exp(-x)epsx=(x+1)*exp(-x)/(1+exp(-x); n=n+1;endx, n结果为 x= 0.5671, n =2,说明迭代2次后达到精度要求.【练习与思考】1. 用牛顿迭代法求方程x In x 1的近似根.2. 为求出方程 x3 -x-1 0的根,在区间1,2内使用迭代函数进行迭代,记录迭代数据,问迭代是否收敛?对迭代进行加速,对比加速前的数据,比较加速效果.3. 使用在不动点x*的泰勒公式,证明牛顿迭代法收敛定理.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!