资源描述:
《科学与计算工程办法第6章.pdf》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第六章常微分方程的数值解法§6.0引言§6.1算法构造的主要途径§6.2Runge-KuttaMethod算法§6.3线性多步法§6.4线性多步法的一般形式§6.5算法的稳定性、收敛性§6.6小结§6.0引言1.主要考虑如下的一阶常微分方程初值问题的求解:⎧dy⎪=fxy(),⎪dx⎨⎪yx()=y00⎪⎩微分方程的解就是求一个函数yyx=(),使得该函数满足微分方程并且符合初值条件。2.例如微分方程:⎧xy'-2y=4x⎨⎩y(1)=-3初始条件.可得一阶常微分方程的初始问题⎧2y⎪y′=+4⎨x。⎪⎩y(1)=−32显然函数y(x)=x-4x满足以上条件,因而是该初始问题的
2、微分方程的解。3.但是,只有一些特殊类型的微分方程问题能够得到用解析表达式表示的函数解,而大量的微分方程问题很难得到其解析解,有的甚至无法用解析表达式来表示。因此,只能依赖于数值方法去获得微分方程的数值解。4.微分方程的数值解:设微分方程问题的解y(x)的存在区间是[a,b],初始点x0=a,将[a,b]进行划分得一系列节点x0,x1,...,xn,其中a=x03、1x2...xn-1xn2§6.1算法构造的主要途径1欧拉公式1.1构造的思想:⎧dy⎪=fxy(),微分方程初值问题:⎨dx⎪y()xy=⎩00利用差商代替一阶导数,即dyy()()x−yx≈10dxhxx=0,则yx()()−yx10≈f(,)xy。00h于是,可求出y(x1)的近似值y1,yyh=+fxy(,)1000同样地,可利用x1处的微分方程可得:yyh=+fxy(,)2111一般地,利用在xn处的微分方程可得:yyh=+f(,),xyn=0,1,2,...nn+1nn此式称为欧拉公式。1.2几何意义:32对于微分方程y'=2(x+1),其通解是y=(x+1)+c,
4、是一个曲线族,当给定初值条件2y(0)=2,其特解为y=(x+1)+1。如图所示:由y(0)=2,过该曲线上一点(0,2)作曲线的切线,dy其斜率=f()0,2,dxx=0∴切线为:yfx−=20(,2)(−0),因此可计算出y1,如此,可根据:y−=yfxyxx11(,(1)−1),…4故欧拉法又称欧拉折线法。1.3算例:例:在区间[0,1]上以h=0.1为步长,用欧拉法求初值问题⎧dy2x⎪=y−⎨dxy⎪⎩y)0(=1的数值解?y=1+2x解:该方程为贝努利方程,其精确解为欧拉公式的具体形式为⎛2x⎞⎜n⎟y=y+hy−n+1n⎜n⎟y⎝n⎠h=,1.0x=,0y=1取步
5、长00,计算结果见下表:5nxynn欧拉法准确解001111.01.1.109544522.0.1191818.118321633.0.1277438.126491144.0.1358213.134164155.0.1435133.141421466.0.1508966.148324077.0.1580338.154919388.0.1649783.161245299.0.1717779.1673320101.1784771.1732051近似解与准确解比较,欧拉法的结果大致只有两位有效数字,而预估—校正法的结果则有3位有效数字。1.4Euler法的特点和误差迭代格式:yyh=
6、+f()x,0yn=,1,2,",N−1nn+1nn特点:(1)单步方法;(2)显式格式;2(3)局部截断误差为ο(h)。局部截断误差:当yn=yx(n)时,由y(xn)按照欧拉方法计算来的yk+1的误差称为局部截断误差。即,yx()nnn+1−+[,yx()hfxyx((n))]是局部截断误差。6如:12yx()()()nnn+1=++yxhyx′′hy′()ξ2欧拉法得:y=+yhfxy(),nn+1nn2因此,局部截断误差是ο(h)。2改进Euler法2.1方法构造dy在微分方程初值问题=f(,)xy,对其从x到xkk+1进行定积分得:dxxk+1yx()()−=yxfx
7、yxdx(,())kk+1∫xk将右端的定积分用梯形公式来进行近似计算。hyx()()−≈yx[]fxyx(,())(,())+fxyxkk++11kkkk+12用y和y来分别代替yx()和yx()得计算格式:k+1kk+1khyyf=+((,)(,xyf+xy))kk++11kkkk+12这就是改进欧拉方法。2.2显式格式和隐式格式在欧拉式中yyh=+f(,xy)kk+1kk7每一步计算已知y,直接用格式可以计算出ykk+1,此类格式称为显式格式。而在改进欧拉方法中hyyf=+((,)(,