




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
常微分方程模型及其数值解第1页,课件共68页,创作于2023年2月0、导言在许多实际问题中,例如物理中的速率问题,人口的增长问题,放射性衰变问题,经济学中的边际问题等,常常涉及到两个变量之间的变化规律。微分方程是研究上述问题的一种机理分析方法,它在科技、工程、生态、环境、人口以及经济管理等领域中有着十分广泛的应用。在应用微分方程解决实际问题时,必须经过两个阶段。一是微分方程的建立,建立一个微分方程的实质就是构建函数、自变量以及函数对自变量的导数之间的一种平衡关系。而正确地构建这种平衡关系,需要对实际问题的深入浅出的刻画,根据物理的和非物理的原理、定律或定理,作出合理的假设和简化并将它升华成数学问题。第2页,课件共68页,创作于2023年2月另一个是方程的求解和结果分析。对一些常系数的或特殊函数形式的微分方程,往往能得到解析解,这对实际问题的分析和应用都是有利的,但是大多数变系数的、非线性函数形式的微分方程都是求不出解析解的,此时就需要应用求解微分方程的另一个重要方法──数值解法。本章简要介绍有关微分方程模型的概念,微分方程的数值解法和图解法,主要介绍若干建模实例,通过它们展示微分方程模型的建模步骤及解决实际问题的全过程。第3页,课件共68页,创作于2023年2月1、实例及其数学模型
例1海上缉私问题海防某部缉私艇上的雷达发现正东方向c海里处有一艘走私船正以速度a向正北方向行驶,缉私艇立即以最大速度b前往拦截。用雷达进行跟踪时,可保持缉私艇的速度方向始终指向走私船。建立任意时刻缉私艇的位置和缉私艇航线的数学模型,讨论缉私艇能够追上走私船的条件,求出追上的时间。第4页,课件共68页,创作于2023年2月建立直角坐标系如图,设在t=0时刻缉私艇发现走私船,此时缉私艇的位置在(0,0),走私船的位置在(c,0)。走私船以速度a平行于y轴正向行驶,缉私艇以速度b按指向走私船的方向行驶。在任意时刻t缉私艇位于P(x,y)点,而走私船到达Q(c,at)点,直线PQ与缉私艇航线(图中曲线)相切,切线与x轴正向夹角为
。Q(c,at)P(x,y)R(c,y)0yx
c第5页,课件共68页,创作于2023年2月缉私艇在x,y方向的速度分别为,由直角三角形PQR写出sin
和cos
的表达式,得到微分方程:(1)
初始条件为(2)这就是缉私艇位置(x(t),y(t))的数学模型。但是由方程(1)无法得到x(t),y(t)的解析解,需要用数值算法求解。我们将在后面继续讨论这个问题。第6页,课件共68页,创作于2023年2月例2弱肉强食问题自然界中在同一环境下的两个种群之间存在着几种不同的生存方式,比如相互竞争,即争夺同样的食物资源,造成一个种群趋于灭绝,而另一个趋向环境资源容许的最大容量;或者相互依存,即彼此提供部分食物资源,二者和平共处,趋于一种平衡状态;再有一种关系可称之为弱肉强食,即某个种群甲靠丰富的自然资源生存,而另一种群乙靠捕食种群甲为生,种群甲称为食饵(Prey),种群乙为捕食者(Predator),二者组成食饵-捕食者系统。海洋中的食用鱼和软骨鱼(鲨鱼等)、美洲兔和山猫、落叶松和蚜虫等都是这种生存方式的典型。这样两个种群的数量是如何演变的呢?近百年来许多数学家和生态学家对这一系统进行了深入的研究,建立了一系列数学模型,本节介绍的是最初的、最简单的一个模型,它是意大利数学家Volterra在上个世纪20年代建立的。第7页,课件共68页,创作于2023年2月模型用x(t)表示时刻t食饵(如食用鱼)的密度,即一定区域内的数量,y(t)表示捕食者(如鲨鱼)的密度。假设食饵独立生存时的(相对)增长率为常数r>0,即,而捕食者的存在使食饵的增长率减小,设减小量与捕食者密度成正比,比例系数为a>0,则。捕食者离开食饵无法生存,设它独自存在时死亡率为常数d>0,即,而食饵的存在为捕食者提供了食物,使捕食者的死亡率减小,设减小量与食饵密度成正比,比例系数为b>0,则,实际上,当bx>d时捕食者密度将增长。给定食饵和捕食者密度的初始值x0,y0,由上可知x(t),y(t)满足以下方程:(3)(3)的解x(t),y(t)描述了食饵和捕食者密度随时间的演变过程。但是我们同样得不到x(t),y(t)的解析解,需要用数值算法求解。我们将在§3继续讨论这个问题第8页,课件共68页,创作于2023年2月§2欧拉方法和龙格—库塔方法一阶常微分方程初值问题的一般形式为y=(x,y),axb(4)y(a)=其中(x,y)是已知函数,为给定的初值.如果函数(x,y)在区域axb,-<y<上连续且关于y满足Lipschitz条件其中L>0为Lipschitz常数,则初值问题(4)有唯一解.第9页,课件共68页,创作于2023年2月所谓数值解法,就是设法将常微分方程离散化,建立差分方程,给出解在一些离散点上的近似值.a=x0<x1<x2<…<xn<…<xN=b其中剖分节点xn=a+nh,n=0,1,…,N,h称为剖分步长.数值解法就是求精确解y(x)在剖分节点xn上的近似值yny(xn),n=1,2,…,n.假设初值问题(4)的解y=y(x)唯一存在且足够光滑.对求解区域[a,b]做剖分我们采用数值积分方法来建立差分公式.2.1构造数值解法的基本思想在区间[xn,xn+1]上对方程(4)做积分,则有第10页,课件共68页,创作于2023年2月对右边的积分应用左矩形公式,则有梯形公式oxyab左矩形公式y=(x)右矩形公式中矩形公式第11页,课件共68页,创作于2023年2月对右边的积分应用左矩形公式,则有因此,建立节点处近似值yn满足的差分公式称之为Euler公式.称为梯形公式.若对(6)式右边的积分应用梯形求积公式,则可导出差分公式第12页,课件共68页,创作于2023年2月利用Euler方法求初值问题
解此时的Euler公式为称为Euler中点公式或称双步Euler公式.若在区间[xn-1,xn+1]上对方程(4)做积分,则有对右边的积分应用中矩形求积公式,则得差分公式例3的数值解.此问题的精确解是y(x)=x/(1+x2).第13页,课件共68页,创作于2023年2月分别取步长h=0.2,0.1,0.05,计算结果如下第14页,课件共68页,创作于2023年2月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.000000.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.00227第15页,课件共68页,创作于2023年2月Euler中点公式则不然,计算yn+1时需用到前两步的值yn,yn-1,称其为两步方法,两步以上的方法统称为多步法.在Euler公式和梯形公式中,为求得yn+1,只需用到前一步的值yn,这种差分方法称为单步法,这是一种自开始方法.隐式公式中,每次计算yn+1都需解方程,要比显式公式需要更多的计算量,但其计算稳定性较好.在Euler公式和Euler中点公式中,需要计算的yn+1已被显式表示出来,称这类差分公式为显式公式,而梯形公式中,需要计算的yn+1隐含在等式两侧,称其为隐式公式.第16页,课件共68页,创作于2023年2月从数值积分的角度来看,梯形公式计算数值解的精度要比Euler公式好,但它属于隐式公式,不便于计算.实际上,常将Euler公式与梯形公式结合使用:2.2改进的Euler方法第17页,课件共68页,创作于2023年2月
由迭代法收敛的角度看,当(是给定的精度要求)时,取就可以保证迭代公式收敛,而当h很小时,收敛是很快的.而且,只要通常采用只迭代一次的算法:称之为改进的Euler方法.这是一种单步显式方法.改进的Euler方法也可以写成第18页,课件共68页,创作于2023年2月y=y-2x/y,0x1的数值解,取步长h=0.1.[精确解为y(x)=(1+2x)1/2.]例4求初值问题y(0)=1
解(1)利用Euler方法第19页,课件共68页,创作于2023年2月计算结果如下:(2)利用改进Euler方法第20页,课件共68页,创作于2023年2月nxnEuler方法yn改进Euler法yn精确解y(xn)01234567891000.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第21页,课件共68页,创作于2023年2月在节点xn+1的误差y(xn+1)-yn+1,不仅与yn+1这一步计算有关,而且与前n步计算值yn,yn-1,…,y1都有关.为了简化误差的分析,着重研究进行一步计算时产生的误差.即假设yn=y(xn),求误差y(xn+1)-yn+1,这时的误差称为局部截断误差,它可以反映出差分公式的精度.2.3差分公式的误差分析如果单步差分公式的局部截断误差为O(hp+1),则称该公式为p阶方法.这里p为非负整数.显然,阶数越高,方法的精度越高.研究差分公式阶的重要手段是Taylor展开式,一元函数和二元函数的Taylor展开式为:第22页,课件共68页,创作于2023年2月另外,在yn=y(xn)的条件下,考虑到y(x)=(x,y(x)),则有y(xn)=(xn,y(xn))=(xn,yn)=ny(xn)=(xn,y(xn))=x(xn,yn)+y(xn,yn)(xn,yn)第23页,课件共68页,创作于2023年2月yn+1=yn+h(xn,yn)对Euler方法,有=yn+(xn,yn)h+O(h2)从而有:y(xn+1)-yn+1=O(h2)所以Euler方法是一阶方法.再看改进Euler方法,因为可得第24页,课件共68页,创作于2023年2月所以,改进的Euler方法是二阶方法.而从而有:y(xn+1)-yn+1=O(h3)2.4Taylor展开方法设y(x)是初值问题(4)的精确解,利用Taylor展开式可得第25页,课件共68页,创作于2023年2月称之为p阶Taylor展开方法.
……
……
……因此,可建立节点处近似值yn满足的差分公式其中第26页,课件共68页,创作于2023年2月所以,此差分公式是p阶方法.由于Taylor展开方法涉及很多复合函数(x,y(x))的导数的计算,比较繁琐,因而很少直接使用,经常用它为多步方法提供初始值.然而,Taylor展开方法给出了一种构造单步显式高阶方法的途径.Euler方法可写为可见,公式的局部截断误差为:y(xn+1)-yn+1=O(hp+1).2.5Runge-Kutta方法第27页,课件共68页,创作于2023年2月构造差分公式
……
……改进的Euler方法可写为其中i,i,ij为待定参数.若此公式的局部截断误差为第28页,课件共68页,创作于2023年2月由于yn+1=yn+h1
n+h2(n+hxn+hn
yn)+O(h3)O(h3),称此公式为p阶Runge-kutta方法,简称p阶R-K方法.对于p=2的情形,应有=yn+h(1+2)n+h2
2(xn+n
yn)+O(h3)所以,只要令
1+2=1,2=1/2,2=1/2(8)第29页,课件共68页,创作于2023年2月一般地,参数由(8)确定的一族差分公式(7)统称为二阶R-K方法.称之为中点公式,或可写为若取=1,则得1=2=1/2,=1,此时公式(7)就是改进的Euler公式;若取1=0,则得2=1,==1/2,公式(7)为高阶R-K公式可类似推导.下面列出常用的三阶、四阶R-K公式.第30页,课件共68页,创作于2023年2月四阶标准R-K公式
三阶R-K公式第31页,课件共68页,创作于2023年2月
解四阶标准R-K公式为例3用四阶标准R-K方法求初值问题y=y-2x/y,0x1y(0)=1的数值解,取步长h=0.2.计算结果如下:第32页,课件共68页,创作于2023年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级隐式R-K方法,同显式R-K方法一样确定参数.如第33页,课件共68页,创作于2023年2月是二级二阶隐式R-K方法,也就是梯形公式.但是p级隐式R-K方法的阶可以大于p,例如,一级隐式中点公式为或写为它是二阶方法.2.6变步长Runge-Kutta方法以p阶R-K方法为例讨论.设从xn以步长h计算y(xn+1)的近似值为,局部截断误差为其中,C是与h无关的常数.第34页,课件共68页,创作于2023年2月如果将步长减半,取h/2为步长,从xn经两步计算得到y(xn+1)的近似值记为,其局部截断误差为于是有从而,得到事后误差估计可见,当成立时,可取.否则,应将步长再次减半进行计算.第35页,课件共68页,创作于2023年2月求解初值问题的单步显式方法可一统一写为如下形式yn+1=yn+h(xn,yn,h)(9)对于Euler方法,有2.7单步方法的收敛性y=(x,y),axby(a)=其中(x,y,h)称为增量函数.(x,y,h)=(x,y)对于改进的Euler方法,有(x,y,h)=1/2[(x,y)+(x+h,y+h(x,y))]第36页,课件共68页,创作于2023年2月设y(x)是初值问题(4)的解,yn是单步法(9)产生的近似解.如果对任意固定的点xn,均有y(xn),则称单步法(9)是收敛的.可见,若方法(9)是收敛的,则当h0时,整体截断误差en=y(xn)-yn将趋于零.
定理设单步方法(9)是p1阶方法,增量函数(x,y,h)在区域axb,-<y<+,0hh0上连续,且关于y满足Lipschitz条件,初始近似y0=y(a)=,则方法(9)是收敛的,且存在与h无关的常数C,使|y(xn)-yn|Chp
证明因为单步方法(9)是p阶方法,则y(x)满足定义第37页,课件共68页,创作于2023年2月其中,局部截断误差|Rn(h)|C1hp+1,记en=y(xn)-yn,则有利用Lipschitz条件得y(xn+1)=y(xn)+h(xn,y(xn),h)+Rn(h)递推得到注意到en+1=en+h[(xn,y(xn),h)-(xn,yn,h)]+Rn(h)|en+1|(1+hL)|en|+C1hP+1
1+hLehL,(1+hL)nenhLeL(b-a)第38页,课件共68页,创作于2023年2月由于e0=y(a)-y0=0,所以有则有设(x,y)连续且关于y满足Lipschitz条件,对于Euler方法,由于(x,y,h)=(x,y),故Euler方法是收敛的.对于改进的Euler方法,由(x,y)的Lipschitz条件有|en||e0|eL(b-a)+C1hp/L(eL(b-a)-1)|en|C1hp/L(eL(b-a)-1)=Chp|(x,y,h)-(x,y*,h)|1/2|(x,y)-(x,y*)|+1/2|(x+h,y+h(x,y))-(x+h,y*+h(x,y*))|1/2L(1+hL)|y-y*|则当hh0时,关于y满足常数为1/2L(1+h0L)的Lipschitz第39页,课件共68页,创作于2023年2月条件,因此改进的Euler方法是收敛的.可类似验证各阶R-K方法是收敛的.2.8单步方法的稳定性
定义对于初值问题(4),取定步长h,用某个差分方法进行计算时,假设只在一个节点值yn上产生计算误差,即计算值yn=yn+,如果这个误差引起以后各节点值ym(m>n)的变化均不超过,则称此差分方法是绝对稳定的.讨论数值方法的稳定性,通常仅限于典型的试验方程y=y其中是复数且Re()<0.在复平面上,当方法稳定时要求变量h的取值范围称为方法的绝对稳定域,它与实轴的交集称为绝对稳定区间.第40页,课件共68页,创作于2023年2月将Euler方法应用于方程y=y,得到设在计算yn时产生误差n,计算值yn=yn+n,则n将对以后各节点值计算产生影响.记ym=ym+m,mn,由上式可知误差m满足方程
m=(1+h)m-1=…=(1+h)m-n
n,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,绝对稳定区间是-2<Re()h<0.解出yn+1得
第41页,课件共68页,创作于2023年2月类似前面分析,可知绝对稳定区域为由于Re()<0,所以此不等式对任意步长h恒成立,这是隐式公式的优点.一些常用方法的绝对稳定区间为方法方法的阶数稳定区间Euler方法梯形方法改进Euler方法二阶R-K方法三阶R-K方法四阶R-K方法122234(-2,0)(-,0)(-2,0)(-2,0)(-2.51,0)(-2.78,0)第42页,课件共68页,创作于2023年2月
解因y0=1,计算得y10=1024,而y(1)=9.35762310-14.例4考虑初值问题y=-30y,0x1y(0)=1取步长h=0.1,利用Euler方法计算y10y(1).[y(x)=e-30x]这是因为h=-3不属于Euler方法的绝对稳定区间.若取h=0.01,计算得y100=3.23447710-16.若取h=0.001,计算得y1000=5.91199810-14.若取h=0.0001,计算得y10000=8.94505710-14.若取h=0.00001,计算得y100000=9.315610-14.第43页,课件共68页,创作于2023年2月单步显式方法的稳定性与步长密切相关,在一种步长下是稳定的差分公式,取大一点步长就可能是不稳定的.收敛性是反映差分公式本身的截断误差对数值解的影响;稳定性是反映计算过程中舍入误差对数值解的影响.只有即收敛又稳定的差分公式才有实用价值.2.9线性多步方法由于在计算yn+1时,已经知道yn,yn-1,…,及(xn,yn),(xn-1,yn-1),…,利用这些值构造出精度高、计算量小的差分公式就是线性多步法.2.9.1利用待定参数法构造线性多步方法r+1步线性多步方法的一般形式为第44页,课件共68页,创作于2023年2月当-10时,公式为隐式公式,反之为显式公式.参数i,i的选择原则是使方法的局部截断误差为y(xn+1)-yn+1=O(h)r+2
选取参数,0,1,2,使三步方法yn+1=yn+h(0
n+1
n-1+2
n-2)
这里,局部截断误差是指,在yn-i=y(xn-i),i=0,1,…,r的前提下,误差y(xn+1)-yn+1.为三阶方法.
例5
解设yn=y(xn),yn-1=y(xn-1),yn-2=y(xn-2),则有
第45页,课件共68页,创作于2023年2月
n=(xn,y(xn))=y(xn)y(xn+1)=y(xn)+hy(xn)+1/2h2y(xn)+1/6h3y(xn)于是有若使:y(xn+1)-yn+1=O(h4),只要,0,1,2满足:
n-1=(xn-1,y(xn-1))=y(xn-1)=y(xn-h)=y(xn)-hy(xn)+1/2h2y(xn)-1/6h3y(4)(xn)+O(h4)
n-2=y(xn)-2hy(xn)+2h2y(xn)-4/3h3y(4)(xn)+O(h4)yn+1=y(xn)+h(0+1+2)y(xn)-h2(1+22)y(xn)+h3(1/21+22)y(xn)-h4/6(1+82)y(4)(xn)+O(h5)+1/24h4y(4)(xn)+O(h5)第46页,课件共68页,创作于2023年2月=1,0+1+2=1,1+22=-1/2,1+42=1/3于是有三步三阶显式差分公式设pr(x)是函数(x,y(x))的某个r次插值多项式,则有解之得:yn+1=yn+h/12(23n-16n-1+5n-2)因为2.9.2利用数值积分构造线性多步方法其中第47页,课件共68页,创作于2023年2月选取不同的插值多项式pr(x),就可导出不同的差分公式.下面介绍常用的Adams公式.设已求得精确解y(x)在步长为h的等距节点xn-r,…,xn上的近似值yn-r,…,yn,记k=(xk,yk),利用r+1个数据(xn-r,n-r),…,(xn,n)构造r次Lagrange插值多项式由此,可建立差分公式1.Adams显式公式其中第48页,课件共68页,创作于2023年2月由此,可建立差分公式由于
hrj
则有称之为r+1步Adams显式公式.第49页,课件共68页,创作于2023年2月下面列出几个带有局部截断误差主项的Adams显式公式r=0yn+1=yn+hn+(1/2)h2y(xn)2.Adams隐式公式r=1yn+1=yn+(h/2)(3n-n-1)+(5/12)h3y(xn)r=2yn+1=yn+(h/12)(23n-16n-1+5n-2)+(3/8)h4y(4)(xn)r=3yn+1=yn+(h/24)(55n-59n-1+37n-2-9n-3)+(251/720)h5y(5)(xn)如果利用r+1个数据(xn-r+1,n-r+1),…,(xn+1,n+1)构造r次Lagrange插值多项式pr(x),则可导出数值稳定性好的隐式公式,称为Adams隐式公式,其一般形式为第50页,课件共68页,创作于2023年2月其中系数为下面列出几个带有局部截断误差主项的Adams隐式公式r=0yn+1=yn+hn+1-(1/2)h2y
(xn)r=1yn+1=yn+(h/2)(n+n+1)-(1/12)h3y
(xn)r=2yn+1=yn+(h/12)(5n+1+8n-n-1)-(1/24)h4y(4)(xn)r=3yn+1=yn+(h/24)(9n+1+19n-5n-1+n-2)-(19/720)h5y(5)(xn)第51页,课件共68页,创作于2023年2月3.Adams预估-校正公式由显式公式提供一个预估值,再用隐式公式校正一次,求得数值解,称为预估校正方法。校正yn+1=yn+(h/24)(9n+1+19n-5n-1+n-2)一般预估公式和校正公式都采用同阶公式。例如:预估yn+1=yn+(h/24)(55n-59n-1+37n-2-9n-3)
n+1=(xn+1,yn+1),n=3,4,…称为四阶Adams预估校正公式.实际计算时通常用四阶单步方法(如四阶R-K公式)为它提供起始值y1,y2,y3.例6用四阶Adams预估校正公式求解初值问题第52页,课件共68页,创作于2023年2月y
=y-2x/y,0x1y(0)=1取步长h=0.1.解用四阶R-K公式提供起始值,计算结果如下xnR-k法yn预估值yn校正值yn精确值y(xn)00.10.20.30.40.50.60.70.80.9111.0954461.1832171.2649121.3415511.4140451.4830171.5489171.6121141.6729141.7315661.3416411.4142131.4832391.5491921.6124501.6733181.73204811.0954451.1832161.2649911.3416411.4142141.4832401.5491931.6124521.6733201.732051第53页,课件共68页,创作于2023年2月§3R—K方法的MATLAB实现对于微分方程(组)的初值问题
龙格—库塔方法可用如下MATLAB命令实现其计算:[t,x]=ode23(@f,ts,x0,options)[t,x]=ode45(@f,ts,x0,options)其中ode23用的是3级2阶龙格—库塔公式,ode45用的是以Runge-Kutta-Fehberg命名的5级4阶公式。第54页,课件共68页,创作于2023年2月命令的输入f是待解方程写成的函数m文件:functiondx=f(t,x)dx=[f1;f2;
;fn];若ts=[t0,t1,t2,…,tf],则输出在指定时刻t0,t1,t2,…,tf的函数值;等分点时用ts=t0:k:tf,输出在[t0,tf]内等分点处的函数值。x0为函数初值(n维向量)。options可用于设定误差限(options缺省时设定相对误差10-3,绝对误差10-6),命令为:options=odeset(‘reltol’,rt,’abstol’,at)其中rt,at分别为设定的相对误差和绝对误差。命令的输出t为指定的ts,x为相应的函数值(n维向量)。注意,计算步长是根据误差限自动调整的,并不是输入中指定的ts的分点。第55页,课件共68页,创作于2023年2月下面用MATLAB软件解决§1提出的两个问题例1海上缉私(续)模型的数值解1.
设a=20(海里/小时),b=40(海里/小时),c=15(海里),由模型(1),(2)求任意时刻缉私艇的位置及缉私艇航线。对于给出的a,b,c用MATLAB求数值解时,记x(1)=x,x(2)=y,x=(x(1),x(2))T。编写如下m文件:functiondx=jisi(t,x)%建立名为jisi的函数m文件a=20;b=40;c=15;s=sqrt((c-x(1))^2+(a*t-x(2))^2);dx=[b*(c-x(1))/s;b*(a*t-x(2))/s];%以向量形式表示方程(1)第56页,课件共68页,创作于2023年2月然后运行以下程序:ts=0:0.05:0.5;%设定t的起终点及中间的等分点,终点可先作试探,再按照x(t)
c=15调整到0.5x0=[0,0];%输入x,y的初始值(2)[t,x]=ode45(@jisi,ts,x0);%调用ode45计算[t,x]%输出t,x(t),y(t)plot(t,x),grid,%按照数值输出作x(t),y(t)的图形gtext(‘x(t)’),gtext(‘y(t)’),pauseplot(x(:,1),x(:,2)),grid,%作y(x)的图形gtext(‘x’),gtext(‘y’)第57页,课件共68页,创作于2023年2月得到的数值结果x(t),y(t)为缉私艇的位置,列入表1。走私船的位置记作x1(t),y1(t),显然x1(t)=c=15,y1(t)=at=20t,将y1(t)列入表1最后一列。可知当t=0.5(小时),x,y与x1,y1几乎一致,认为缉私艇追上走私船。x(t),y(t)及y(x)的图形见图2,y(x)为缉私艇的航线。tx(t)y(t)y1(t)00000.051.99840.06981.00.103.98540.29242.00.155.94450.69063.00.207.85151.28994.00.259.67052.11785.00.3011.34963.20056.00.3512.81704.55527.00.4013.98066.17738.00.4514.74518.02739.00.5015.00469.997910.0a=20,b=40,c=15的数值解x(t),y(t)和y1(t)第58页,课件共68页,创作于2023年2月a=20,b=40,c=15时x(t),y(t)和y(x)的图形
第59页,课件共68页,创作于2023年2月2.设b,c不变,而a变大为30,35,
接近40(海里/小时),观察解的变化修改a的输入,并相应地延长t的终点。设a=35,t的终点经试探,调整为1.6合适。表2是计算结果,其中x(t),y(t)有两列数字,左边的是用“缺省”精度(即相对误差10-3,绝对误差10-6)计算的,中间的y1(t)=at=35t是走私船到达的位置。可知t=1.3,1.4,1.5时缉私艇的位置x
15,但y与y1(t)相差甚远,t=1.6时x,y与x1,y1也有差距,这是累积误差造成的。可利用ode45的控制参数options提高精度(上面的“调用ode45计算”用以下程序代替),如设第60页,课件共68页,创作于2023年2月opt=odeset('reltol',1e-6,'abstol',1e-9);[t,x]=ode45(@jisi,ts,x0,opt);得到的x(t),y(t),与走私船到达的位置x1(t),y1(t)相对照,可知t=1.6时x,y与x1,y1几乎一致,认为缉私艇追上走私船。x(t),y(t)及y
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 游戏注意安全
- 内蒙古化工职业学院《银行业务模拟实训》2023-2024学年第二学期期末试卷
- 新疆科信职业技术学院《口腔正畸学基础与临床》2023-2024学年第二学期期末试卷
- 柳州铁道职业技术学院《固态电子与光电子》2023-2024学年第二学期期末试卷
- 山东省枣庄市第十六中学2025年高考摸底测试语文试题含解析
- 三峡电力职业学院《外国文学导读》2023-2024学年第一学期期末试卷
- 蒸气管道安装方案
- 2025经济适用房转让合同书范文
- 2025星辰科技经销合同书
- 承压水罐施工方案
- 压裂施工安全操作规定(正式)
- 生理卫生教学【青春期男生性教育】走向成熟课件
- 人工呼吸的三种方式和操作方法课件
- 项目基坑坍塌事故专项应急预案桌面演练脚本
- 危险化学品MSDS(氮气)
- 无创通气常用模式与参数调节
- 清远市城市树木修剪技术指引(试行)
- GB∕T 8427-2019 纺织品 色牢度试验 耐人造光色牢度:氙弧
- 退休人员实行社区管理申请书
- 全国同等学力工商管理大纲重点整理
- 机耕道监理实施细则完整
评论
0/150
提交评论