|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
微分方程为:
dy=[x(3)
x(4)
0.1*sin(10*t)-2.5*x(3)+1.5*x(4)-x(1)+0.5*x(2)
0.15*sin(10*t)-2.5*x(4)+1.5*x(3)-x(2)+0.5*x(1)];
这是我做的程序
function poincare(tstop)
>> y0=[0;0;0;0];
>> tspan=[0:1:50];
>> [t,y]=ode45('appollo',tspan,y0);
>> count=find(t>15);
>> y=y(count,:);
>> n=length(y(:,1));
>> for i=2:n-1
if y(i-1,1)+eps<y(i,1) && y(i,1)>y(i+1,1)+eps
plot(y(i,1),y(i,3),'.');
hold on
end
end
>> xlabel('y1');ylabel('y3');
>> n=length(y(:,2));
>> for i=2:n-1
if y(i-1,2)+eps<y(i,2) && y(i,2)>y(i+1,2)+eps
plot(y(i,2),y(i,4),'.');
hold on
end
end
>> xlabel('y2');ylabel('y4');
但是出的图不太正确,请大家帮忙修改一个 |
|