用matlab求解常系数微分方程组并画出图像

哪位大神帮我用matlab解以下微分方程组并作出图像麻烦给出语句万分感谢!dx1/dt=x1*(1-x1/150000-0.5*x2/30000)dx2/dt=x2*(-... 哪位大神帮我用matlab解以下微分方程组并作出图像
麻烦给出语句
万分感谢!

dx1/dt=x1*(1-x1/150000-0.5*x2/30000)
dx2/dt=x2*(-1-x2/30000+0.5*x1/150000-2*x3/2200)
dx3/dt=x3*(-1-x3/2200+2*x2/30000)

x1(0)=121000
x2(0)=27000
x3(0)=2000
展开
时雨自然同5
2011-08-21 · TA获得超过950个赞
知道小有建树答主
回答量:1071
采纳率:0%
帮助的人:468万
展开全部

1定义函数:

function y=fun(t,x)

y=zeros(3,1);

x1=x(1);x2=x(2);x3=x(3);

y(1)=x1*(1-x1/150000-0.5*x2/30000);

y(2)=x2*(-1-x2/30000+0.5*x1/150000-2*x3/2200);

y(3)=x3*(-1-x3/2200+2*x2/30000);

2解方程并画图

[t,x]=ode23(@fun,[0,1],[121000,27000,2000]);

hold on

plot(t,x(:,1))

plot(t,x(:,2))

plot(t,x(:,3))

3结果

ckyz111
2011-08-21 · TA获得超过304个赞
知道小有建树答主
回答量:69
采纳率:0%
帮助的人:61.9万
展开全部
>> f=@(t,x)[x(1)*(1-x(1)/150000-0.5*x(2)/30000); ...
x(2)*(-1-x(2)/30000+0.5*x(1)/150000-2*x(3)/2200); ...
x(3)*(-1-x(3)/2200+2*x(2)/30000)];
t_final=100;
x0=[121000;27000;2000];
[t,x]=ode45(f,[0 t_final],x0);
plot(t,x),figure;
plot3(x(:,1),x(:,2),x(:,3));
t_final是设定的仿真终止时间,可以自己修改其值,即题中t的变化
,第一个绘图绘制出系统各个状态和时间关系的二维曲线,第二个绘图
绘制出三个状态的相空间曲线。如果要显示出对应的t值与对应的x值,用
disp([t,x])
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
惠醉镶06R
2011-08-21
知道答主
回答量:10
采纳率:0%
帮助的人:4.5万
展开全部
利用ode45函数,基本上所有的MATLAB参考书上都有
http://zhidao.baidu.com/question/111304564.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式