数学建模社区-数学中国
标题:
编程小白求助,用matlab解微分方程组
[打印本页]
作者:
无聊的人Raven
时间:
2014-8-25 11:26
标题:
编程小白求助,用matlab解微分方程组
(dy_1)/dt=-3y_2
(dy_2)/dt=3y_2-y_2 *y_1
(dy_3)/dt=y_2* y_1
三个初值分别是(1-(1/(7*(10^9))),1/7*(10^9)和0,y1+y2+y3=1
下面是程序,第一次编程啊 不知道怎么破
function dy=vdp1003(t,y)
dy=zeros(3,1)
dy(1)=-3*y(2)
dy(2)=3*y(2)-y(1)*y(1);
dy(3)=y(1)*y(2);
[~,Y]=ode45('right',[0 100],[(1-(1/(7*(10^9))) 1/7*(10^9) 0]);
plot(~,Y(:,1),'-',~,Y(:,2),'*',~,Y(:,3),'+')
作者:
madio
时间:
2014-8-25 13:07
function dy=vdp1003(t,y)
dy=zeros(3,1);
dy(1)=-3*y(2);
dy(2)=3*y(2)-y(2)*y(1);
dy(3)=y(1)*y(2);
[x,Y]=ode45(@vdp1003,[0 100],[1-(1/(7*(10^9))),1/7*(10^9),0]);
plot(x,Y(:,1),'-',x,Y(:,2),'*',x,Y(:,3),'+')
复制代码
作者:
madio
时间:
2014-8-25 13:07
有一个警告提示,应该是初值的数太小了
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5