欢迎来到天天文库
浏览记录
ID:20945814
大小:296.89 KB
页数:11页
时间:2018-10-18
《matlab应用第8章常微分方程的数值求解》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、笛8查常微分方程的教信求紹所谓的常微分方程就是把自变量t和它的函数y以及它的微商dy/dt、d2y/dt2、...dny/dtn相联系的一个关系式dyd^y_£2dtdtdtn一个微分方程不只有一个或儿个解,而是有无数个一簇解。如一阶常微分方程dy/dt=l-e4的解为y(t)=t+e4+C。C为积分常数,C取任意数值时,函数y⑴都满足微分方程。因此,解有无数个。如图在实际应用中,并不要求把所有的解都求出来,而是求满足某种指定条件的解。这个条件通常称定解条件。一个最重要的定解条件是初值条件。对于上
2、述方程,初值条件是:爪):凡,华”。,学二々,…,⑥⑵atatatxo是自变量的某个指定的“初值”,而%、>,„、%2)、...、yf"则是未知函数及其到n—1阶微商的指定“初值”。求解满足这样初值条件的微分方程问题称为初值问题。如果能从方程⑴将6/、/,解出,则微分方程变成下面的形式£2dtndycPy_dn~lyyH”:dt(3)这里的f与式(1)中的f不同,它是n+1个自变量的己知函数。这种微分方程称为正规形微分方程。而式(1)有时称为隐微分方程。我们只考虑正规形微分方程,而且是一阶常微分方
3、程的初值问题:字=力0)=),0,⑷at设函数/(纟,),)在区域~4、,由常微分方程理论得知,初值问题(4)在区间[t(),T]有唯一解,且连续可微。微分方程的数值解法是一种离散化方法。在这种方法中,事先取定自变量t的离散值ti,t2,tN,tj称为节点,通常取成等距的,即t5、=t0+h,t2=to+2h,tN=t0+Nh,其中h〉0称为步长,必要吋,可以改变它的大小。在这些节点6、上求出未知函数y⑴对应的值y⑹、y(t2)、...y(tN)的近似值y!、y2、...yN。这些值称为初值问题的一个数值解。常微分方程的数值求解方法很多,常用的有欧拉(Euler)方法、休恩(Heun)方法、泰革力(Taylor)级数注、尤格一库塔(Runge-Kutta)法、预测一校正(Predictor-Corrector)法。欧拉(Euler)方法根据泰勒(Taylor)定理,如果函数y(t)、y’(t)、y”(t)是连续的,附近可以展开为:yW=A)+/(zoX,-,。)+C7、e[,(),8、,]令h=t'-t。,并将y’(~)=,(f0,y(^)))代入上式,得至(J池)=,)么))+Y’(A若步长取得足够小,可以忽略包含h2的二次项=)^0)+Wo^(^o))欧拉逼近将区间[a,b]分成M个等距的子区间,子区间的长度即为步长h=(b-a)/M,tk=a+kh,k=l,2,...”M或tk+i=tk+h。重复上述欧拉逼近过程:y2二y,+/z/'(rI,yl);y3=y2+/i/'(/2,y2);这些点就是对曲线y=y⑴的逼近。在儿何上,/(/,^^办/叫表示曲线^^⑴的斜率。对于方9、程解的所有曲线,/^,y)构成一个斜率场。2345一个解曲线应该受斜率约束的。沿着一条曲线运动,要从初始点(to,yo)开始,考察在斜率场中该点的方向,沿着该方向移动一段距离,相当于在t方向移动h距离,在y方向移动蛘(~,八),这吋移动到下一点(tbyD。在(byD点,重复上述步骤,得到(t2,y2),.…,最后得到(tN,yN)。=Ot、‘hh当然,除了(to,yo)外,其它点并不在精确的解曲线上,因此(ti,yi),(tN,yN)是精确解曲线的近似值。如果步长取得越短,近似值就逼近精确值。欧拉10、方法的末端累积误差为=()(//)2以下是在[0,3]内,方程为/=(Z-y)/2、初值条件为><0)=1的不同步长欧拉解的比较。Figure9*6ComparisonofEulersolutionswithdifferentstepsizesfor=(f—y)/2over[0,3Jwiththeinitialconditiony(Q)=1.从图屮可以看出,步长取得越小,越逼近精确解。休恩(Heun)方法对微分方程办/冰=/(^>,)从10到11积分,利用初始条件y(^0)=>o»得到f1/(,,11、=£y*(t)dt=y(z,)-y(r())y(z,)=y(z())+£'/(z,y{t))dt上式中的积分可以利用数值积分的梯形公式(S,⑽)表达。现在取/2=^-~,应用梯形公式,得到池卜>仏)+1⑽。,也))+冰,)))(Heun-1)注意,这吋公式的右端也包含待定值y(tD。可以用一个估计值来代替右边的yh)。这里采用欧拉方法得到这个估计值,)</,)-+然后代入(Heun-1)式中,得到(tby丨)。%=也)+1(/(~,>,(,。))+/(,i,),。+W。,),。))
4、,由常微分方程理论得知,初值问题(4)在区间[t(),T]有唯一解,且连续可微。微分方程的数值解法是一种离散化方法。在这种方法中,事先取定自变量t的离散值ti,t2,tN,tj称为节点,通常取成等距的,即t
5、=t0+h,t2=to+2h,tN=t0+Nh,其中h〉0称为步长,必要吋,可以改变它的大小。在这些节点
6、上求出未知函数y⑴对应的值y⑹、y(t2)、...y(tN)的近似值y!、y2、...yN。这些值称为初值问题的一个数值解。常微分方程的数值求解方法很多,常用的有欧拉(Euler)方法、休恩(Heun)方法、泰革力(Taylor)级数注、尤格一库塔(Runge-Kutta)法、预测一校正(Predictor-Corrector)法。欧拉(Euler)方法根据泰勒(Taylor)定理,如果函数y(t)、y’(t)、y”(t)是连续的,附近可以展开为:yW=A)+/(zoX,-,。)+C
7、e[,(),
8、,]令h=t'-t。,并将y’(~)=,(f0,y(^)))代入上式,得至(J池)=,)么))+Y’(A若步长取得足够小,可以忽略包含h2的二次项=)^0)+Wo^(^o))欧拉逼近将区间[a,b]分成M个等距的子区间,子区间的长度即为步长h=(b-a)/M,tk=a+kh,k=l,2,...”M或tk+i=tk+h。重复上述欧拉逼近过程:y2二y,+/z/'(rI,yl);y3=y2+/i/'(/2,y2);这些点就是对曲线y=y⑴的逼近。在儿何上,/(/,^^办/叫表示曲线^^⑴的斜率。对于方
9、程解的所有曲线,/^,y)构成一个斜率场。2345一个解曲线应该受斜率约束的。沿着一条曲线运动,要从初始点(to,yo)开始,考察在斜率场中该点的方向,沿着该方向移动一段距离,相当于在t方向移动h距离,在y方向移动蛘(~,八),这吋移动到下一点(tbyD。在(byD点,重复上述步骤,得到(t2,y2),.…,最后得到(tN,yN)。=Ot、‘hh当然,除了(to,yo)外,其它点并不在精确的解曲线上,因此(ti,yi),(tN,yN)是精确解曲线的近似值。如果步长取得越短,近似值就逼近精确值。欧拉
10、方法的末端累积误差为=()(//)2以下是在[0,3]内,方程为/=(Z-y)/2、初值条件为><0)=1的不同步长欧拉解的比较。Figure9*6ComparisonofEulersolutionswithdifferentstepsizesfor=(f—y)/2over[0,3Jwiththeinitialconditiony(Q)=1.从图屮可以看出,步长取得越小,越逼近精确解。休恩(Heun)方法对微分方程办/冰=/(^>,)从10到11积分,利用初始条件y(^0)=>o»得到f1/(,,
11、=£y*(t)dt=y(z,)-y(r())y(z,)=y(z())+£'/(z,y{t))dt上式中的积分可以利用数值积分的梯形公式(S,⑽)表达。现在取/2=^-~,应用梯形公式,得到池卜>仏)+1⑽。,也))+冰,)))(Heun-1)注意,这吋公式的右端也包含待定值y(tD。可以用一个估计值来代替右边的yh)。这里采用欧拉方法得到这个估计值,)</,)-+然后代入(Heun-1)式中,得到(tby丨)。%=也)+1(/(~,>,(,。))+/(,i,),。+W。,),。))
此文档下载收益归作者所有