微分方程组的解析解和数值解Word文件下载.docx
《微分方程组的解析解和数值解Word文件下载.docx》由会员分享,可在线阅读,更多相关《微分方程组的解析解和数值解Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
分别用函数ode45和ode15s计算求解,分别画出图形,图形分别标注标题。
4、求解微分方程
先求解析解,在[0,1]上作图;
再用ode45求数值解(作图的图形用“o”表示),在同一副图中作图进行比较,用不同的颜色表示。
三.上机方法与步骤
给出相应的问题分析及求解方法,并写出Matlab程序,并有上机程序显示截图。
题1:
直接用命令dsolve求解出微分方程的通解。
Matlab程序:
dsolve('
D3y-D2y-3*Dy+2*y'
'
x'
)
题2:
将微分方程组改写为
,再用命令dsolve求解微分方程的通解。
建立timu2.m如下:
[x,y]=dsolve('
Dx=5*cos(t)+2*exp(-2*t)-x-y'
Dy=-5*cos(t)+2*exp(-2*t)+x-y'
x(0)=2,y(0)=0'
t'
x=simple(x)
y=simple(y)
题3:
由于所给的微分方程为一阶微分方程,则直接用函数ode45和ode15s求解微分方程的数值解,具体程序如下:
(1)Matlab程序:
建立M文件fun2.m,如下:
functiondy=fun2(t,y);
dy=zeros(2,1);
dy
(1)=0.04*(1-y
(1))-(1-y
(2))*y
(1)+0.0001*((1-y
(2))^2);
dy
(2)=-10000*y
(1)+3000*((1-y
(2))^2);
取t0=0,tf=100,建立程序timu32.m如下:
t0=0;
tf=100;
[T,Y]=ode45('
fun2'
[0100],[11]);
plot(T,Y(:
1),'
+'
T,Y(:
2),'
*'
);
title('
ode45图形'
(2)Matlab程序:
建立M文件fun1.m,如下:
functiondy=fun1(t,y);
取t0=0,tf=100,建立程序timu3.m如下:
[T,Y]=ode15s('
fun1'
ode15s图形'
题4:
(1)先建立程序timu41.m如下:
y=dsolve('
Dy=-y+t+1'
y(0)=1'
截图如下:
作图:
建立程序tuxing41.m如下:
ezplot('
t+1/exp(t)'
[0,1])
(2)先建立M文件fun3.m,如下:
functiondy=fun3(t,y)
dy=zeros(1,1);
dy
(1)=-y
(1)+t+1;
再取t0=0,tf=1,建立程序tuxing42.m如下:
tf=1;
fun3'
[01],[1]);
plot(T,Y,'
ro'
比较图'
t=0:
0.1:
1;
y=t+1./exp(t);
holdon
plot(t,y,'
b'
四.上机结果
题1结果为:
ans=
C4*exp(2*x)+C2*exp(x*(5^(1/2)/2-1/2))+C3/exp(x*(5^(1/2)/2+1/2))
题2结果为:
x=
4*cos(t)-2/exp(2*t)+3*sin(t)-(2*sin(t))/exp(t)
y=
sin(t)-2*cos(t)+(2*cos(t))/exp(t)
题3结果为:
题4结果为:
解析解为:
y=
t+1/exp(t)
作图如下: