常微分方程数值解法 (3)_第1页
常微分方程数值解法 (3)_第2页
常微分方程数值解法 (3)_第3页
常微分方程数值解法 (3)_第4页
常微分方程数值解法 (3)_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

第七章常微分方程数值解/*NumericalMethodsforOrdinaryDifferentialEquations*/,考虑一阶常微分方程的初值问题/*Initial-ValueProblem*/:,只要f(x,y)在a,bR1上连续,且关于y满足Lipschitz条件,即存在与x,y无关的常数L使对任意定义在a,b上的y1(x)和y2(x)都成立,则上述IVP存在唯一解。,要计算出解函数y(x)在一系列节点a=x0x1xn=b处的近似值,节点间距为步长,通常采用等距节点,即取hi=h(常数)。,1欧拉方法/*EulersMethod*/,欧拉公式:,欧拉法的局部截断误差:,欧拉法具有1阶精度。,Ri的主项/*leadingterm*/,亦称为欧拉折线法/*Eulerspolygonalarcmethod*/,1EulersMethod,欧拉公式的改进:,隐式欧拉法/*implicitEulermethod*/,由于未知数yi+1同时出现在等式的两边,不能直接得到,故称为隐式/*implicit*/欧拉公式,而前者称为显式/*explicit*/欧拉公式。,一般先用显式计算一个初值,再迭代求解。,隐式欧拉法的局部截断误差:,即隐式欧拉公式具有1阶精度。,1EulersMethod,梯形公式/*trapezoidformula*/,显、隐式两种算法的平均,注:的确有局部截断误差,即梯形公式具有2阶精度,比欧拉方法有了进步。但注意到该公式是隐式公式,计算时不得不用到迭代法,其迭代收敛性与欧拉公式相似。,中点欧拉公式/*midpointformula*/,假设,则可以导出即中点公式具有2阶精度。,需要2个初值y0和y1来启动递推过程,这样的算法称为双步法/*double-stepmethod*/,而前面的三种算法都是单步法/*single-stepmethod*/。,单步法和多步法,单步法:在计算yi+1时只利用yi多步法:在计算yi+1时不仅利用yi,还要利用yi1,yi2,k步法:在计算yi+1时要用到yi,yi1,yik+1,显式计算公式可写成:yk+1=yk+hf(xk,yk;h)隐式格式:yk+1=yk+hf(xk,yk,yk+1;h)它每步求解yk+1需要解一个隐式方程,1EulersMethod,简单,精度低,稳定性最好,精度低,计算量大,精度提高,计算量大,精度提高,显式,多一个初值,可能影响精度,Cantyougivemeaformulawithalltheadvantagesyetwithoutanyofthedisadvantages?,Doyouthinkitpossible?,Well,callmegreedy,OK,letsmakeitpossible.,改进欧拉法/*modifiedEulersmethod*/,注:此法亦称为预测-校正法/*predictor-correctormethod*/。可以证明该算法具有2阶精度,同时可以看到它是个单步递推格式,比隐式公式的迭代求解过程简单。后面将看到,它的稳定性高于显式欧拉法。,1EulersMethod,2龙格-库塔法/*Runge-KuttaMethod*/,建立高精度的单步递推格式。,单步递推法的基本思想是从(xi,yi)点出发,以某一斜率沿直线达到(xi+1,yi+1)点。欧拉法及其各种变形所能达到的最高精度为2阶。,9,Runge-Kutta方法的推导思想,对于常微分方程的初值问题,的解y=y(x),在区间xi,xi+1上使用微分中值定理,有,即,2020/6/8,10,引入记号,就可得到相应的Runge-Kutta方法,2020/6/8,11,如下图,即,则上式化为,即Euler方法,Euler方法也称为一阶Runge-Kutta方法,2020/6/8,建立高精度的单步递推格式。,斜率一定取K1K2的平均值吗?,步长一定是一个h吗?,2Runge-KuttaMethod,首先希望能确定系数1、2、p,使得到的算法格式有2阶精度,即在的前提假设下,使得,Step1:将K2在(xi,yi)点作Taylor展开,Step2:将K2代入第1式,得到,2Runge-KuttaMethod,Step3:将yi+1与y(xi+1)在xi点的泰勒展开作比较,要求,则必须有:,这里有个未知数,个方程。,3,2,存在无穷多个解。所有满足上式的格式统称为2阶龙格-库塔格式。,注意到,就是改进的欧拉法。,Q:为获得更高的精度,应该如何进一步推广?,其中i(i=1,m),i(i=2,m)和ij(i=2,m;j=1,i1)均为待定系数,确定这些系数的步骤与前面相似。,2Runge-KuttaMethod,最常用为四级4阶经典龙格-库塔法/*ClassicalRunge-KuttaMethod*/:,2Runge-KuttaMethod,由于龙格-库塔法的导出基于泰勒展开,故精度主要受解函数的光滑性影响。对于光滑性不太好的解,最好采用低阶算法而将步长h取小。,3收敛性与稳定性/*ConvergencyandStability*/,收敛性/*Convergency*/,例:就初值问题考察欧拉显式格式的收敛性。,解:该问题的精确解为,欧拉公式为,对任意固定的x=xi=ih,有,3ConvergencyandStability,稳定性/*Stability*/,例:考察初值问题在区间0,0.5上的解。分别用欧拉显、隐式格式和改进的欧拉格式计算数值解。,1.00002.00004.00008.00001.60001013.2000101,1.00002.50001016.25001021.56251023.90631039.7656104,1.00002.50006.25001.56261013.90631019.7656101,1.00004.97871022.47881031.23411046.14421063.0590107,Whatiswrong?!,3ConvergencyandStability,一般分析时为简单起见,只考虑试验方程/*testequation*/,常数,可以是复数,3ConvergencyandStability,例:考察隐式欧拉法,可见绝对稳定区域为:,注:一般来说,隐式欧拉法的绝对稳定性比同阶的显式法的好。,3ConvergencyandStability,例:隐式龙格-库塔法,而显式14阶方法的绝对稳定区域为,其中2阶方法的绝对稳定区域为,无条件稳定,4线性多步法/*MultistepMethod*/,用若干节点处的y及y值的线性组合来近似y(xi+1)。,其通式可写为:,当10时,为隐式公式;1=0则为显式公式。,基于数值积分的构造法,4MultistepMethod,基于泰勒展开的构造法,将通式中的右端各项yi1,yik;fi+1,fi1,fik分别在xi点作泰勒展开,与精确解y(xi+1)在xi点的泰勒展开作比较。通过令同类项系数相等,得到足以确定待定系数0,k;1,0,k的等式,则可构造出线性多步法的公式。,4MultistepMethod,解:,/*y(xi)=yi*/,个未知数个方程,7,5,4MultistepMethod,令1=2=0,以yi+1取代yi1,并取1=2=0,取1=1,2=0得到辛甫生/*Simpson*/公式与Milne公式匹配使用,辛甫生/*Simpson*/公式,在区间xi1,xi+1上积分,并用Simpson数值积分公式来近似

温馨提示

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

评论

0/150

提交评论