ImageVerifierCode 换一换
格式:PPT , 页数:42 ,大小:741KB ,
文档编号:4614159      下载积分:25 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-4614159.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(晟晟文业)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(数值分析课件第九章.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

数值分析课件第九章.ppt

1、1第第9 9章章 常微分方程初值问题数值解法常微分方程初值问题数值解法 本章着重考察一阶方程的初值问题.)(),(00yxyyxfy(1.1)(1.2)只要函数 适当光滑譬如关于 满足利普希茨(Lipschitz)条件),(yxfy.),(),(yyLyxfyxf(1.3)理论上就可以保证初值问题(1.1),(1.2)的解 存在并且唯一.)(xyy 2 所谓数值解法数值解法,就是寻求解 在一系列离散节点)(xy 121nnxxxx上的近似值 .相邻两个节点的间距 称为步长步长.,121nnyyyynnnxxh 1 如不特别说明,总是假定 为定数,这时节点为 .),2,1(ihhi),2,1,0

2、(0inhxxn 首先,要对方程(1.1)离散化,建立求数值解的递推公式.一类是计算 时只用到前一点的值 ,称为单步单步法法.另一类是用到 前面 点的值 ,称为 步法步法.1nyny1nyk11,knnnyyyk 其次,要研究公式的局部截断误差和阶,数值解 与精确解 的误差估计及收敛性,还有递推公式的计算稳定性等问题.ny)(nxy3 9.1 9.1 简单的数值方法简单的数值方法.)(),(00yxyyxfy一 欧拉法与后退的欧拉法(1.1)(1.2)如果对方程(1.1)从 到 积分,得 nx1nx.)(,()()(11nnxxnndxxyxfxyxy(1.4)右端积分用左矩形公式 近似,再以

3、 代替 代替 得到欧拉公式)(,(nnxyxfhny1),(nnyxy)(1nxy).,(1nnnnyxhfyy(1.5)4图8-1若初值 已知,则依公式(1.5)可逐步算出),(),(11120001yxhfyyyxhfyy0y欧拉法又称折线法,几何意义如下图 5 解解 欧拉公式的具体形式为).2(1nnnnnyxyhyy取步长 ,计算结果见表9-1.1.0h7321.17848.10.14142.14351.15.06733.17178.19.03416.13582.14.06125.16498.18.02649.12774.13.05492.15803.17.01832.11918.12

4、.04832.15090.16.00954.11000.11.0)()(19nnnnnnxyyxxyyx计算结果对比表 例例1 1 求解初值问题.1)0(),10(2yxyxyyxy21精确解:6 如果在(1.4)中右端积分用右矩形公式 近似,则得另一个公式)(,(11nnxyxfh),(111nnnnyxhfyy(1.6)称为后退的欧拉法后退的欧拉法.后退的欧拉公式与欧拉公式有着本质的区别,后者是关于 的一个直接的计算公式,这类公式称作是显式的显式的;1ny(1.4)然而公式(1.6)的右端含有未知的 ,它实际上是关于 的一个函数方程,这类公式称作是隐式的隐式的.1ny1ny1)(,()()

5、(1nnxxnndxxyxfxyxy7 隐式方程(1.6)通常用迭代法求解.先用欧拉公式),()0(1nnnnyxhfyy给出迭代初值 ,用它代入(1.6)式的右端,使之转化为显式,直接计算得)0(1ny),()0(11)1(1nnnnyxhfyy然后再用 代入(1.5)式,又有)1(1ny).,()1(11)2(1nnnnyxhfyy8如此反复进行,得).,1,0(),()(11)1(1kyxhfyyknnnkn(1.7)由于 对 满足利普希茨条件(1.3).由(1.7)减(1.6)得),(yxfy.),(),(1)(111)(111)1(1nknnnknnnknyyhLyxfyxfhyy由

6、此可知,只要 迭代法(1.7)就收敛到解 .1hL1ny9二二 梯形方法梯形方法 为得到比欧拉法精度高的计算公式,在等式(1.4)右端积分中若用梯形求积公式近似,并用 代替 代替 ,则得 ny1),(nnyxy)(1nxy),(),(2111nnnnnnyxfyxfhyy(1.8)称为梯形方法梯形方法.梯形方法是隐式单步法,可用迭代法求解.同后退的欧拉方法一样,仍用欧拉方法提供迭代初值,则梯形法的迭代公式为 1)(,()()(1nnxxnndxxyxfxyxy(1.4)10).,2,1,0(),(),(2);,()(11)1(1)0(1kyxfyxfhyyyxfhyyknnnnnknnnnn(

7、1.9)为了分析迭代过程的收敛性,将(1.8)式与(1.9)式相减,得(1)()111111(,)(,),2kknnnnnnhyyfxyfxy于是有,2)(11)1(11knnknnyyhLyy式中 为 关于 的利普希茨常数.),(yxfyL11如果选取 充分小,使得 h,12hL则当 时有 ,这说明迭代过程(1.9)是收敛的.k1)(1nknyy12三三 单步法的局部截断误差与阶单步法的局部截断误差与阶 初值问题(1.1),(1.2)的单步法可用一般形式表示为),(11hyyxhyynnnnn(1.10)其中多元函数 与 有关,当 含有 时,方法是隐式的,若不含 则为显式方法,所以显式单步法

8、可表示为),(yxf1ny1ny),(1hyxhyynnnn(1.11)称为增量函数,例如对欧拉法(1.5)有),(hyx).,(),(yxfhyx13 对一般显式单步法则可如下定义.定义定义1 1 设 是初值问题(1.1),(1.2)的准确解,称)(xyy),(,()()(11hxyxhxyxyTnnnnn(1.12)为显式单步法(1.11)的局部截断误差局部截断误差.之所以称为局部的,是假设在 前各步没有误差.1nTnx当 时,计算一步,则有)(nnxyy.),(,()()(),()()(11111nnnnnnnnnnnThxyxhxyxyhyxhyxyyxy所以,局部截断误差可理解为用方

9、法(1.11)计算一步的误差.14 根据定义,显然欧拉法的局部截断误差),()(2)()()()(,()()(3211hOxyhxyhxyhxyxyxhfxyxyTnnnnnnnnn 这里 称为局部截断误差主项.显然 .)(22nxyh)(21hOTn15 定义定义2 2 设 是初值问题(1.1),(1.2)的准确解,若存在最大整数 使显式单步法(1.11)的局部截断误差满足)(xyp),(),()()(11pnhOhyxhxyhxyT(1.13)则称方法(1.11)具有 阶精度阶精度.p 以上定义对隐式单步法(1.10)也是适用的.16 对后退欧拉法(1.6)其局部截断误差为).()(2)(

10、)()()()(2)()(,()()(322321111hOxyhhOxyhxyhhOxyhxyhxyxhfxyxyTnnnnnnnnnn 这里 ,是1阶方法,局部截断误差主项为 .1p)(22nxyh 17 对梯形法(1.8)有).()(12)()(2)()()(2)(!3)(2)()()(2)()(434232111hOxyhhOxyhxyhxyxyhxyhxyhxyhxyxyhxyxyTnnnnnnnnnnnnn 所以梯形方法(2.7)是二阶的,其局部误差主项为 .)(123nxyh 18四四 改进的欧拉公式改进的欧拉公式 梯形方法虽然提高了精度,但其算法复杂,在应用迭代公式(1.9)进

11、行实际计算时,每迭代一次,都要重新计算函数 的值,而迭代又要反复进行若干次,计算量很大,而且往往难以预测.),(yxf 为了控制计算量,通常只迭代一两次就转入下一步的计算,这就简化了算法.具体地,先用欧拉公式求得一个初步的近似值 ,称之为预测值预测值,预测值 的精度可能很差,再用梯形公式(1.8)将它校正一次,即按(1.9)式迭代一次得,这个结果称校正值校正值,而这样建立的预测-校正系统通常称为改进改进的欧拉公式:的欧拉公式:1ny1ny19预测),(1nnnnyxhfyy校正).,(),(2111nnnnnnyxfyxfhyy(1.14)或表示为下列平均化形式).(21),(),(11cpn

12、pnncnnnpyyyyxhfyyyxhfyy20 例例2 2 用改进的欧拉方法求解初值问题 解解 改进的欧拉公式为).(21),2(),2(11cpnpnpncnnnnpyyyyxyhyyyxyhyy仍取 ,计算结果见表9-2.同例1中欧拉法的计算结果比较,改进欧拉法明显改善了精度.1.0h.1)0(),10(2yxyxyy217321.17379.10.14142.14164.15.06733.16782.19.03416.13434.14.06125.16153.18.02649.12662.13.05492.15525.17.01832.11841.12.04832.14860.16.

13、00954.10959.11.0)()(29nnnnnnxyyxxyyx欧拉法)计算结果对比(改进的表7321.17848.10.14142.14351.15.06733.17178.19.03416.13582.14.06125.16498.18.02649.12774.13.05492.15803.17.01832.11918.12.04832.15090.16.00954.11000.11.0)()(19nnnnnnxyyxxyyx)计算结果对比(欧拉法表22 9.3 9.3 龙格龙格-库塔方法库塔方法 ).,(),(2111nnnnnnyxfyxfhyy9.3.1 9.3.1 显式龙格

14、显式龙格-库塔法的一般形式库塔法的一般形式 上节给出了显式单步法的表达式),(1hyxhyynnnn其局部截断误差为(前提:)11111()()()(,(),)()pnnnnnnnTy xyy xy xhxy xhO h对欧拉法 ,即方法为 阶,若用改进欧拉法,它可表为)(21hOTn1p).,(,(),(21nnnnnnnnyxhfyhxfyxfhyy(3.1)),(1nnnnyxhfyy()nnyy x23此时增量函数).,(,(),(21),(nnnnnnnnyxhfyhxfyxfhyx(3.2)它比欧拉法的 ,增加了计算一个右函数 的值,可望 .),(),(nnnnyxfhyxf2p

15、若要使得到的公式阶数 更大,就必须包含更多的 值.pf 从方程(1.1)等价的积分形式(1.4),即,)(,()()(11nnxxnndxxyxfxyxy(3.3)若要使公式阶数提高,就必须使右端积分的数值求积公式24精度提高,必然要增加求积节点,为此可将(3.3)的右端用求积公式表示为1.)(,()(,(1nnxxriininihxyhxfchdxxyxf点数 越多,精度越高,上式右端相当于增量函数 ,为得到便于计算的显式方法,可类似于改进欧拉法(3.1),(3.2),将公式表示为 r),(hyx),(1hyxhyynnnn(3.4)其中,2),(),(,),(1111riKhyhxfKyx

16、fKKchyxijjijnininnriiinn(3.5)25这里 均为常数.ijiic,(3.4)和(3.5)称为 级显式龙格龙格-库塔库塔(Runge-Kutta)法法,简称R-K方法.r 当 时,就是欧拉法,此时方法的阶为 .),(),(,1nnnnyxfhyxr1p 当 时,改进欧拉法(3.1),(3.2)也是其中的一种,下面将证明阶 .2r2p 要使公式(3.4),(3.5)具有更高的阶 ,就要增加点数 .pr 下面只就 推导R-K方法.2r26 9.3.2 9.3.2 二阶显式二阶显式R-KR-K方法方法 对 的R-K方法,由(3.4),(3.5)可得到如下的计算公式 2r).,(

17、),(),(12122122111hKyhxfKyxfKKcKchyynnnnnn(3.6)这里 均为待定常数,希望适当选取这些系数,使公式阶数 尽量高.21221,ccp 根据局部截断误差定义,(3.6)的局部截断误差为 111112221()()()(,)(,),nnnnnnnnnnTy xyy xy xh c fxycfxh yhf(3.7)27这里 .),(),(nnnnnyxffxyy 为得到 的阶 ,要将上式各项在 处做泰勒展开,由于 是二元函数,故要用到二元泰勒展开,各项展开式为 1nTp),(nnyx),(yxf),(!32)(4321hOyhyhyhyxynnnnn 其中 )

18、;,(),(),(),(),(2),(,),(),()(,(,),(2nnynnnxnnynnyynnnxynnnxxnnnnynnxnnnnnnnyxffyxfyxfyxffyxffyxfyfyxfyxfxyxfdxdyfyxfy(3.8)28).(),(),(),(2212212hOfhyxfhyxfffhyhxfnnnynnxnnnn将以上结果代入(3.7)则有).(),()21(),()21()1()(),(),(),(),(2322122222132122121hOhfyxfchyxfchfcchOhfyxfhyxffcfchfyxfyxfhfhTnnnynnxnnnnynnxnnn

19、nnynnxnn要使公式(3.6)具有 阶,必须使 2p29.021,021,012122221cccc(3.9)即.1,21,212121222cccc(3.9)的解是不唯一的.令 ,则得 02 ac.21,12121aac这样得到的公式称为二阶R-K方法,如取 ,则2/1a.1,2/121221cc这就是改进欧拉法(3.1).30若取 ,则 .得计算公式 1a2/1,1,021221cc).2,2(),(,12121KhyhxfKyxfKhKyynnnnnn(3.10)称为中点公式中点公式,相当于数值积分的中矩形公式.(3.10)也可表示为).,(2,2(1nnnnnnyxfhyhxhfy

20、y31 的R-K公式(3.6)的局部误差不可能提高到 .2r)(4hO 把 多展开一项,从(3.8)的 看到展开式中 的项是不能通过选择参数消掉的.2Kny ffffyxy 实际上要使 的项为零,需增加3个方程,要确定4个参数 ,这是不可能的.3h21221,cc 故 的显式R-K方法的阶只能是 ,而不能得到三阶公式.2r2p329.3.3 9.3.3 三阶与四阶显式三阶与四阶显式R-KR-K方法方法 要得到三阶显式R-K方法,必须 .此时(3.4),(3.5)的公式表示为 3r).,(),(),(),(232131321212213322111hKhKyhxfKhKyhxfKyxfKKcKc

21、Kchyynnnnnnnn(3.11)其中 及 均为待定参数,公式(3.11)的局部截断误差为 321,ccc32313212,.)()(33221111KcKcKchxyxyTnnn只要将 按二元函数泰勒展开,使 ,可32,KK)(41hOTn33得待定参数满足方程.61,31,21,13223233222332232313212321cccccccc(3.12)这是8个未知数6个方程的方程组,解也不是唯一的.可以得到很多公式.34满足条件(3.12)的公式(3.11)统称为三阶R-K公式.一个常见的公式为).2,(),2,2(),(),4(62131213211hKhKyhxfKKhyhx

22、fKyxfKKKKhyynnnnnnnn此公式称为库塔库塔三阶方法.继续上述过程,经过较复杂的数学演算,可以导出各种四阶龙格-库塔公式,下列经典公式是其中常用的一个:35).,(),2,2(),2,2(),(),22(6342312143211hKyhxfKKhyhxfKKhyhxfKyxfKKKKKhyynnnnnnnnnn 四阶龙格-库塔方法的每一步需要计算四次函数值 ,可以证明其局部截断误差为 5()O h(,)f x y36 例例3 3 设取步长 ,从 直到 用四阶龙格-库塔方法求解初值问题 2.0h0 x1x.1)0(),10(2yxyxyy 解解 这里,经典的四阶龙格-库塔公式(3

23、.13)具有形式 37.)(2,222,222,2),22(6334223112143211hKyhxhKyKKhyhxKhyKKhyhxKhyKyxyKKKKKhyynnnnnnnnnnnnnn387321.17321.10.16125.16125.18.04832.14833.16.03416.13417.14.01832.11832.12.0)(39nnnxyyx计算结果表 比较例3和例2的计算结果,显然以龙格-库塔方法的精度为高.虽然四阶龙格-库塔方法的计算量(每一步要4次计算函数 )比改进的欧拉方法(它是一种二阶龙格-库塔方法,每一步只要2次计算函数 )大一倍,但由于这里放大了步长

24、,表9-3和表9-2 所耗费的计算量几乎相同.ff)2.0(h 龙格-库塔方法的推导基于泰勒展开方法,因而它要求所求的解具有较好的光滑性质.反之,如果解的光滑性差,那么,使用四阶龙格-库塔方法求得的数值解,其精度可能反而不如改进的欧拉方法.399.3.4 9.3.4 变步长的龙格变步长的龙格-库塔方法库塔方法 单从每一步看,步长越小,截断误差就越小,但随着步长的缩小,在一定求解范围内所要完成的步数就增加了.步数的增加不但引起计算量的增大,而且可能导致舍入误差的严重积累.因此同积分的数值计算一样,微分方程的数值解法也有个选择步长的问题.在选择步长时,需要考虑两个问题:1 怎样衡量和检验计算结果的

25、精度?2 如何依据所获得的精度处理步长?考察经典的四阶龙格-库塔公式(3.13).40 从节点 出发,先以 为步长求出一个近似值,记为 ,由于公式的局部截断误差为 ,故有 nxh)(1hny)(5hO,)(5)(11chyxyhnn(3.14)然后将步长折半,即取 为步长从 跨两步到 ,再求得一个近似值 ,每跨一步的截断误差是 ,因此有 2hnx1nx)2(1hny52 hc,22)(5)2(11hcyxyhnn(3.15)比较(3.14)式和(3.15)式我们看到,步长折半后,误41差大约减少到 ,即有161.161)()()(11)2(11hnnhnnyxyyxy由此易得下列事后估计式.151)()(1)2(1)2(11hnhnhnnyyyxy这样,可以通过检查步长,折半前后两次计算结果的偏差)(1)2(1hnhnyy42来判定所选的步长是否合适,具体地说,将区分以下两种情况处理:1.对于给定的精度 ,如果 ,反复将步长折半进行计算,直至 为止,这时取最终得到的 作为结果;)2(1hny 2.如果 ,反复将步长加倍,直到 为止,这时再将步长折半一次,就得到所要的结果.这种通过加倍或折半处理步长的方法称为变步长方法变步长方法.表面上看,为了选择步长,每一步的计算量增加了,但总体考虑往往是合算的.

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|