非线性方程求根的迭代法_第1页
非线性方程求根的迭代法_第2页
非线性方程求根的迭代法_第3页
非线性方程求根的迭代法_第4页
非线性方程求根的迭代法_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

非线性方程求根的迭代法第一页,共六十七页,编辑于2023年,星期二

本章重点介绍求解非线性方程的几种常见和有效的数值方法.无论在理论上,还是在实际应用中,这些数值解法都是对经典的解析方法的突破性开拓和补充,许多问题的求解,在解析方法无能为力时,数值方法则可以借助于计算机出色完成.第二页,共六十七页,编辑于2023年,星期二f(x)=0某个区间上可能有奇数重根或者有偶数重根,都可以转换为讨论单根的情形(具体数学细节不多加解释)。所以此节我们考察单根情形。第三页,共六十七页,编辑于2023年,星期二4.1二分法求非线性方程

确定方程的有根区间计算根的近似值的根的方法分为两步:第四页,共六十七页,编辑于2023年,星期二首先确定有限区间:依据零点定理。设,且,则方程在区间上至少有一个根。如果在上恒正或恒负,则此根唯一。第五页,共六十七页,编辑于2023年,星期二等步长扫描法求有根区间

用计算机求有根区间:等步长扫描法。设h>0是给定的步长,取,若则扫描成功;否则令,继续上述方法,直到成功。如果则扫描失败。再将h缩小,继续以上步骤。第六页,共六十七页,编辑于2023年,星期二等步长扫描算法(了解)算法:(求方程的有根区间)(1)输入;(2);(3),若输出失败信息,停机。(4)若。输出,已算出方程的一个根,停机。第七页,共六十七页,编辑于2023年,星期二等步长扫描算法(5)若。输出为有根区间,停机(6),转3)注:如果对足够小的步长h扫描失败。说明:在内无根在内有偶重根第八页,共六十七页,编辑于2023年,星期二Qustion:有没有更直观的方法呢?第九页,共六十七页,编辑于2023年,星期二二分法

用二分法(将区间对平分)求解。令若,则为有根区间,否则为有根区间记新的有根区间为,则且第十页,共六十七页,编辑于2023年,星期二二分法对重复上述做法得且

第十一页,共六十七页,编辑于2023年,星期二二分法设所求的根为,则即取为的近似解

第十二页,共六十七页,编辑于2023年,星期二二分法特点:(1)条件简单,只需要满足连续性即可。(2)收敛速度慢,精度要求比较高时,时间花费比较大。第十三页,共六十七页,编辑于2023年,星期二例题例1设方程

第十四页,共六十七页,编辑于2023年,星期二4.2基本迭代法

迭代法及收敛性对于有时可以写成形式如:第十五页,共六十七页,编辑于2023年,星期二迭代法及收敛性考察方程。不能直接求出它的根,但如果给出根的某个猜测值,代入中的右端得到,再以为一个猜测值,代入的右端得反复迭代得第十六页,共六十七页,编辑于2023年,星期二迭代法及收敛性若收敛,即则得是的一个根第十七页,共六十七页,编辑于2023年,星期二基本迭代法

上述方法称为基本迭代法将变为另一种等价形式。选取的某一近似值,则按递推关系产生的迭代序列。这种方法算为简单迭代法。第十八页,共六十七页,编辑于2023年,星期二

若收敛,即称迭代法收敛,否则称迭代法发散第十九页,共六十七页,编辑于2023年,星期二迭代法的几何意义交点的横坐标y=x第二十页,共六十七页,编辑于2023年,星期二例题例试用迭代法求方程在区间(1,2)内的实根。解:由建立迭代关系

k=10,1,2,3…….计算结果如下:第二十一页,共六十七页,编辑于2023年,星期二第二十二页,共六十七页,编辑于2023年,星期二例题精确到小数点后五位第二十三页,共六十七页,编辑于2023年,星期二例题但如果由建立迭代公式仍取,则有,显然结果越来越大,是发散序列第二十四页,共六十七页,编辑于2023年,星期二下面考虑如下两个问题:

什么时候收敛?收敛速度怎么刻画?第二十五页,共六十七页,编辑于2023年,星期二迭代法的收敛性定理(压缩映像原理)(了解)设迭代函数在闭区间上满足(1)(2)满足Lipschitz条件即有且。第二十六页,共六十七页,编辑于2023年,星期二压缩映像原理则在上存在唯一解,且对,由产生的序列收敛于。

