求用matlab 做数学实验报告! 1求微分方程特解。 d^2y/dx^2+4dy/dx+29y=0 y(0)=0,y'(0)=15

2求微分方程的通解
y''-2y'+5y=sin2x
3解微分方程组
y1'=y2y3
y2'=-y1y3
y3'=-0.51y1y2
y1(0)=0,y2(0)=1,y3(0)=1

对于第一个问题可以直接采用函数求解的方法

y1=dsolve('D2y+4*Dy+29*y=0','Dy(0)=15',' y(0)=0','x')

y1=(3*sin(5*x))/exp(2*x)

y2=dsolve('D2y-2*Dy+5*y=sin(2*x)')

y2=sin(2*x)/5 + C5*cos(2*t)*exp(t) + C6*sin(2*t)*exp(t)

对于第三个问题,那么不能求出通解,所以只能借助于数值求解的方法来求解,数值求解采用ode45函数来求解的方法,具体过程如下:

先编写待求解的微分方程函数,打开编辑器:

%编写要求解的微分方程组函数表达式!

function dy = rigid(t,y)

dy = zeros(3,1);    % 定义数组函数!

dy(1) = y(2) * y(3);%第一个微分方程;

dy(2) = -y(1) * y(3);%第二个微分方程;

dy(3) = -0.51 * y(1) * y(2);%第三个微分方程;

并以默认的文件名保存函数文件!

编写命令行,对微分方程求解:

options = odeset('RelTol',1e-4,'AbsTol',[1e-4 1e-4 1e-5]);%定义求解选项包含精度项!

[T,Y] = ode45(@rigid,[0 12],[0 1 1],options);%采用ode45求解方程组,并把求解结果保存到数组T,Y中!

plot(T,Y(:,1),'r-',T,Y(:,2),'b-.',T,Y(:,3),'k.')%作图!

grid minor%网格化!

运行上面的代码就得到函数的解:

附上图片!

如果有什么问题可以问我!!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-20
y=dsolve('D2y+4*Dy+29*y=0','Dy(0)=15',' y(0)=0','x')

y=dsolve('D2y-2*Dy+5*y=sin(2*x)')

S=dsolve('Dy1=y2*y3','Dy2=-y1*y3','Dy3=-0.51*y1*y2','y1(0)=0','y2(0)=1','y3(0)=1')

第三个好像没有解析解
相似回答