非线性电路--微分方程数值解法

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

非线性电路理论及应用周波电路研-112011307080114微分方程数值解法初值:所谓初值问题,是函数及其必要的导数在积分的起始点为已知的一类问题,一般形式为:),,,,()()1()()(nnnyyyxfyxfy或我们先介绍简单的一阶问题:)18()())(,()(0yaybxaxyxfxyyyLyxfyxfLipschitzyxf),(),(:))((),(条件李卜希兹满足只要第八章序由常微分方程的理论可知:上述问题的解唯一存在。常微分方程求解求什么?应求一满足初值问题(8—1)的解函数y=y(x),如对下列微分方程:222022224444122221221)0(xyxyxycycxyxdxydyxydxdyyxyyx《高等数学》中,微分方程求解,如对一阶微分方程:y=f(x,y)是求解解函数y=y(x),使满足上述方程。但能够求出准确的解析函数y(x)的微分方程是很少的,《高数》中研究微分方程的求解,是分门别类讨论,对不同类型的微分方程,求解方法不一样,因此,要求解微分方程,首先必须认清类型。微分方程数值解法而常微分方程初值问题的数值解法,是要寻求解函数y(x)在一系列点y(xi)(离散点):上y(xi)的近似值yi(i=1,2,…,n),并且还可由这些(xi,yi)(i=1,2,…,n)构造插值函数作为近似函数。上述离散点相邻两点间的距离hi=xi-1-xi称为步长,若hi都相等为一定数h,则称为定步长,否则为变步长。nxxx10本章重点讨论如下一阶微分方程:在此基础上介绍一阶微分方程组与高阶微分方程的数值解法。0)())(,()(yaybxaxyxfxy§欧拉(Euler)法以Euler法及其改进方法为例,说明常微分方程初值问题数值解法的一般概念,Euler法很简单,准确度也不高,介绍此方法的目的,是由于对它的分析讨论能够比较清楚地显示出方法的一些特点,而这些特点及基本方法反映了其它方法的特点。Euler法用于求解一阶微分方程初值问题:0)())(,()(yaybxaxyxfxyP1P2y(x)P0x2x1x01.1Euler法及其简单改进Euler公式为:由x0出发x1,x2,…,xN,而利用此式可算出对应的y1,y2,…,yN,式(8-2)称为差分方程(序列{yn}满足的方程)。下面是Euler公式的推导:一、从几何意义出发:y=f(x,y)的解函数y=y(x)在xoy平面上是一族解曲线,而初值问题则是其中一条积分曲线,假定y=y(x)的曲线如图8-1从给定的点P0(x0,y0)出发,以P0为切点,作切线,切线斜率为曲线y(x)的切线斜率y=f(x0,y0),因此可得切线:(点斜式))(,(0000xxyxfyy)NabhNnnhxxn),,,1,0(0对等距节点)28(,,2,1)(),(001NnyxyyxhfyynnnnEuler公式的推导(续1))],[(),())(,(),())(,(),(),(),())(,(11211111211122222111111111000010001上在近似曲线而用可得:相交于与为斜率,可得切线:为切点,以再以yxPPyxhfyxxyxfyyyxPxxxxyxfyyyxfyxPyxhfyxxyxfyy),())(,(:))(,(:)(),,(111nnnnnnnnnnnnnnnnnnyxhfyxxyxfyyxxxxyxfyyxyyyx相交得与可作直线一般地假定已求出,,,,,...),...,2,1)(()(,,,,1010NiNyyyNixyxyyxxx的近似值的初值问题的与所对应的微分方程出在重复上述过程,即可求几何意义:用折线近似解曲线y=y(x),折线不会偏离太远,因为每项以f(x,y)(斜率)修正。切线与x=x1交于P1(x1,y1),在[x0,x1]上以切线近似曲线,10PP:时,可求,当近似以1111)(yxxxyy微分方程数值解法1欧拉法采用向前欧拉法得:微分方程数值解法微分方程数值解法如果用时间区间的斜率作为平均斜率则称向后欧拉法其中K=1,2,3………..微分方程数值解法微分方程数值解法如果用时间区间的斜率作为平均斜率则称向后欧拉法其中K=1,2,3………..微分方程数值解法如果用时间区间的斜率作为平均斜率则称向后欧拉法其中K=1,2,3………..微分方程数值解法如果用时间区间的斜率作为平均斜率则称向后欧拉法其中K=1,2,3………..§2龙格-库塔(Runge-kutta)方法龙格-库塔方法的基本思想:))(,(*:*,,),()(,(11)-(8)(,()()(),()10()()()(,)()(1111hxyhxfkkxxhxyhxfhxyhxhfxyxyyxfyhxyhxyxyhxyxynnnnnnnnnnnnnnn即记作上的平均斜率)称作区间这里)得到解于是由微分方程由微分中值定理开始我们从研究差商因此只要对平均斜率k*提供一种算法,由(8-11)式便相应地得到一种微分方程的数值计算公式。(紧接下屏)龙格-库塔方法的基本思想)(21*21kkk改进欧拉公式比欧拉公式精度高的原因,也就在于确定平均斜率时,多取了一个点的斜率值。因此它启发我们,如果设法在[xi,xi+1]上多预报几个点的斜率值,然后将它们加权平均作为k*的近似值,则有可能构造出更高精度的计算公式,这是龙格-库塔方法的基本思想。用这个观点来研究欧拉公式与改进欧拉公式,可以发现欧拉公式由于仅取xn一个点的斜率值f(xn,yn)作为平均斜率k*的近似值,因此精度很低。而改进欧拉公式(8-10)却是利用了xn与xn-1两个点的斜率值k1=f(xn,yn)与k2=f(xn+1,yn+hk1)取算术平均作为平均斜率k*的近似值。其中k2是通过已知信息yn利用欧拉公式求得的。二阶龙格-库塔公式12)-(8),(),()(12122111lhkyxfkyxfkkckchyynlnnnnn公式(8-12)中含有三个待定参数c1,c2和l,我们希望适当选取这些参数值,使得公式(8-12)具有二阶精度,亦即使:)()(311hOyxynn现在仍假定yn=y(xn),即yn是准确的,将y(xn+1)与yn+1都在xi处作泰勒展开:13)-(8)()(2)()()(321hOxyhxyhxyxynnnn二阶龙格-库塔公式)()()()()],(),(),([),(),()(),(22121hOxylhxyhOyxfyxfyxflhyxflhkyxfkxyyxfknnnnnnynnxnnnlnnnn由:代入(8-12)式,得:14)-(8)()()()()(322211hOxylhcxycchxyynnnn比较(8-13)与(8-14)两式,要使公式具有二阶精度,只有满足下列条件:15)-(8211221lccc这里一共有三个待定参数,但只需满足两个条件,因此有一个自由度,于是满足条件(8-15)的参数不止一组,而是一族,相应的公式(8-12)也有一族,这些公式统称为二阶龙格-库塔公式,简称二阶R-K公式。特别,当l=1即xn+l=xn+1时,c1=c2=1/2,二阶R-K公式就是改进欧拉公式。如果取l=1/2,则c1=0,c2=1,这时二阶R-K公式称为变形的欧拉公式,其形式见左边:16)-(82,),(1212121khyxfkyxfkhkyynnnnnn从表面上看,变形的欧拉公式仅含一个斜率值k2,但k2是通过k1计算出来的,因此每完成一步,仍然需要两次计算函数f的值,工作量和改进欧拉公式相同。二阶龙格-库塔公式

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功