作业帮 > 综合 > 作业

matlab大神请赐教 解微分方程组

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/27 19:18:29
matlab大神请赐教 解微分方程组
小弟对matlab编程不甚了解,请各位不吝赐教!感激不尽!
x=[x(1);x(2);x(3);x(4);x(5)]
满足
dx(1)/dt=a1+b1*(x(2)-x(1))
dx(2)/dt=c1*(x(1)-x(2))+c2*(x(3)-x(2))
dx(3)/dt=a2+b2*(x(2)+x(4)-2*x(3))
dx(4)/dt=c1*(x(5)-x(4))+c2*(x(3)-x(4))
dx(5)/dt=a1+b1*(x(4)-x(5))
其中
a1=-22.5000;
a2=18
b1=0.1588
b2=0.0623
c1=7.0285
c2=2.8463
要求输出x与时间t的关系曲线.
matlab大神请赐教 解微分方程组
function dxdt=weifenequation(t,x)
a1=-22.5000;
a2=18;
b1=0.1588;
b2=0.0623;
c1=7.0285;
c2=2.8463;
dxdt=zeros(5,1);
dxdt(1)=a1+b1*(x(2)-x(1));
dxdt(2)=c1*(x(1)-x(2))+c2*(x(3)-x(2));
dxdt(3)=a2+b2*(x(2)+x(4)-2*x(3));
dxdt(4)=c1*(x(5)-x(4))+c2*(x(3)-x(4));
dxdt(5)=a1+b1*(x(4)-x(5));
%以上保存在weifenequation.m文件
[t,x]=ode45(@weifenequation,[0,20],[1,1,1,1,1]);
plot(t,x(:,1),'b',t,x(:,2),'r',t,x(:,3),'g',t,x(:,4),'p',t,x(:,5),'bl')%绘图
legend('x(:,1)','x(:,2)','x(:,3)','x(:,4)','x(:,5)')