科学计算与数学建模第7章 传染病模型-常微分方程数值解法简介-7.2-简单的数值方法与基本概念(1).pptx_第1页
科学计算与数学建模第7章 传染病模型-常微分方程数值解法简介-7.2-简单的数值方法与基本概念(1).pptx_第2页
科学计算与数学建模第7章 传染病模型-常微分方程数值解法简介-7.2-简单的数值方法与基本概念(1).pptx_第3页
科学计算与数学建模第7章 传染病模型-常微分方程数值解法简介-7.2-简单的数值方法与基本概念(1).pptx_第4页
科学计算与数学建模第7章 传染病模型-常微分方程数值解法简介-7.2-简单的数值方法与基本概念(1).pptx_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

7.2简单的数值方法与基本概念(1),设f(x,y)在区域G:axb,y上连续,求yy(x)满足,dyf(x,y),axb,dx,y(a)y0,(7.2.1),是已知常数,这就是一阶常微分方程的初值问题。,其中y0,件,即存在常数L,使,为使问题(7.2.1)的解存在、唯一且连续依赖初值y0,即初值问题(7.2.1)适定,还必须对右端项f(x,y)加以适当限制,通常要求f(x,y)关于y是已知函数,且满足Lipschitz条,7.2.1常微分方程的初值问题,f(x,y1)f(x,y2)Ly1y2,(7.2.2),对所有xa,b及y1,y2(,)成立。,7.2.2Euler法及改进的Euler法,将区间a,b(Tba0)作N等分,小区间长度hT称为步长,N,点列xi,aih(i0,1,.,N)称为节点,其中x0a。,表示y(xi)的近似值。,yi,下面介绍初值问题(7.2.1)最简单的数值方法Euler法为方便起见,用y(xi)表示函数y(x)在xi点的精确值,,x,yf(x)yO,y1,ykyn,x0 x1xkxn,由已知初值y(x0)y0,可算出y(x)在xx0的导数:,0,0,0,00,y(x)f(x,y(x)f(x,y),?y,1,2,3,1000,0,26,y(x)y(xh)y(x)hy(x)hy(x)hy(),(7.2.3),1)幂级数展开法利用Taylor展式,这就是Euler法,称(7.2.4)式为向前Euler公式。,,,yn1ynhf(xn,yn)n0,1,.,N1,(7.2.4),其一般递推公式为,y0hf(x0,y0)R0其中(x0,x1),并略去二阶小量R0,得y1y0hf(x0,y0)用y1作为y(x1)的近似值。同样,利用y1可算出y2作为y(x2)的近似值。递推下去便可算出y(x)在所有节点上函数的近似值,,Euler法及其几何意义由于初值问题(7.2.1)的解是xy平面上过点(x0,y0)的一条积分曲线。按Euler法,过初始点(x0,y0)作经过此点的积分曲线的切线(斜率为f(x0,y0)),沿切线取点(x1,y1)(y1按Euler法计算)作为(x1,y(x1)的近似。然后,过(x1,y1)作经过此点的积分曲线的切线(斜率为f(x1,y1)),沿切线取点(x2,y2)(y2按Euler法计算)作为(x2,y(x2)的近似。如此下去,即得一条以(xk,yk)为顶点的折线,这就是用Euler法得到的近似积分曲线,因此也称Euler法为Euler折线法。,x1,x0,f(t,y(t)dt,y(x1)y(x0),2)数值微分法利用向前差商近似导数,,可得,n,h,y(xn1)y(xn),y(x),y(xn1)y(xn)hy(xn)ynhf(xn,yn)从而得出Euler法的一般递推公式,yn1,ynhf(xn,yn),,,n0,1,.,N1,3)数值积分法将初值问题(7.2.1)写成等价的积分形式:,0,x,x0,f(t,y(t)dt,y(x)y(x),1,取xx,得,从而也可得出Euler法的一般递推公式为,yn1,yn,,,hf(xn,yn)n0,1,.,N1,用数值积分的左矩形公式作为右端积分的近似,即得y(x1)的近似值y1,亦即,y1y0hf(x0,y0),(7.2.5),改进的Euler方法由Euler方法的数值积分导出法可知只要给出右端定积分的一种近似计算方法,就可得出初值问题(7.2.1)的一种数值求解方法。,如果将(7.2.5)中近似右端积分的左矩形公式替换为左矩形公式,可得y1y0hf(x1,y1),yn1ynhf(xn1,yn1),n0,1,.,N1,从而得出一般递推公式为,称此计算公式为后退Euler法。如果将(7.2.5)中近似右端积分的左矩形公式替换为梯形,公式,可得,h,y1y0(f(x0,y0)f(x1,y1)2,2,n1nnn,n1n1,yyh(f(x,y)f(x,y),n1,2,N-1,称此计算公式为改进的Euler法。,从而得出一般递推公式为,显然,改进的Euler法比Euler法精度更高。后退Euler法和改进的Euler法,由于未知数yn1同时出现在等式的两边,故需要解方程才能求出yn1,称这类算法为隐式算法。,往是非线性的,需用迭代法求解,常将初值取为般只需迭代几步即可收敛。,n1,yyn,一,相应地,称未知数yn1不出现在等式右端,可以由已知量直接计算的方法为显式算法。对隐式算法,每步计算需要解关于yn1的方程,这样的方程往0,选取更好初值的方法是先用显式公式计算一个初值,再用隐式公式迭代求解,这样的方法称为预估-校正法。可见,任何一个显示算法与一个隐式算法便可构成一种预估-校正法。,n,n,y,n1,n1,n1),yyh,f(x,yn)f(x2,如先用显式Euler公式作预估,算出yn1ynhf(xn,yn),再将yn1代入隐式梯形公式的右边作校正,得到,从而可得,1nnn,h,n1n,nnn,yyf(x,y)fx,2,yhf(x,y),,n0,1,.,N1,则有,可以看出预估校正法是显示格式,迭代求解过程比隐式公式的简单,它的稳定性高于显式Euler法。如果在区间xn1,xn1上对初值问题(7.2.1)方程两边积分,,f(x,y(x)dx,xn1,xn1,y(xn1)y(xn1),用中矩形求积公式近似替代右端的定积分,得出一般递,推公式为,yn1,yn12hf(xn,yn),n0,1,.,N1,称此计算公式为Euler中点法。如果计算y(xn1)的近似值yn1时只用到前一节点的值yn,则从初值y0出发可逐一计算出以后各节点的值,这样的方法称为单步法;而Euler中点公式计算yn1时需要用到前两个节点的值yn和yn1,这样的方法称为双步法(或二步法)。,时需要用到前面多个节点值的方法称为多步法。多,步法需要附加初值才能逐一计算出以后各节点的值。,计算yn1,?,如何判断微分方程数

温馨提示

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

最新文档

评论

0/150

提交评论