数值分析-非线性方程的数值解法课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数值分析-非线性方程的数值解法课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 分析 非线性 方程 解法 课件
- 资源描述:
-
1、Tel: 86613747E-mail: 授课授课: 68学分:学分:4 y a+1 a -50 O 50 x 50,502)(xeeayaxax记笔记记笔记 由题设知曲线的最底点由题设知曲线的最底点(0,y(0)(0,y(0)与最高点与最高点(50,y(50)(50,y(50)之间的高度差为之间的高度差为1m,1m,所以应有所以应有y(50)=y(0)+1,y(50)=y(0)+1,即即 12)(5050aeeaaxa y a+1 a -50 O 50 x 要计算电缆的长度要计算电缆的长度, ,必必须先求出上述方程中须先求出上述方程中的的a ,a ,由于它是关于由于它是关于a a的非线性方程
2、的非线性方程, ,没有现没有现成的公式可用成的公式可用,因此只能寻求其他解法因此只能寻求其他解法. . 10 xxxyxy1lgxx1lg 10 xx010 xx RTbVVap)(20)()(2RTbVVapVf本章将介绍求解这种类型方程的近本章将介绍求解这种类型方程的近似解的数值方法似解的数值方法2.1 引言引言 在科学研究和工程设计中在科学研究和工程设计中, 经常会遇到的一大类经常会遇到的一大类问题是非线性方程问题是非线性方程f(x)=0 (2.1)的求根问题,其中的求根问题,其中f(x)为非线性函数。为非线性函数。方程方程f(x)=0的根的根, 亦称为函数亦称为函数f(x)的零点的零点
3、 如果如果f(x)可以分解成可以分解成 , ,其中其中m为为正整数且正整数且 , ,则称则称x x* *是是f(x)f(x)的的m重零点重零点, ,或称或称方程方程f(x)=0的的m重根。当重根。当m=1时称时称x x* *为单根。若为单根。若f(x)存在存在m阶导数阶导数, ,则是方程则是方程f(x)的的m重根重根( (m1) 当且仅当当且仅当)()()(*xgxxxfm0)(*xg0)(,0)()()(*)(*)1(*xfxfxfxfmm记笔记记笔记 当当f(x)f(x)不是不是x x的线性函数时,称对应的函数方程的线性函数时,称对应的函数方程为非线性方程。如果为非线性方程。如果f(x)f
4、(x)是多项式函数,则称为代数是多项式函数,则称为代数方程,否则称为超越方程(三角方程,指数、对数方方程,否则称为超越方程(三角方程,指数、对数方程等)。一般称程等)。一般称n n次多项式构成的方程次多项式构成的方程 )0(00111nnnnnaaxaxaxa为为n n次代数方程次代数方程, ,当当n n1 1时时, ,方程显然是非线性的方程显然是非线性的 一般稍微复杂的一般稍微复杂的3 3次以上的代数方程或超越方程次以上的代数方程或超越方程, ,很难甚至无法求得精确解。本章将介绍常用的求解很难甚至无法求得精确解。本章将介绍常用的求解非线性方程的近似根的几种数值解法非线性方程的近似根的几种数值
5、解法 记笔记记笔记 远在公元前远在公元前1700年的古巴比伦人就已有关于一、年的古巴比伦人就已有关于一、二次方程的解法。九章算术二次方程的解法。九章算术(公元前公元前50100年年)其中其中“方程术方程术”有联立一次方程组的一般解法。有联立一次方程组的一般解法。1535年意大利数学家坦特格里亚年意大利数学家坦特格里亚(TorTaglia)发发现了三次方程的解法,卡当现了三次方程的解法,卡当(HCardano)从他那从他那里得到了这种解法,于里得到了这种解法,于1545年在其名著大法年在其名著大法中公布了三次方程的公式解,称为卡当算法。中公布了三次方程的公式解,称为卡当算法。后来卡当的学生弗瑞里
6、后来卡当的学生弗瑞里(Ferrari)又提出了四次方又提出了四次方程的解法。此成果更激发了数学家们的情绪,但程的解法。此成果更激发了数学家们的情绪,但在以后的二个世纪中,求索工作始终没有成效,在以后的二个世纪中,求索工作始终没有成效,导致人们对高次代数方程解的存在性产生了怀疑。导致人们对高次代数方程解的存在性产生了怀疑。1799年,高斯证明了代数方程必有一个实根或复年,高斯证明了代数方程必有一个实根或复根的定理,称此为代数基本定理,并由此可以立根的定理,称此为代数基本定理,并由此可以立刻推理刻推理n次代数方程必有次代数方程必有n个实根或复根。个实根或复根。但在以后的几十年中仍然没有找出高次代数
7、方程但在以后的几十年中仍然没有找出高次代数方程的公式解。一直到的公式解。一直到18世纪,法国数学家拉格朗日世纪,法国数学家拉格朗日用根置换方法统一了二、三、四方程的解法。用根置换方法统一了二、三、四方程的解法。但求解五次方程时未能如愿但求解五次方程时未能如愿,开始意识到有潜藏其开始意识到有潜藏其中的奥妙中的奥妙, 用现代术语表示就是置换群理论问题。用现代术语表示就是置换群理论问题。在继续探索在继续探索5次以上方程解的艰难历程中,第一个次以上方程解的艰难历程中,第一个重大突破的是挪威数学家阿贝尔重大突破的是挪威数学家阿贝尔(NAbel1802-1829) 1824年阿贝尔发表了年阿贝尔发表了“五
8、次方程代数解法五次方程代数解法不可能存在不可能存在”的论文,但并未受到重视,连数学的论文,但并未受到重视,连数学大师高斯也未理解这项成果的重要意义。大师高斯也未理解这项成果的重要意义。1828年年17岁的法国数学家伽罗华岁的法国数学家伽罗华(EGalois 1811-1832)写出了划时代的论文写出了划时代的论文“关于五次方程关于五次方程的代数解法问题的代数解法问题”,指出即使在公式中容许用,指出即使在公式中容许用n次次方根,并用类似算法求五次或更高次代数方程的根方根,并用类似算法求五次或更高次代数方程的根是不可能的是不可能的文章呈交法兰西科学院后,因辈份太低遭到冷遇,文章呈交法兰西科学院后,
9、因辈份太低遭到冷遇,且文稿丢失。且文稿丢失。1830年伽罗华再进科学院递稿,得年伽罗华再进科学院递稿,得到泊松院士的判词到泊松院士的判词“完全不能理解完全不能理解”。后来伽罗华命运不佳,投考名校巴黎工科大学落榜,后来伽罗华命运不佳,投考名校巴黎工科大学落榜,屈就高等师院,并卷入政事两次入狱,被开除学籍,屈就高等师院,并卷入政事两次入狱,被开除学籍,又决斗受伤,死于又决斗受伤,死于1832年。决斗前,他把关于五年。决斗前,他把关于五次代数求解的研究成果写成长信,留了下来。次代数求解的研究成果写成长信,留了下来。十四年后,法国数学家刘维尔十四年后,法国数学家刘维尔(JLiouville)整理整理并
10、发表了伽罗华的遗作,人们才意识到这项近代并发表了伽罗华的遗作,人们才意识到这项近代数学发展史上的重要成果的宝贵。数学发展史上的重要成果的宝贵。38年后,即年后,即1870年,法国数学家若当年,法国数学家若当(CJordan)在专著论置换与代数方程中阐发在专著论置换与代数方程中阐发了伽罗华的思想,一门现代数学的分支了伽罗华的思想,一门现代数学的分支群论诞群论诞生了。生了。在前几个世纪中,曾开发出一些求解代数方程的在前几个世纪中,曾开发出一些求解代数方程的有效算法,它们构成了数值分析中的古典算法。有效算法,它们构成了数值分析中的古典算法。至于超越方程则不存在一般的求根方式。至于超越方程则不存在一般
11、的求根方式。本章介绍方程的迭代解法,它既可以用本章介绍方程的迭代解法,它既可以用来求解代数方程,也可以用来解超越方来求解代数方程,也可以用来解超越方程,并且仅限于求方程的实根。程,并且仅限于求方程的实根。运用迭代法求解方程的根应解决以下两运用迭代法求解方程的根应解决以下两个问题:个问题:n确定根的初值确定根的初值;n将进一步精确化到所需要的精度。将进一步精确化到所需要的精度。记笔记记笔记2.2 二分法二分法 二分法又称二分区间法二分法又称二分区间法, ,是求解方程是求解方程(2.1)(2.1)的近的近似根的一种常用的简单方法。似根的一种常用的简单方法。 设函数设函数f(x)f(x)在闭区间在闭
12、区间 a,ba,b上连续上连续, ,且且f(f(a)f()f(b)0,)0,根据连续函数的性质可知根据连续函数的性质可知, , f( (x)= 0)= 0在在( (a,b)a,b)内必有实根内必有实根, ,称区间称区间 a,ba,b为有根区间。为明确为有根区间。为明确起见起见, ,假定方程假定方程f(x)=0f(x)=0在区间在区间 a,ba,b内有惟一实根内有惟一实根x x* *。 二分法的基本思想是二分法的基本思想是: : 首先确定有根区间首先确定有根区间, ,将区将区间二等分间二等分, , 通过判断通过判断f(x)f(x)的符号的符号, , 逐步将有根区间逐步将有根区间缩小缩小, , 直
13、至有根区间足够地小直至有根区间足够地小, , 便可求出满足精度便可求出满足精度要求的近似根。要求的近似根。2.1.1确定有根区间的方法确定有根区间的方法 为了确定根的初值,首先必须圈定根所在的范围,为了确定根的初值,首先必须圈定根所在的范围, 称为称为圈定根或根的隔离圈定根或根的隔离。 在上述基础上,采取适当的数值方法确定具有一定在上述基础上,采取适当的数值方法确定具有一定 精度要求的初值。精度要求的初值。 对于代数方程,其根的个数(实或复的)与其次数对于代数方程,其根的个数(实或复的)与其次数 相同。至于超越方程,其根可能是一个、几个或无相同。至于超越方程,其根可能是一个、几个或无 解,并没
14、有什么固定的圈根方法解,并没有什么固定的圈根方法 求方程根的问题,就几何上讲求方程根的问题,就几何上讲,是求曲线是求曲线 y=f (x)与与 x轴交点的横坐标。轴交点的横坐标。 由高等数学知识知由高等数学知识知, 设设f (x)为区间为区间a,b上的单上的单值连续值连续, 如果如果f (a)f (b)0 , 则则a,b中至少有一个中至少有一个实根。如果实根。如果f (x)在在a,b上还是单调地递增或递减,上还是单调地递增或递减,则仅有一个实根。则仅有一个实根。记笔记记笔记n由此可大体确定根所在子区间,方法有:由此可大体确定根所在子区间,方法有: (1) 画图法画图法 (2) 逐步搜索法逐步搜索
15、法y=f(x)abyx(1) 画图法画图法 画出画出y = f (x)的略图,从而看出曲线与的略图,从而看出曲线与x轴交点的轴交点的 大致位置。大致位置。 也可将也可将f (x) = 0分解为分解为 1(x)= 2(x)的形式,的形式, 1(x) 与与 2(x)两曲线交点的横坐标所在的子区间即为含根两曲线交点的横坐标所在的子区间即为含根 区间。区间。例如例如 xlogx-1= 0= 0可以改写为可以改写为logx= =1/x画出对数曲线画出对数曲线y=logx, ,与双曲线与双曲线y= 1/x,它们交它们交 点的横坐标位于区间点的横坐标位于区间2,32,3内内(1) 画图法画图法xy1gxy
16、023yxn对于某些看不清根的函数,可以扩大一下曲线对于某些看不清根的函数,可以扩大一下曲线y0 xy=f(x)y=kf(x)记笔记记笔记y0 xABa1b1a2b2(2) 逐步搜索法逐步搜索法(2) (2) 搜索法搜索法 对于给定的对于给定的f (x),设有根区间为设有根区间为A, ,B,从从x0=A出发出发, ,以步长以步长h=(B-A)/n(n是是正整数正整数),在在A, ,B内取内取定节点定节点: :xi=x0ih (i=0,1,2, ,n),从左至右检查从左至右检查f (xi)的符号的符号, ,如发现如发现xi与端点与端点x0的函数值异号的函数值异号, ,则得到则得到一个缩小的有根子
17、区间一个缩小的有根子区间xi-1, ,xi。例例1 1 方程方程f(x)=xf(x)=x3 3-x-1=0 -x-1=0 确定其有根区间确定其有根区间解:用试凑的方法,不难发现解:用试凑的方法,不难发现 f(0)0f(0)0 在区间(在区间(0 0,2 2)内至少有一个实根)内至少有一个实根 设从设从x=0 x=0出发出发, ,取取h=0.5h=0.5为步长向右进行根的为步长向右进行根的 搜索搜索, ,列表如下列表如下x xf(x)f(x)0 0.5 1.0 1.5 20 0.5 1.0 1.5 2 + + + +可以看出,在可以看出,在1.01.0,1.5,1.5内必有一根内必有一根 用逐步
18、搜索法进行实根隔离的关键是选取步长用逐步搜索法进行实根隔离的关键是选取步长h 要选择适当要选择适当h ,使之既能把根隔离开来,工作量,使之既能把根隔离开来,工作量 又不太大。又不太大。 为获取指定精度要求的初值为获取指定精度要求的初值, ,可在以上隔离根的可在以上隔离根的 基础上采用对分法继续缩小该含根子区间基础上采用对分法继续缩小该含根子区间 二分法可以看作是搜索法的一种改进。二分法可以看作是搜索法的一种改进。 取有根区间取有根区间a,b之中点之中点, 将它分为两半将它分为两半,分点分点 ,这样就可缩小有根区间这样就可缩小有根区间2.2.2 二分法求根过程二分法求根过程 设方程设方程f(x)
19、=0在区间在区间a,b内有根内有根,二分法就是逐二分法就是逐步收缩有根区间,最后得出所求的根。步收缩有根区间,最后得出所求的根。具体过程如下具体过程如下 20bax y y=f(x) y=f(x) x* a x1 x* x0 b a x0 x1 b a1 b1 a1 b1 a2 b2 a2 b2 对压缩了的有根区间对压缩了的有根区间 施行同样的手法施行同样的手法, , 即取中点即取中点 , ,将区间将区间 再分为两半再分为两半, ,然然 后再确定有根区间后再确定有根区间 , ,其长度是其长度是 的的 二分之一二分之一 如此反复下去如此反复下去, ,若不出现若不出现 , ,即可得出一即可得出一
20、系列有根区间序列:系列有根区间序列: 上述每个区间都是前一个区间的一半上述每个区间都是前一个区间的一半, ,因此因此 的长度的长度11,ba2111bax11,ba22,ba11,ba0)(kxfkkbabababa,2211kkba ,)(21)(2111abababkkkkk 当当k时趋于零时趋于零, ,这些区间最终收敛于一点这些区间最终收敛于一点x x* * 即为即为 所求的根所求的根 。每次二分后每次二分后, ,取有根区间取有根区间 的中点的中点作为根的近似值,得到一个近似根的序列作为根的近似值,得到一个近似根的序列 该序列以根该序列以根x x* *为极限为极限 只要二分足够多次只要二
21、分足够多次( (即即k足够大足够大),),便有便有这里这里为给定精度为给定精度, ,由于由于 , ,则则 11122kkkkkababab1*22kkkkababxxkkba ,)(21kkkbax,210kxxxxkxx*kkbax,*当给定精度当给定精度0 0后后, ,要想要想 成立成立, ,只要只要取取k满足满足 即可,亦即当即可,亦即当: kxx*)(211abk12lglg)lg(abk时时, ,做到第做到第k+1次二分次二分, ,计算得到的计算得到的 就是就是满足精度要求的近似根满足精度要求的近似根 。 在程序中通常用相邻的在程序中通常用相邻的 与与 的差的绝的差的绝对值或对值或
22、与与 的差的绝对值是否小于的差的绝对值是否小于来来决定二分区间的次数。决定二分区间的次数。 kxkx1kxkakb y n 开 始 输 入 a , b, (a+b)/2 x f(a) f(x )0 ? xb x a |b-a|0 输 出 x 结 束 y n 二分法算法实现二分法算法实现例例 求求方程方程f( (x)=)=x3 3- -x-1=0 -1=0 在区间在区间1.0,1.5,1.5内内 的一的一 个实根个实根, 使误差不超过使误差不超过0.510-2。P19例例 证明方程证明方程 在区间在区间2, 3内有一个根内有一个根 , 使用二分法求误差不超过使用二分法求误差不超过0.510-3
23、的根要二的根要二 分多少次?分多少次?证明证明 令令 0523 xx52)(3xxxf016)3(, 01)2(ff且且f(x)f(x)在在2, 3上连续上连续, ,故方程故方程f(x)=0f(x)=0在在2,32,3内至少内至少有一个根。又有一个根。又 当时当时时,时, , ,故故f(x)f(x)在在2, 32, 3上是单调递增函数上是单调递增函数, ,从而从而f(x)f(x)在在2, 32, 3上有且仅有一根。上有且仅有一根。23)(2xxf3 , 2x0)( xf 给定误差限给定误差限 0.510-3 , ,使用二分法时使用二分法时 误差限为误差限为 只要取只要取k满足满足 )(211*
展开阅读全文