《MATLAB作业5参考答案.docx》由会员分享,可在线阅读,更多相关《MATLAB作业5参考答案.docx(4页珍藏版)》请在优知文库上搜索。
1、MATLAB作业5参考答案1、试求出下面线性微分方程的通解。+13+64+152+176+80y(r)=e2zsin(2r+-)+cos(3r)drdrdrdrdt3假设上述微分方程满足已知条件XO)=1,WI)=3,y)=2,P(O)=1,(l)=2,试求出满足该条件的微分方程的解析解。【求解】先定义七为符号变量,求出等号右侧的函数,则可以由下面叮嘱求出方程的解析解,解的规模较大,经常能占数页。symstexp(-2*t)*(sin(2*t+sym(pi)/3)+cos(3*t)ans=exp(-2*t)*(sin(2*t+13*pi)+cos(3*t)y=dsolve(,D5y+13*D4
2、y+64*D3y152*D2y+176*Dy+80*y=,exp(-2*t)*(sin(2*t+13*pi)+cos(3*t),y(0)=,y(1)=3,y(pi)=2,.,Dy(0)=,Dy(1)=2,)略:事实上,细致阅读求出的解析解就会发觉,其中大部分表达式是关于系数的,所以假如能对系数进行近似则将大大减小解的困难度。vpa(y)ans=.20576131687242798353909465020576e-2*exp(-2.*t)*cos*t)+.15538705805619602372728107411086e-1*exp(-2.*t)*sin(2.*t)+.7683058708429
3、4035590921611166287e-2*exp(-2.*t)*cos(2.*t)-106.24422608844727797303237726774*exp(-2.*t)*t2+98.159206062620455331994871615083*exp(-2.*t)*t+59.405044899367325888329709780356*ep(-2.*t)*t3-30.741892776456442808809983330755*exp(-2.*t)+.20576131687242798353909465020576e-2*exp(-2.*t)*sin(3.*t)+31.73215210
4、4579289125415500223136*exp(-5.*t)2、试求解下面微分方程的通解以及满足MO)=I,%(乃)=2,y(0)=0条件下的解析解。x(r)+5x(r)+4x(r)+3y(t)=e6tsin(4r)2y(r)+y(r)+4x()+6x(t)=e6tcos(4r)【求解】可以用下面的语句得出微分方程组的通解。symstx,y=dsoIveCD2x+5*Dx+4*x+3*y=exp(-6*t)*sin(4*t),.,2*Dy+y+4*Dx+6*x=exp(-6*t)*cos(4*t)解略。将已知初始条件代入,则可以得出下面的特解。symstx,y=dsoIve(D2x+5*
5、Dx+4*x+3*y=exp(-6*t)*sin(4*t),.,2*Dy+y+4*Dx+6*x=exp(-6*t)*cos(4*t),x(0)=1,x(pi)=2,y(0)=0,)vpa(x),vpa(y)解略。3、试求出微分方程y(x)-(2-L)MX)+(1-L)y(x)=25的解析解通解,并求出满足XX边界条件XD=,y()=1的解析解。【求解】微分方程的通解可以由下面的函数干脆求出symsXy=dsoIve(D2y-(2-1/x)*Dy+(1-1/x)*y=x2*exp(-5*x),x,)y=exp(x)*C2+ep(x)*Iog(x)*C111296*(6*exp(6*x)*Ei(1
6、,6*x)+1130*x+36*x2)*exp(-5*x)若须要求取满足边界条件的特解,须要在求解时代入边界条件,这样就可以由下面的语句得出微分方程的特解。symsXy=dsoIve(D2y-(2-1/x)*Dy+(1-1/x)*y=x2*exp(-5*x),.y(1)=pi,y(pi)=,x)y=-1/1296*exp(x)*(6*exp(1)*Ei(1,6)+77*exp(-5)-1296*sym(pi)/exp(1)+1/1296*exp(x)*Iog(x)*(6*Ei(1,6)*exp(6*sym(pi)+6)+77*exp(6*sym(pi)-1296*sym(pi)*exp(6*s
7、ym(pi)+5)+3*sqrt(-1)*pi*csgn(sym(pi)*exp(6*sym(pi)+6)-6*Ei(1,6*sym(pi)*exp(6*sym(pi)6)-3*sqrt(-1)*pi*exp(6*sym(pi)6)-3*sqrt(-1)*pi*csgn(6*sqrt(-1)*sym(pi)*exp(6*sym(pi)+6)-30*sym(pi)*exp(6)+3*sqrt(-1)*pi*csgn(sym(pi)*csgn(6*sqrt(-1)*sym(pi)*exp(6*sym(pi)+6)-36*sym(pi)2*exp(6)-11*exp(6)+1296*exp(5*sy
8、m(pi)+6)/1og(sym(pi)*exp(-6*sym(pi)-6)+1/1296*(6*ep(6*x)*Ei(1,6*x)+11+30*x+36*x2)*ep(-5*x)由于运用了Sym(Pi)这样精确的表示,其实还可以用数值解的方法对各个系数进行近似,这样可以得出如下结果。vpa(y,10)ans=1.155578411*ep(x)9717266142*exp(x)*Iog(x)+.7716049383e-3*(6.*exp(6.*x)*Ei(1,6.*x)+11.+30.*x+36.*x2)*exp(-5.*x)还可以对该结果进行图形显示,得出如图所示的解曲线,可见,该曲线通过两
9、个给定点。x1=0.5:0.01:4;y1=subs(y,x,x1);plot(x1,y1,1,pi,o,pi,1,o,)4、LOlka-Volterra扑食模型方程为区)=4所2?且初值为MO)=(ox,j(Z)=XOXO-3o试求解该微分方程,并绘制相应的曲线。【求解】用下面叮嘱可以立刻解出微分方程的模型,并绘制出解的时间响应曲线和相平面曲线,分别如图所示。f=inline(,4*x(1)-2*x(1)*x(2);x(1)*x(2)-3*x(2),t,x,);t,x=ode45(f,0,10,2;3);5、是给出求解下面微分方程的MATLAB叮嘱,y(yy+r2y2=e-ty,y(0)=2
10、,y(0)=y(0)=0并绘制出y(t)曲线。试问该方程存在解析解吗?选择四阶定步长Runge-Kutta算法求解该方程时,步长选择多少可以得出较好的精度,MATLAB语言给出的现成函数在速度、精度上进行比较。【求解】因为该方程为含有非线性项的微分方程,所以一般来说该方程不能有解析解,只能求解其数值解。要求解该方程。,则须要引入状态变量x1,x2,x3t这样可以写出一阶微分方程组。就可以用下面的语句求解微分方程,并绘制出状态变量的时域响应曲线,可见,时变微分方程也可以简洁地求解。f=inIine(,x(2);x(3);-t2*x(1)*x(2)-t2*x(2)*x(1)2+exp(-t*x(D
11、),t,x);t,x=ode45(f,0,10,2;0;0);6、试用解析解和数值解的方法求解下面的微分方程组x(t)=-2x(t)-3x(r)+e,x(0)=1,x(0)=2JQ)=2x(/)-3X0-4X0-4j(0-Sin)Mo)=3,y(0)=4【求解】该方程的解析解可以由下面的语句干脆得出symstx,y=dsoIve(D2x=-2*x-3*Dx+exp(-5*t),D2y=2*-3*y-4*D-4*Dy-sin(t),.x(0)=,Dx(0)=2,y(0)=3,Dy(0)=41)X=1/12*exp(-5*t)-103*exp(-2*t)+174*exp(-t)y=-715*exp
12、(-3*t)-265/16*exp(-t)+11/48*exp(-5*t)+1003*exp(-2*t)+15*cos(t)-1/10*sin(t)+51/4*exp(-t)*tf=inline(.x(2);-2*x(1)-3*x(2)+exp(-5*t);x(4);2*x(1)-3*x(3)-4*x(2)-4*x(4)-sin(t),.,t,x);t1,x1=ode45(f,0,10,1;2;3;4);ezplot(x,0,10),Iine(t1,x1(:,1)figure;ezplot(y,0,10),Iine(t1,1(:,3)得出的x(t)和y*)曲线的数值解与解析解分别如图所示,可见
13、,得出的数值解精度还是很高的,在曲线上无法区分出解析解和数值解。7、下面的方程在传统微分方程教程中经常被认为是刚性微分方程。运用常规微分方程解法和刚性微分方程解法分别求解这两个微分方程的数值解,并求出解析解,用状态变量曲线比较数值求解的精度。(1)y)=j2() = %=9y+24%+5cosr-sinr,y2=-24yl-5Iy2-9cosr+-sinf,yi=-0.1y1-49.9y2,yi(0)=1(2)y2=-502,必()=2=70y2-120y3,y3(0)=l解略,参见讲义。8、试求出习题3中给出的微分方程边值问题数值解,绘制出y()曲线,并和该习题得出的解析解比较精度。【求解】微分方程的解析解可以由下面的函数干脆求出symsXy=dsoIve(D2y-(2-1/x)*Dy+(1-1x)*y=x2*exp(-5*x),.y(1)=pi,y(pi)=,x)ezplot(y,0,10)2u2u.7T=Ox2y29、试用数值方法求解偏微分方程0力=1,un=0,并绘制出函数曲面。=0fy0IV=O,0x0,y0【求解】可以看出,该方程为椭圆型偏微分方程,且c=1,f=0,用Pdetool函数供应的界面求解该方程,选择并设置椭圆微分方程,再选择矩形区域,可以设置出横轴和纵轴的边界条件,求解微分方程则可以得出所示的解曲面。