第二十七页,共六十七页,编辑于2023年,星期二关于压缩映像,教材上有另外一种形式Th4.2.1则基本迭代格式收敛的充要条件是:第二十八页,共六十七页,编辑于2023年,星期二例题例证明函数在区间[1,2]上满足迭代收敛条件。证明:第二十九页,共六十七页,编辑于2023年,星期二例题

第三十页,共六十七页,编辑于2023年,星期二例题若取迭代函数,不满足压缩映像原理,故不能肯定收敛到方程的根。第三十一页,共六十七页,编辑于2023年,星期二简单迭代收敛情况的几何解释第三十二页,共六十七页,编辑于2023年,星期二是否取到合适的初值,是否构造合适的迭代格式,对于是否收敛是关键的。对于初值,实际操作时,可以先画出函数图形,然后,观察根大概在什么地方。对于迭代格式,可以对求导,看看是否小于1第三十三页,共六十七页,编辑于2023年,星期二

迭代法收敛的阶定义设序列收敛到,若有实数和非零常数C,使得其中,,则称该序列是p

阶收敛的,第三十四页,共六十七页,编辑于2023年,星期二迭代法收敛的阶当p=1时,称为线性收敛;当p>1时,称为超线性收敛;当p=2时,称为平方收敛或二次收敛。第三十五页,共六十七页,编辑于2023年,星期二误差估计若满足定理条件,则

第三十六页,共六十七页,编辑于2023年,星期二下面定理给出判别迭代收敛阶的一个方法第三十七页,共六十七页,编辑于2023年,星期二定理:记是的根,,设在附近连续,若对,有则基本迭代法是P阶连续的。第三十八页,共六十七页,编辑于2023年,星期二基本迭代法的matlab实现function[k,piancha,xk]=diedai1(x0,k)%输入的量--x0是初始值,k是迭代次数x(1)=x0;fori=1:kx(i+1)=fun1(x(i));%程序中调用的fun1.m为函数y=φ(x)piancha=abs(x(i+1)-x(i));i=i+1;xk=x(i);[(i-1)pianchaxk]endMatlab中与或非,分别是:&|~与或非第三十九页,共六十七页,编辑于2023年,星期二if(piancha>1)&(k>3)disp('请用户注意:此迭代序列发散,请重新输入新的迭代公式')return;endif(piancha<0.001)&(k>3)disp('祝贺您!此迭代序列收敛,且收敛速度较快')return;endp=[(i-1)pianchaxk]';第四十页,共六十七页,编辑于2023年,星期二关于程序里面的fun1,可以如下类似定义functiony1=fun1(x)y1=(10-x^2)/2;第四十一页,共六十七页,编辑于2023年,星期二作业:

1.编程求方程在区间(1,2)内的实根。2.习题4.4(P104)

第四十二页,共六十七页,编辑于2023年,星期二4.3Newton迭代法设x*是方程f(x)=0的根,又x0

为x*附近的一个值,将f(x)在x0附近做泰勒展式令,则

第四十三页,共六十七页,编辑于2023年,星期二Newton迭代法

即以x1代替x0重复以上的过程,继续下去得:第四十四页,共六十七页,编辑于2023年,星期二Newton迭代法

以此产生的序列{Xn}得到f(x)=0的近似解,称为Newton法,又叫切线法。第四十五页,共六十七页,编辑于2023年,星期二Newton迭代法几何解释

几何意义第四十六页,共六十七页,编辑于2023年,星期二例题例用Newton法求的近似解。解:由零点定理。第四十七页,共六十七页,编辑于2023年,星期二例题第四十八页,共六十七页,编辑于2023年,星期二例题例用Newton法计算。解:第四十九页,共六十七页,编辑于2023年,星期二Newton迭代法算法第五十页,共六十七页,编辑于2023年,星期二Newton迭代法收敛性定理4.3.1给定方程,若满足条件:(1)在根附近,f(x)二次连续可微。(2)则Newton迭代法是局部二阶收敛的。(即初值取根附近的值时,是二阶收敛的)第五十一页,共六十七页,编辑于2023年,星期二定理告诉我们:单根附近是二阶收敛的第五十二页,共六十七页,编辑于2023年,星期二Newton法的matlab实现function[k,xk,yk,piancha,xdpiancha]=newtonqx(x0,tol,ftol,gxmax)x(1)=x0;第五十三页,共六十七页,编辑于2023年,星期二Newton法的matlab实现fori=1:gxmaxx(i+1)=x(i)-fnq(x(i))/(dfnq(x(i))+eps);piancha=abs(x(i+1)-x(i));xdpiancha=piancha/(abs(x(i+1))+eps);i=i+1;xk=x(i);yk=fnq(x(i));[(i-1)xkykpianchaxdpiancha]if(abs(yk)<ftol)&((piancha<tol)|(xdpiancha<tol))k=i-1;xk=x(i);[(i-1)xkykpianchaxdpiancha]return;endend第五十四页,共六十七页,编辑于2023年,星期二Newton法的matlab实现

