第二节-龙格-库塔方法

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基本思想:利用在某些特殊点上的函数值的线性组合来构造高阶单步法的平均斜率。(,)fxy第二节龙格-库塔法什么叫平均斜率?对差商应用微分中值定理,有,1()()iiyxyxh1()()()iiiyxyxhyxh利用微分方程,有(,)yfxy1()()(,())iiiiyxyxhfxhyxh这里的称为平均斜率。(,())iifxhyxh可将改进的欧拉格式改写成112121112(),(,),(,).iiiiiiyKKKyhfxyKyhfxK的算术平均值作为平均斜率。该公式可以看作是用和两个点处的斜率和1iixx12KK由改进型欧拉公式我们可以猜想,如果在1[,]iixx内多预测几个点的斜率,再对他们进行加权平均,可能得到精度更好的平均斜率!下面以2阶龙格-库塔方法为例来阐述这种思想考察区间上的一点,1[,]iixx01,ipixxphp用和的斜率和的加权平均作为平均iipxx12KK斜率的近似值:*K1122*KKK即取11122()iiyyhKK其中和是待定常数。若取,则121(,)iiKfxy问题在于如何确定处的斜率和常数和。ipx2K12仿照改进的欧拉方法,用欧拉方法预测的值,()ipyx1ipiyyphK并用它来估计斜率:2K2(,)ipipKfxy于是得到如下形式的算法:111221211(),(,),(,).iiiiiiyyhKKKfxyKfxyphK通过适当选取参数和的值,使得公式具有12,p2阶精度!!由泰勒公式展开,要使公式具有2阶精度,只需122112,p方程组有无穷多解:二级方法有无穷多种常见的3种二级方法:中点法(修正的Euler法)1221012,,cca取122(,(,))nnnnnnhhyyhfxyfxy二阶龙格库塔方法122112,cca取12[(,)(,(,))]nnnnnnnnhyyfxyfxhyhfxy3()Oh三级方法:N=3类似于N=2的推导方法,可得到1231;ccc223312;caca22223313;caca323216cab4()Oh常见的2种三阶方法:库塔三阶方法112346()nnhyykkk1(,);nnkfxy2122(,)nnhhkfxyk3122(,)nnkfxhyhkhk四级方法:N=45()Oh局部截断误差常见的2种四阶方法:经典龙格-库塔方法11234226()nnhyykkkk1(,)nnkfxy2122(,)nnhhkfxyk3222(,)nnhhkfxyk43(,)nnkfxhyhk解:201()dyxydxyy01(,)x例2:用经典的龙格-库塔方法求解下列初值问题。01.h经典的四阶龙格-库塔公式:11234226()nnhyykkkk12;nnnxkyy2112222()nnnhxhkykhyk4332()nnnxhkyhkyhk3222222();nnnhxhkykhyk0.10.20.30.40.51.09541.18321.26491.34161.4142nxny0.60.70.80.91.01.48321.54921.61251.67331.7321nxny同保留5位的精确值完全一致:0.10.20.30.40.51.09541.18321.26491.34161.4142nxny0.60.70.80.91.01.48321.54921.61251.67331.7321nxny21yx二、高阶和隐式Runge-Kutta方法注:对于显式N级R-K方法,最多只能得到N级方法;N1,2,3,45,6,78,910,11,…NN-1N-2()pN已经证明N级R-K方法的阶具有下列关系:()pN2N若要得到N阶以上方法,则使用N级隐式R-K方法N级隐式R-K方法的一般形式:11Nnniiiyyhck11(,);,...,NininijjjkfxahyhbkiNN级隐式R-K法可以达到2N阶(1)一级二阶的隐式中点方法:11nnyyhk1122(,)nnhkhkfxy(2)二级四阶的隐式R-K方法:1212()nnhkkyy112131326446[(),()]nnhkkfxhyhk221131326464[(),()]nnhkkfxhyhk三、变步长方法基本思想:根据精度自动地选择步长对于经典Runge-Kutta方法:012,,,nStep1:设从出发,以为步长,经过一步计算得到nxh511()()hnnyxyChStep2:取为步长,再从出发,经过两步计算得到nx2h521122()()()hnnhyxyC21111116(/)()()()hnnhnnyxyyxy2111116(/)()(())()hhnnnnyxyyxy221111115(/)(/)()()[]hhhnnnnyxyyy211(/)()||hhnnyy记如果,则将步长折半进行计算,直到为止此时取为最终结果;21(/)hny如果,则将步长加倍进行计算,直到为止此时将步长折半一次计算,得到的为最终结果。一、收敛性/*Convergence*/§3单步法的收敛性、相容性和绝对稳定性1(,,)nnnnyyhxyh对于初值问题的一种000(,)();dyfxydxyxyxx()1Def单步法产生的近似解,如果对于任一固定的,均有,0nxxnh则称该单步法是收敛的。0lim()nnhyyx类似地可以定义隐式单步法、多步法(§4)的收敛性31.Th设初值问题(*)对应的下列单步法是阶的,1(,,)nnnnyyhxyhp且函数满足对的Lipschitz条件,即存在常数y0L121212|(,,)(,,)|||,xyhxyhLyyyy则该单步法是收敛的,且()()pnnyxyOh证明:()nnneyxy记由截断误差的定义11()()(,(),)nnnnnyxyxhxyxhT11[(,(),)(,,)]nnnnnnneehxyxhxyhT因为单步法是阶的:p000,hhh满足11||pnTCh11||||||pnnneehLeCh||ne其中11,phLCh212||||||nnneee3231||()ne2101||||(...)nnnee10001||exp[()]||{exp[()]}pnnneLxxeChLLxx101{exp[()]}pnChLLxx()pneOh00()h二、相容性/*Consistency*/()()(,(),)yxhyxhxyxh0[()()...]()[(,(),)...]yxhyxyxhxyx0[()(,(),)]...hyxxyx1()pOh100()(,(),)pyxxyx对于阶方法:1(,,)nnnnyyhxyhp()若方法(**)的增量函数满足:2Def0(,,)(,)xyfxy则称该方法与初值问题(*)相容。设方法(**)与初值问题(*)相容,且满足L-条件,则该方法(**)是收敛的,即当固定,时nxx0h()nnyyx1(,,)nnnnyyxyhh0(,(),)()nnnxyxyx()(,())nnnyxfxyx再由相容性得:上式说明:当时,方法(**)趋于原微分方程0h本章讨论的数值方法都是与原初值问题相容的三、绝对稳定性/*AbsoluteStibility*/计算过程中产生的舍入误差对计算结果的影响首先以Euler公式为例,来讨论一下舍入误差的传播:1(,)nnnnyyhfxy设实际计算得到的点的近似函数值为,nnnyynxny其中为精确值,为误差n1(,)nnnnyyhfxy111nnnyy11[(,)(,)][(,)]nnnnnnynnhfxyfxyhfx如果,则误差是不增的,故可认为是稳定的11||yhf例如:对于初值问题0()yyyxa精确解为0xxyae而实际求解的初值问题为0()yyyxaa精确解为0()xxyaae在处的误差为nx0nxxae可见误差随着的增加呈指数函数增长nx如果初值问题为0()yyyxa精确解为0xxyae实际求解的初值问题为0()yyyxaa精确解为0()xxyaae在处的误差为nx0nxxae可见误差随着的增加呈指数函数递减nx当时,微分方程是不稳定的;0yf而时,微分方程是稳定的。0yf上面讨论的稳定性,与数值方法和方程中有关f实验方程:0,Re()yyC1(,,)nnnnyyhxyh对单步法应用实验方程,1()nnyEhy3Defh如果,当时,则称该1()Eh单步法是绝对稳定的,在复平面上复变量满足1()Eh的区域,称为该单步法的绝对稳定域,它与实轴的交集称为绝对稳定区间。1111()()pnnnTyxyOh若单步法是阶的,则p由实验方程可得:1()exp()nnyxyh1exp()()()pnnyhEhyOh()exp()Ehh11()()nnnnyyhyhy例3:分别求Euler法和经典的R-K法的绝对稳定区间。1()Ehh解:Euler公式:1(,)nnnnyyhfxy将其应用于实验方程绝对稳定域:11h1120hh当时,R绝对稳定区间:20(,)经典的R-K公式:11234226()nnhyykkkk1(,)nnkfxy211222(,)()nnnhhhkfxykyk322222(,)()nnnhhhkfxykyk433(,)()nnnkfxhyhkyhk22()nhy23224()nhhy3nyhk2341234()()()()!!!hhhEhh22334411234()!!!nnhhhyhyny当时,R绝对稳定区间:27850(.,)23411234()()()()!!!hhhEhh可以证明:存在唯一极小值点2341234()!!!tttgtt15960270.;().tgt23411234()!!!tttgtt由得例4:求梯形公式(隐式方法)的绝对稳定区间。解:梯形公式:1112[(,)(,)]nnnnnnhyyfxyfxy112[]nnnnhyyyy将其应用于实验方程11212nnhyyh1212()hEhh10()Ehh当时,R绝对稳定区间:0(,)

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功