《非线性方程的数值解法.pptx》由会员分享,可在线阅读,更多相关《非线性方程的数值解法.pptx(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、记笔记非线性方程的数值解法非线性方程的数值解法 当当f(x)f(x)不是不是x x的线性函数时,称对应的函数方程的线性函数时,称对应的函数方程为非线性方程。如果为非线性方程。如果f(x)f(x)是多项式函数,则称为代数是多项式函数,则称为代数方程,否则称为超越方程(三角方程,指数、对数方方程,否则称为超越方程(三角方程,指数、对数方程等)。一般称程等)。一般称n n次多项式构成的方程次多项式构成的方程 为为n n次代数方程次代数方程,当当n n1 1时时,方程显然是非线性的方程显然是非线性的 一般稍微复杂的一般稍微复杂的3 3次以上的代数方程或超越方程次以上的代数方程或超越方程,很难甚至无法求
2、得精确解。本章将介绍常用的求解非很难甚至无法求得精确解。本章将介绍常用的求解非线性方程的近似根的几种数值解法线性方程的近似根的几种数值解法 第1页/共29页记笔记非线性方程的数值解法非线性方程的数值解法 通常方程根的数值解法大致分为三个步骤进行通常方程根的数值解法大致分为三个步骤进行判定根的存在性。即方程有没有根?如果有判定根的存在性。即方程有没有根?如果有根,有几个根?根,有几个根?确定根的分布范围。即将每一个根用区间隔确定根的分布范围。即将每一个根用区间隔离开来,这个过程实际上是获得方程各根的离开来,这个过程实际上是获得方程各根的初始近似值。初始近似值。根的精确化。将根的初始近似值按某种方
3、法根的精确化。将根的初始近似值按某种方法逐步精确化,直到满足预先要求的精度为止逐步精确化,直到满足预先要求的精度为止第2页/共29页2.1 迭代法迭代法 对于一般的非线性方程对于一般的非线性方程,没有通常所说的求根没有通常所说的求根公式求其精确解公式求其精确解,需要设计近似求解方法需要设计近似求解方法,即迭代法。即迭代法。它是一种逐次逼近的方法它是一种逐次逼近的方法,用某个固定公式反复校正用某个固定公式反复校正根的近似值根的近似值,使之逐步精确化,最后得到满足精度要使之逐步精确化,最后得到满足精度要求的结果。求的结果。为求解非线性方程为求解非线性方程f(x)=0f(x)=0的根,先将其写成便于
4、的根,先将其写成便于迭代的等价方程迭代的等价方程 (2.3)(2.3)其中其中 为为x x的连续函数的连续函数第3页/共29页例例4用迭代法求方程用迭代法求方程 在在x=1.5附近的一个根附近的一个根解解 将方程改写成如下两种等价形式将方程改写成如下两种等价形式 相应地可得到两个迭代公式相应地可得到两个迭代公式如果取初始值如果取初始值 1.51.5,用上述两个迭代公,用上述两个迭代公式分别迭代,计算结果见式分别迭代,计算结果见P P2121 第4页/共29页2.1 迭代法迭代法即如果数即如果数 使使f(x)=0,则也有则也有 ,反之反之,若若 ,则也有则也有 ,称称 为迭代函数为迭代函数任任取
5、一个初值取一个初值 ,代入式代入式 的右端的右端,得到得到 再将再将 代入式代入式 的右端的右端,得到得到 ,依此类推依此类推,得到一个数列得到一个数列 ,其一般表示其一般表示 式式(2.4)(2.4)称为求解非线性方程的称为求解非线性方程的简单迭代法简单迭代法。(2.4)(2.4)第5页/共29页如果由迭代格式如果由迭代格式 产生的序列产生的序列 收敛收敛,即即 则称迭代法收敛。则称迭代法收敛。实实际际计计算算中中当当然然不不可可能能也也没没必必要要无无穷穷多多步步地地做做下下去去,对预先给定的精度要求对预先给定的精度要求,只要某个只要某个k k满足满足即可结束计算并取即可结束计算并取 当然
6、,迭代函数当然,迭代函数 的构造方法是多种多样的。的构造方法是多种多样的。第6页/共29页迭代公式收敛(发散)指迭代序列xk收敛(发散)。求方程f(x)=x10 x+2=0的一个根,取4位有效数字计算。问题:迭代公式是否一定收敛?因f(0)=10,f(1)=-70,所以方程在(0,1)中有根。方程改写为两种等价形式:看下例:解对应的迭代公式分别为10 x=x+2x=lg(x+2)第7页/共29页用迭代公式(1)x1=lg3=0.4771,x2=lg(x1+2)=0.3939,.,x6=0.3758,x7=lg(x6+2)=0.3758,用迭代公式(2)x1=10-2=8,x2=108-2108
7、,x3=10108-210108,x6、x7重合,所以迭代公式(1)是收敛的,x*0.3758。迭代公式(2)发散。取x0=1,算得,x0=1,算得第8页/共29页2.3.3迭代法收敛的条件迭代法收敛的条件 对方程对方程f(x)=0可以构造不同的迭代公式可以构造不同的迭代公式,但迭代公式但迭代公式并非总是收敛。那么并非总是收敛。那么,当迭代函数当迭代函数 满足什满足什么条件时,相应的迭代公式才收敛呢?即使迭么条件时,相应的迭代公式才收敛呢?即使迭代收敛时,我们也不可能迭代很多次,而是迭代收敛时,我们也不可能迭代很多次,而是迭代有限次后就停止,这就需要估计迭代值的误代有限次后就停止,这就需要估计
8、迭代值的误差,以便适时终止迭代差,以便适时终止迭代第9页/共29页定理定理2.1设函数设函数 在在a,b上具有连续的一阶导上具有连续的一阶导 数数,且满足且满足(1)对所有的)对所有的xa,b有有a,b(2)存在存在0L1,使所有的使所有的xa,b有有L则方程则方程 在在a,b上的解上的解 存在且唯一存在且唯一,对任意的,对任意的 a,b,迭代过程迭代过程均收敛于均收敛于 。并有误差估计式。并有误差估计式 第10页/共29页例求方程x=ex在x=0.5附近的一个根,按5位小数计算,结果的精度要求为=103.解方程等价于f(x)=xex=0.由于f(0.5)0,故x*(0.5,0.6),令g(x
9、)=ex,在(0.5,0.6)内,g(x)的一阶导数连续,且有所以用迭代公式xk+1=exk进行计算是收敛的。根据定理2.1的推论第11页/共29页迭代结果:0123450.50.606530.545240.579700.560070.571170.106530.061290.034460.019630.011106789100.564860.568440.566410.567560.566910.006310.003580.002030.001150.00065kxkxkxk-1xkxk-1kxk|x10-x9|=0.000650c0),),使使 则称序列则称序列 是是 p阶收敛的阶收敛的,
10、c称渐近误差常数。称渐近误差常数。特别地特别地,p=1=1时称为线性收敛时称为线性收敛,p=2=2时称为平方收时称为平方收敛。敛。1 1 p 2 2时称为超线性收敛。时称为超线性收敛。数数p的大小反映了迭代法收敛的速度的快慢,的大小反映了迭代法收敛的速度的快慢,p愈大,则收敛的速度愈快,故迭代法的收敛阶是愈大,则收敛的速度愈快,故迭代法的收敛阶是对迭代法收敛速度的一种度量。对迭代法收敛速度的一种度量。第17页/共29页定理定理2.3设迭代过程设迭代过程 ,若若 在所求根在所求根 的邻域连续且的邻域连续且 则迭代过程则迭代过程在在 邻域是邻域是p阶收敛的。阶收敛的。证证:由于由于 即在即在 邻域
11、邻域 ,所以所以 有局部收敛性有局部收敛性,将将 在在 处泰勒展开处泰勒展开 根据已知条件得根据已知条件得 由迭代公式由迭代公式 及及有有第18页/共29页例例2.8已知迭代公式已知迭代公式收敛于收敛于 证明该迭代公式平方收敛。证明该迭代公式平方收敛。证证:迭代公式相应的迭代函数为迭代公式相应的迭代函数为将将 代入,代入,根据定理根据定理2.3可知,迭代公式平方收敛。可知,迭代公式平方收敛。为了使迭代过程收敛或提高收敛的速度为了使迭代过程收敛或提高收敛的速度,可设法可设法 提高初值的精度以减少迭代的次数提高初值的精度以减少迭代的次数 提高收敛的阶数提高收敛的阶数 p第19页/共29页 用迭代法
12、可逐步精确方程用迭代法可逐步精确方程 根的近似值,根的近似值,但必须要找到但必须要找到 的等价方程的等价方程 ,如果如果 选选得不合适得不合适,不仅影响收敛速度不仅影响收敛速度,而且有可能造成迭代格而且有可能造成迭代格式发散。能否找到一种迭代方法式发散。能否找到一种迭代方法,既结构简单既结构简单,收敛速收敛速度快度快,又不存在发散的问题。这就是本节要介绍的牛顿又不存在发散的问题。这就是本节要介绍的牛顿迭代法迭代法牛顿迭代法的基本思想牛顿迭代法的基本思想 牛顿迭代法一种重要和常用的迭代法牛顿迭代法一种重要和常用的迭代法,它的基本它的基本思想是将非线性函数思想是将非线性函数f(x)逐步线性化逐步线
13、性化,从而将非线性方从而将非线性方程程f(x)=0近似地转化为线性方程求解。近似地转化为线性方程求解。2.4 牛顿迭代法牛顿迭代法 第20页/共29页 对于方程对于方程 ,设其近似根为设其近似根为 ,函数函数f(x)可在可在 附近作泰勒展开附近作泰勒展开忽略高次项忽略高次项,用其线性部分作为函数用其线性部分作为函数f(x)f(x)的近似,的近似,设设 的根的根 ,则有则有 ,即即 将右端取为将右端取为 ,即即 是比是比 更接近于更接近于 的近似值的近似值 这就是著名的牛顿迭代公式这就是著名的牛顿迭代公式第21页/共29页 牛顿迭代法的收敛性牛顿迭代法的收敛性定理定理2.4 设设 是方程是方程
14、的单根的单根,且且f(x)在在 的某的某邻域内有连续的二阶导数邻域内有连续的二阶导数,则牛顿法在则牛顿法在 附近局部收附近局部收敛敛,且至少二阶收敛且至少二阶收敛,有有 证证:牛顿迭代公式对应的迭代函数为牛顿迭代公式对应的迭代函数为 若若 是方程是方程 的单根的单根,则有则有 ,从而从而 由定理由定理2.2知知,牛顿迭代法在牛顿迭代法在 附近局部收敛。又由附近局部收敛。又由定理定理2.3知知,迭代公式至少具有二阶收敛速度。迭代公式至少具有二阶收敛速度。第22页/共29页2.4.4牛牛顿顿迭迭代代法法的的算算法法实实现现第23页/共29页例例2.11 用用牛顿迭代法牛顿迭代法牛顿迭代法牛顿迭代法
15、求求 x=e-x的根的根,=10-4解:因解:因 f(xk)=xex 1,f(xk)=ex(x+1)建立迭代公式建立迭代公式取取x0=0.5,逐次计算得逐次计算得x1=0.57102,x2=0.56716,x3=0.56714第24页/共29页2.5弦截法弦截法 牛牛顿顿迭迭代代法法虽虽然然具具有有收收敛敛速速度度快快的的优优点点,但但每每迭迭代代一一次次都都要要计计算算导导数数 ,当当 比比较较复复杂杂时时,不不仅仅每每次次计计算算 带带来来很很多多不不便便,而而且且还还可可能能十十分分麻麻烦烦,如如果果用用不不计计算算导导数数的的迭迭代代方方法法,往往往往只只有有线线性性收收敛敛的的速速度
16、度。本本节节介介绍绍的的弦弦截截法法便便是是一一种种不不必必进进行行导导数数运运算算的的求求根根方方法法。弦弦截截法法在在迭迭代代过过程程中中不不仅仅用用到到前前一一步步 处处的的函函数数值值,而而且且还还使使用用 处处的的函函数数值值来来构构造造迭迭代代函函数数,这这样样做做能能提提高高迭迭代代的的收收敛敛速度。速度。第25页/共29页弦截法的基本思想弦截法的基本思想 为避免计算函数的导数为避免计算函数的导数 ,使用差商,使用差商 替代牛顿公式中的导数替代牛顿公式中的导数 ,便得到迭代公式便得到迭代公式 称为弦截迭代公式,称为弦截迭代公式,相应的迭代法称为弦截法相应的迭代法称为弦截法。第26
17、页/共29页 可以证明,弦截法具有超线性收敛,收敛可以证明,弦截法具有超线性收敛,收敛的阶约为的阶约为1.618,它与前面介绍的一般迭代法一,它与前面介绍的一般迭代法一样都是线性化方法,但也有区别。即一般迭代样都是线性化方法,但也有区别。即一般迭代法在计算法在计算 时只用到前一步的值时只用到前一步的值 ,故称之,故称之为单点迭代法;而弦截法在求为单点迭代法;而弦截法在求 时要用到前两时要用到前两步的结果步的结果 和和 ,使用这种方法必须给出两,使用这种方法必须给出两个初始近似根个初始近似根 ,这种方法称为多点迭代,这种方法称为多点迭代法法。第27页/共29页例例2.12用弦截法求方程用弦截法求方程 在在 初始初始 值邻近的一个根。要求值邻近的一个根。要求解:取解:取 ,令令 利用弦截迭代公式利用弦截迭代公式 计算结果见计算结果见P34列表,列表,易见取近似根易见取近似根 则可满足精度要求。则可满足精度要求。第28页/共29页感谢您的观看!第29页/共29页