ifi>gxmaxdisp('请注意:迭代次数超过给定的最大值gxmax。')k=i-1;xk=x(i);[(i-1)xkykpianchaxdpiancha]return;end[(i-1),xk,yk,piancha,xdpiancha]';第五十五页,共六十七页,编辑于2023年,星期二重根情形Newton迭代重根时仅有线性收敛速度,经修改后可以有二阶收敛性。设重数为m.(1)m已知时,迭代公式修改为:第五十六页,共六十七页,编辑于2023年,星期二(2)m未知时,在根的附近有单根,对构造newton迭代公式:

第五十七页,共六十七页,编辑于2023年,星期二求重根的matlab实现(一)已知方程根的重数供名为newtonxz.m的M文件:function[k,piancha,xdpiancha,xk,yk]=newtonxz(m,x0,tol,ftol,gxmax)x(1)=x0;fori=1:gxmaxx(i+1)=x(i)-m*fnq(x(i))/(dfnq(x(i))+eps);piancha=abs(x(i+1)-x(i));xdpiancha=piancha/(abs(x(i+1))+eps);i=i+1;xk=x(i);yk=fnq(x(i));[(i-1)pianchaxdpianchaxkyk];if((piancha<tol)|(xdpiancha<tol))&(abs(yk)<ftol)k=i-1;xk=x(i);yk=fnq(x(i));[(i-1)pianchaxdpianchaxkyk];return;endendifi>gxmaxdisp('请注意:迭代次数超过给定的最大值gxmax.')k=i-1;xk=x(i);yk=fnq(x(i));[(i-1)pianchaxdpianchaxkyk];return;end第五十八页,共六十七页,编辑于2023年,星期二求重根的matlab实现(二)未知方程根的重数function[k,piancha,xdpiancha,xk,yk]=newtonxz1(x0,tol,ftol,gxmax)x(1)=x0;fori=1:gxmaxu(i)=fnq(x(i))/dfnq(x(i));du(i)=1-fnq(x(i))*ddfnq(x(i))/((dfnq(x(i)))^2+eps);x(i+1)=x(i)-u(i)/du(i);piancha=abs(x(i+1)-x(i));xdpiancha=piancha/(abs(x(i+1))+eps);i=i+1;xk=x(i);yk=fnq(x(i));if((piancha<tol)|(xdpiancha<tol))&(abs(yk)<ftol)k=i-1;xk=x(i);[(i-1)pianchaxdpianchaxkyk]return;endendifi>gxmaxdisp('请注意:迭代次数超过给定的最大值gxmax.')k=i-1;xk=x(i);yk=fnq(x(i));[(i-1)pianchaxdpianchaxkyk];return;end第五十九页,共六十七页,编辑于2023年,星期二例用牛顿切线法求方程在附近的近似根,要求精度.解

在MATLAB工作窗口输入程序[k,xk,yk,piancha,xdpiancha]=newtonqx(-0.4,0.001,0.001,100)>>[k,xk,yk,piancha,xdpiancha]=newtonqx(-0.4,0.001,0.001,100)第六十页,共六十七页,编辑于2023年,星期二functionk=fnq(x)k=2*x^3-3*x^2+1;%计算x处的函数值第六十一页,共六十七页,编辑于2023年,星期二functionk=dfnq(x)k=6*x^2-6*x;%计算x处的一阶导数值第六十二页,共六十七页,编辑于2023年,星期二作业1:

求,要求精度为.要求(1)写出牛顿迭代格式,并分析其收敛速度(可仿照p97例4.3.1)(2)写出matlab实现程序(写清程序newtonqx(x0,tol,ftol,gxmax)中的各参数,另外自己写程序fnq,dfnq)作业2习题4.5习题4.8

温馨提示

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

评论

0/150

提交评论