matlab微分方程的求解的方法ppt课件.ppt
主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能定义:含有导数的方程称为微分方程。如 f(x,y(x),y(x)=0微分方程模型 1、微分方程的一般形式:F(x,y,y,y(n)=0 隐式或 y(n)=f(x,y,y,y(n-1)显式主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能特殊情形:2、一阶微分方程组的一般形式:初始条件:y(x0)=y0微分方程模型主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能图形解 tyo简单的微分方程。复杂、大型的微分方程。返 回解析解 y=f(t)数值解(ti,yi)欧拉方法改进欧拉方法 梯形法龙格-库塔法微分方程求解方法简介主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程数值解1、欧拉法2、龙格库塔法数值求解思想:(变量离散化)引入自变量点列xn yn,在x0 x1x2xn上求y(xn)的近似值yn.通常取等步长 h,即xn=x0+nh,或 xn=xn-1+h,(n=1,2,)。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能1)向前欧拉公式:(y=f(x,y))y(xn+1)y(xn)+h f(xn,y(xn)(迭代式)yn+1 yn+h f(xn,yn)(近似式)特点:f(x,y)取值于区间xn,xn+1的左端点.在小区间xn,xn+1上用差商代替微商(近似),1、欧拉方法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能 yn+1 yn+h f(xn+1,yn+1)特点:f(x,y)取值于区间xn,xn+1的右端点.非线性方程,称隐式公式。yn+1=yn+h f(xn,yn)2)向后欧拉公式方法:迭代(y=f(x,y))x=;y=;x(1)=x0;y(1)=y0;for n=1:k x(n+1)=x(n)+n*h;y(n+1)=y(n)+h*f(x(n),y(n);(向前)end1、欧拉方法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能例 1 观察向前欧拉、向后欧拉算法计算情况。与精确解进行比较。误差有多大?解:1)解析解:y=x+e-x1、欧拉方法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能2)向前欧拉法:yn+1=yn+h(-yn+xn+1)=(1-h)yn+h xn+h 3)向后欧拉法:yn+1=yn+h(-yn+1+xn+1+1)转化 yn+1=(yn+h xn+1+h)/(1+h)y=f(x,y)=-y+x+1;1、欧拉方法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能x1(1)=0;y1(1)=1;y2(1)=1;h=0.1;(died.m)for k=1:10 x1(k+1)=x1(k)+h;y1(k+1)=(1-h)*y1(k)+h*x1(k)+h;y2(k+1)=(y2(k)+h*x1(k+1)+h)/(1+h);endx1,y1,y2,(y1向前欧拉解,向前欧拉解,y2向后欧拉解)向后欧拉解)x=0:0.1:1;y=x+exp(-x)(解析解)(解析解)plot(x,y,x1,y1,k:,x1,y2,r-)1、欧拉方法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能x精确解向前欧拉向后欧拉01110.11.004811.00910.21.01871.011.02640.31.04081.0291.05130.41.07031.05611.08300.51.10651.09051.12090.61.14881.13141.16450.71.19661.17831.21320.81.24931.23051.26650.91.30661.28741.324111.36791.34871.3855(1)步长)步长h=0.1的数值解比较表的数值解比较表计算结果主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能(2)步长)步长h=0.01的数值解比较表的数值解比较表x精确解向前欧拉向后欧拉01110.11.00481.00441.00530.21.01871.01791.01950.31.04081.03971.04190.41.07031.06901.07170.51.10651.10501.10800.61.14881.14721.15040.71.19661.19481.19830.81.24931.24751.25110.91.30661.30471.308411.36791.36601.3697结论:显然迭代步长结论:显然迭代步长h 的选取对精度有影响。的选取对精度有影响。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能图形显示 有什么方法可以使精度提高?向后欧拉法向后欧拉法返 回主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能梯形公式 改进欧拉公式yn+hf(xn,yn)返 回主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能x精确解向前欧拉向后欧拉改进欧拉011110.11.004811.00911.0050.21.01871.011.02641.0190.31.04081.0291.05131.04120.41.07031.05611.08301.07080.51.10651.09051.12091.10710.61.14881.13141.16451.14940.71.19661.17831.21321.19720.81.24931.23051.26651.25000.91.30661.28741.32411.307211.36791.34871.38551.3685步长 h=0.1 的数值解比较表使用改进欧拉公式的例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能2、龙格-库塔法 龙格龙格-库塔法库塔法是利用泰勒展式将y(x+h)在x处展开,并取其前面若干项来近似y(x+h)而得到公式y(x+h)y(x)+h j(x,y(x),h)如果y(xn)yn,则y(xn+1)的近似值为:yn+1=yn+h j(xn,yn,h),n=0,1,若 y(x+h)y(x)+h j(x,y(x),h)=O(h p+1),则称以上迭代公式为p阶公式,p的大小反映了截断误差的高低,高阶高精度。要得到一个p阶公式,关键在于如何选取j(x,y(x),h)使之满足阶的要求。返 回主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程图解法欲将微分方程解的全局信息形象化、直观化。对于一阶微分方程dy/dx=f(x,y),如果给出平面上任意一点(x,y),就能够确定出解y=f(x)在该点(x,y)处的斜率f(x,y)。从图象上看,给出平面上的一系列点,通过每一点(x0,y0),可以画出一条通过点(x0,y0)、斜率为f(x0,y0)的短直线。这样的短直线布满整个坐标平面,形成的图形就称为斜率场或方向场。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程图解法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能相平面轨迹表示微分方程的解 微分方程图解法 利用微分方程的数值解法,可以得到其数值解:(x(t),y(t)在t取离散值时的取值列向量X,Y;然后分别独立地作出函数x(t)和y(t)的曲线,如图4.2,其初值条件为(5,5)。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程图解法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程图解法 如果撇开自变量的取值T,直接利用X,Y的分量作为坐标,就可以在xoy平面上画出解的轨迹,称为相相平面轨迹图平面轨迹图。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能微分方程图解法主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能MATLAB软件求解解析解y=dsolve(eqn1,eqn2,c1,x)微分方程组初值条件指明变量注意:y Dy,y D2y 自变量名可以省略,默认变量名t。主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能例输入:y=dsolve(Dy=1+y2)y1=dsolve(Dy=1+y2,y(0)=1,x)输出:y=tan(t-C1)(通解)y1=tan(x+1/4*pi)(特解)MATLAB软件求解主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能例 常系数的二阶微分方程y=dsolve(D2y-2*Dy-3*y=0,x)y=dsolve(D2y-2*Dy-3*y=0,y(0)=1,Dy(0)=0,x)输入:y=C1*exp(-x)+C2*exp(3*x)y=3/4*exp(-x)+1/4*exp(3*x)结果:主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能x=dsolve(D2x-(1-x2)*Dx+x=0,x(0)=3,Dx(0)=0)例 非常系数的二阶微分方程无解析表达式!主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能x=dsolve(Dx)2+x2=1,x(0)=0)例 非线性微分方程x=sin(t)-sin(t)若欲求解的某个数值解,如何求解?t=pi/2;eval(x)MATLAB软件求解主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能输入:x,y=dsolve(Dx=3*x+4*y,Dy=-4*x+3*y)x,y=dsolve(Dx=3*x+4*y,Dy=-4*x+3*y,x(0)=0,y(0)=1)例输出:x=1/2*exp(7*t)-1/2*exp(-t)y=1/2*exp(-t)+1/2*exp(7*t)返 回MATLAB软件求解主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能MATLAB软件求解数值解其中(1)Fun表示由微分方程(组)写成的m文件名;(2)y0表示为函数的初值;(3)options用于设定误差限(可以默认)。程序为 options=odeset(reltol,rt,abstol,at)这里的rt和at分别为设定的相对误差和绝对误差。(rt=1e-7)t,y=ode45(Fun,t0,tf,y0,options)主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能1)首先建立M-文件 (weif.m)function f=weif(x,y)f=-y+x+1;2)求解:x,y=ode23(weif,0,1,1)3)作图形:plot(x,y,r);4)与精确解进行比较 hold on ezplot(x+exp(-x),0,1)例1 y=-y+x+1,y(0)=1标准形式:y=f(x,y)范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能 使用Matlab软件求数值解时,高阶微分方程必须等价地变换成一阶微分方程组.注意注意:选择一组状态变量主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能注意1、建立、建立M文件函数文件函数 function xdot=fun(t,x,y)xdot=x2(t);x3(t);f(t,x1(t),x2(t),xn(t);2、数值计算、数值计算(执行以下命令)(执行以下命令)t,xt,x1 1,x,x2 2,x,xn n=ode45(=ode45(funfun,t,t0 0,t,tf f,xx1 1(0),x(0),x2 2(0),(0),x,xn n(0)(0)主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能例例2 Van der pol 方程方程:令令 y1=x(t),y2=x(t);该方程无解析解!范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能(1)编写M文件(文件名为 vdpol.m):function yp=vdpol(t,y);yp=y(2);(1-y(1)2)*y(2)-y(1);(2)编写程序如下:(vdj.m)t,y=ode23(vdpol,0,20,3,0);y1=y(:,1);%原方程的解 y2=y(:,2);plot(t,y1,t,y2,-)%y1(t),y2(t)曲线图 pause,plot(y1,y2),grid,%相轨迹图,即y2(y1)曲线范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能 蓝色曲线 y(1);(原方程解)红色曲线 y(2);计算结果范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能例3 考虑Lorenz模型:其中参数=8/3,=10,=28解:1)编写M函数文件(lorenz.m);2)数值求解并画三维空间的相平面轨线;(ltest.m)范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能1、lorenz.mfunction xdot=lorenz(t,x)xdot=-8/3,0,x(2);0,-10,10;-x(2),28,-1*x;2、ltest.mx0=0 0 0.1;t,x=ode45(lorenz,0,10,x0);plot(t,x(:,1),-,t,x(:,2),*,t,x(:,3),+)pauseplot3(x(:,1),x(:,2),x(:,3),grid on计算结果如下图范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能图中,x1的图形为实线(蓝),x2的图形为“*”线(绿),x3的图形为“+”线(红).取t0,tf=0,10。若自变量区间取0,20、0,40,计算结果如下:范例主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能曲线呈震荡发散状三维图形的混沌状ltest.m主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能观察结果:1、该曲线包含两个“圆盘”,每一个都是由螺线形轨道构成。某些轨道几乎是垂直地离开圆盘中一个而进入另一个。2、随着t的增加,x(t)先绕一个圆盘几圈,然后“跳”到另一个圆盘中。绕第二个圆盘几圈,又跳回原来的圆盘。并以这样的方式继续下去,在每个圆盘上绕的圈数是随机的。思考:该空间曲线与初始点x0的选择有关吗?主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能1)x0=0 0.1 0.1;t0,tf=0,30;解向量y2)x00=0.01 0.11 0.11;t0,tf=0,30;解向量x y x=(y1-x1,y2-x2,y3-x3)返 回主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能1、Apollo卫星的运动轨迹的绘制实验内容主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能2、用向前欧拉公式和改进的欧拉公式求方程 y=y-2x/y,y(0)=1的数值解(0 x1,h=0.1)要求编写程序。实验内容主 页下一页上一页数学实验为深入学习习近平新时代中国特色社会主义思想和党的十九大精神,贯彻全国教育大会精神,充分发挥中小学图书室育人功能3、Rossler微分方程组:当固定参数b=2,c=4时,试讨论随参数a由小到大变化(如a(0,0.65)而方程解的变化情况,并且画出空间曲线图形,观察空间曲线是否形成混沌状?4、操练一。返 回实验内容