最新常微分方程模型及其数值解PPT课件.ppt
《最新常微分方程模型及其数值解PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新常微分方程模型及其数值解PPT课件.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、常微分方程模型及其数值解常微分方程模型及其数值解0、导言 在许多实际问题中,例如物理中的速率问题,人口的增长问题,放射性衰变问题,经济学中的边际问题等,常常涉及到两个变量之间的变化规律。微分方程是研究上述问题的一种机理分析方法,它在科技、工程、生态、环境、人口以及经济管理等领域中有着十分广泛的应用。在应用微分方程解决实际问题时,必须经过两个阶段。一是微分方程的建立,建立一个微分方程的实质就是构建函数、自变量以及函数对自变量的导数之间的一种平衡关系。而正确地构建这种平衡关系,需要对实际问题的深入浅出的刻画,根据物理的和非物理的原理、定律或定理,作出合理的假设和简化并将它升华成数学问题。2 欧拉方
2、法和龙格欧拉方法和龙格库塔方法库塔方法一阶常微分方程初值问题的一般形式为 y=(x,y),axb(4)y(a)=其中(x,y)是已知函数,为给定的初值.如果函数(x,y)在区域axb,-y0为LipschitzLipschitz常数常数,则初值问题(4)有唯一解.所谓数值解法,就是设法将常微分方程离散化,建立差分方程,给出解在一些离散点上的近似值.a=x0 x1x2xnxN=b其中剖分节点xn=a+nh,n=0,1,N,h称为剖分步长.数值解法就是求精确解y(x)在剖分节点xn上的近似值yny(xn),n=1,2,n.假设初值问题(4)的解y=y(x)唯一存在且足够光滑.对求解区域a,b做剖分
3、 我们采用数值积分方法来建立差分公式.2.1 2.1 构造数值解法的基本思想构造数值解法的基本思想 在区间xn,xn+1上对方程(4)做积分,则有对右边的积分应用左矩形公式,则有梯形公式oxyab左矩形公式y=(x)右矩形公式中矩形公式对右边的积分应用左矩形公式,则有因此,建立节点处近似值yn满足的差分公式称之为EulerEuler公式公式.称为梯形公式梯形公式.若对(6)式右边的积分应用梯形求积公式,则可导出差分公式 利用Euler方法求初值问题 解解 此时的Euler公式为称为EulerEuler中点公式中点公式或称双步双步EulerEuler公式公式.若在区间xn-1,xn+1上对方程(
4、4)做积分,则有对右边的积分应用中矩形求积公式,则得差分公式例例3的数值解.此问题的精确解是y(x)=x/(1+x2).分别取步长h=0.2,0.1,0.05,计算结果如下hxnyny(xn)y(xn)-ynh=0.20.000.400.801.201.602.000.000000.376310.542280.527090.466320.406820.000000.344830.487800.491800.449440.400000.00000-0.03148-0.05448-0.03529-0.01689-0.00682h=0.10.000.400.801.201.602.000.00000
5、0.360850.513710.509610.458720.404190.000000.344830.487800.491800.449440.400000.00000-0.01603-0.02590-0.01781-0.00928-0.00419h=0.050.000.400.801.201.602.000.000000.352870.500490.500730.454250.402270.000000.344830.487800.491800.449440.400000.00000-0.00804-0.01268-0.00892-0.00481-0.00227Euler中点公式则不然,计算
6、yn+1时需用到前两步的值yn,yn-1,称其为两步方法两步方法,两步以上的方法统称为多步法多步法.在Euler公式和梯形公式中,为求得yn+1,只需用到前一步的值yn,这种差分方法称为单步法单步法,这是一种自开始方法.隐式公式中,每次计算yn+1都需解方程,要比显式公式需要更多的计算量,但其计算稳定性较好.在Euler公式和Euler中点公式中,需要计算的yn+1已被显式表示出来,称这类差分公式为显式公式显式公式,而梯形公式中,需要计算的yn+1隐含在等式两侧,称其为隐式公式隐式公式.从数值积分的角度来看,梯形公式计算数值解的精度要比Euler公式好,但它属于隐式公式,不便于计算.实际上,常
7、将Euler公式与梯形公式结合使用:2.2 改进的改进的Euler方法方法 由迭代法收敛的角度看,当 (是给定的精度要求)时,取 就可以保证迭代公式收敛,而当h很小时,收敛是很快的.而且,只要 通常采用只迭代一次的算法:称之为改进的改进的Euler方法方法.这是一种单步显式方法.改进的Euler方法也可以写成 y=y-2x/y ,0 x1的数值解,取步长h=0.1.精确解为y(x)=(1+2x)1/2.例例4 求初值问题 y(0)=1 解解 (1)利用Euler方法计算结果如下:(2)利用改进Euler方法nxnEuler方法yn改进Euler法yn精确解y(xn)01234567891000
8、.10.20.30.40.50.60.70.80.9111.11.1918181.2774381.3582131.4351331.5089661.5803381.6497831.7177791.78477011.0959091.1840961.2662011.3433601.4164021.4859561.5525151.6164761.6781681.73786911.0954451.1832161.2649911.3416411.4142141.4832401.5491931.6124521.6733201.732051 在节点xn+1的误差y(xn+1)-yn+1,不仅与yn+1这一步计
9、算有关,而且与前n步计算值yn,yn-1,y1都有关.为了简化误差的分析,着重研究进行一步计算时产生的误差.即假设yn=y(xn),求误差y(xn+1)-yn+1,这时的误差称为局部截断误差局部截断误差,它可以反映出差分公式的精度.2.3 差分公式的误差分析差分公式的误差分析 如果单步差分公式的局部截断误差为O(hp+1),则称该公式为p p阶方法阶方法.这里p为非负整数.显然,阶数越高,方法的精度越高.研究差分公式阶的重要手段是Taylor展开式,一元函数和二元函数的Taylor展开式为:另外,在yn=y(xn)的条件下,考虑到y(x)=(x,y(x),则有 y(xn)=(xn,y(xn)=
10、(xn,yn)=n y(xn)=(xn,y(xn)=x(xn,yn)+y(xn,yn)(xn,yn)yn+1=yn+h(xn,yn)对Euler方法,有 =yn+(xn,yn)h+O(h2)从而有:y(xn+1)-yn+1=O(h2)所以Euler方法是一阶方法.再看改进Euler方法,因为可得所以,改进的Euler方法是二阶方法.而从而有:y(xn+1)-yn+1=O(h3)2.4 Taylor展开方法展开方法 设y(x)是初值问题(4)的精确解,利用Taylor展开式可得称之为p阶Taylor展开方法.因此,可建立节点处近似值yn满足的差分公式其中所以,此差分公式是p阶方法.由于Taylo
11、r展开方法涉及很多复合函数(x,y(x)的导数的计算,比较繁琐,因而很少直接使用,经常用它为多步方法提供初始值.然而,Taylor展开方法给出了一种构造单步显式高阶方法的途径.Euler方法可写为 可见,公式的局部截断误差为:y(xn+1)-yn+1=O(hp+1).2.5 Runge-Kutta方法方法 构造差分公式 改进的Euler方法可写为其中i,i,ij为待定参数.若此公式的局部截断误差为由于 yn+1=yn+h1n+h2(n+hxn+hn yn)+O(h3)O(h3),称此公式为p p阶阶Runge-kuttaRunge-kutta方法方法,简称p p阶阶R-KR-K方法方法.对于p
12、=2的情形,应有 =yn+h(1+2)n+h22(xn+n yn)+O(h3)所以,只要令 1+2=1,2=1/2,2=1/2 (8)一般地,参数由(8)确定的一族差分公式(7)统称为二二阶阶R-KR-K方法方法.称之为中点公式中点公式,或可写为若取=1,则得1=2=1/2,=1,此时公式(7)就是改进的Euler公式;若取1=0,则得2=1,=1/2,公式(7)为 高阶R-K公式可类似推导.下面列出常用的三阶、四阶R-K公式.四阶标准四阶标准R-KR-K公式公式 三阶三阶R-KR-K公式公式 解解 四阶标准R-K公式为例例3 用四阶标准R-K方法求初值问题 y=y-2x/y ,0 x1 y(
13、0)=1的数值解,取步长h=0.2.计算结果如下:nxnyny(xn)nxnyny(xn)0120.00.20.41.001.18321.34171.001.18321.34163450.60.81.01.48331.61251.73211.48321.61251.7321 也可以构造隐式R-K方法,其一般形式为称之为p p级隐式级隐式R-KR-K方法方法,同显式R-K方法一样确定参数.如是二级二阶隐式R-K方法,也就是梯形公式.但是p级隐式R-K方法的阶可以大于p,例如,一级隐式中点公式为或写为它是二阶方法.2.6 变步长变步长Runge-Kutta方法方法 以p阶R-K方法为例讨论.设从x
14、n以步长h计算y(xn+1)的近似值为 ,局部截断误差为其中,C是与h无关的常数.如果将步长减半,取h/2为步长,从xn经两步计算得到y(xn+1)的近似值记为 ,其局部截断误差为于是有从而,得到事后误差估计可见,当 成立时,可取 .否则,应将步长再次减半进行计算.求解初值问题的单步显式方法可一统一写为如下形式 yn+1=yn+h(xn,yn,h)(9)对于Euler方法,有2.7 单步方法的收敛性单步方法的收敛性 y=(x,y),axb y(a)=其中(x,y,h)称为增量函数增量函数.(x,y,h)=(x,y)对于改进的Euler方法,有 (x,y,h)=1/2(x,y)+(x+h,y+h
15、(x,y)设y(x)是初值问题(4)的解,yn是单步法(9)产生的近似解.如果对任意固定的点xn,均有y(xn),则称单步法(9)是收敛的.可见,若方法(9)是收敛的,则当h0时,整体截断误差en=y(xn)-yn将趋于零.定理定理 设单步方法(9)是p1阶方法,增量函数(x,y,h)在区域axb,-yn)的变化均不超过,则称此差分方法是绝对稳定绝对稳定的.讨论数值方法的稳定性,通常仅限于典型的试验方程 y=y 其中是复数且Re()0.在复平面上,当方法稳定时要求变量h的取值范围称为方法的绝对稳定域绝对稳定域,它与实轴的交集称为绝对稳定区间绝对稳定区间.将Euler方法应用于方程y=y,得到
16、设在计算yn时产生误差n,计算值yn=yn+n,则n将对以后各节点值计算产生影响.记ym=ym+m,mn,由上式可知误差m满足方程 m=(1+h)m-1=(1+h)m-nn,mn 对隐式单步方法也可类似讨论.如将梯形公式用于方程y=y,则有 yn+1=yn+h/2(yn+yn+1)yn+1=(1+h)yn 可见,若要|m|n|,必须且只须|1+h|1,因此Euler法的绝对稳定域为|1+h|1,绝对稳定区间是-2Re()h0.解出yn+1得 类似前面分析,可知绝对稳定区域为由于Re()0,所以此不等式对任意步长h恒成立,这是隐式公式的优点.一些常用方法的绝对稳定区间为方 法方法的阶数稳 定 区
17、 间Euler方法梯形方法改进Euler方法二阶R-K方法三阶R-K方法四阶R-K方法122234(-2 ,0)(-,0)(-2 ,0)(-2 ,0)(-2.51 ,0)(-2.78 ,0)解解 因y0=1,计算得y10=1024,而y(1)=9.35762310-14.例例4 考虑初值问题 y=-30y ,0 x1 y(0)=1取步长h=0.1,利用Euler方法计算y10y(1).y(x)=e-30 x 这是因为h=-3不属于Euler方法的绝对稳定区间.若取h=0.01,计算得y100=3.23447710-16.若取h=0.001,计算得y1000=5.91199810-14.若取h=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 微分方程 模型 及其 数值 PPT 课件
限制150内