matlab提问:请问高手,我这个程序哪儿有问题?运行缓慢.

[复制链接]
查看11 | 回复1 | 2008-11-9 14:29:06 | 显示全部楼层 |阅读模式
function hahaha
global omega2 omega3 m13 m32
global gama deta eta F mus deta1 deta2 deta3
omega2=3.2255; omega3=3.6863; m13=100; m32=0.0167;
gama=0.15; deta=0.75; eta=0.000015; F=7.5; mus=0.4; deta1=0; deta2=0; deta3=0;
y0=[-3 -0.05 1.5 -0.3 82 -2.3] ;
t0=[-10:0.01:10];
[t,y]=ode45(@cell,t0,y0);
if y(6)>y(2)+1
plot(y(:,5),y(:,6),'-r');
hold on;
else
plot(y(:,5),y(:,6),'--b');
end
xlabel('y5');ylabel('y6');figure;
if y(6)>y(2)+1
plot(y(:,1),y(:,2),'-r');
hold on;
else
plot(y(:,1),y(:,2),'--b');
end
xlabel('y1');ylabel('y2')figure;
if y(6)>y(2)+1
plot3(y(:,1),y(:,3),y(:,5),'-r');
hold on;
else
plot3(y(:,1),y(:,3),y(:,5),'--b');
end
xlabel('y1');ylabel('y3');zlabel('y5');figure;
if y(6)>y(2)+1
plot3(y(:,2),y(:,4),y(:,6),'-r');
hold on;
else
plot3(y(:,2),y(:,4),y(:,6),'--b');
end
xlabel('y2');ylabel('y4');zlabel('y6');figure;
plot(t,y(:,1),'-r');
xlabel('t');ylabel('y1')figure;
plot(t,y(:,3),'-r');
xlabel('t');ylabel('y3');figure;
plot(t,y(:,1),'-r');
xlabel('t');ylabel('y5');
function dy=cell(t,y)
global omega2 omega3 m13 m32;
global gama deta eta F mus deta1 deta2 deta3;
f(1)=-F*((1-deta)/(1+gama*(y(6)-y(2)-1))+deta+eta*(y(6)-y(2)-1)^2);
f(2)=F*((1-deta)/(1-gama*(y(6)-y(2)-1))+deta+eta*(y(6)-y(2)-1)^2);
dy(1)=(y(6)-y(2)-1>0)*y(2)+(y(6)-y(2)-10)*(-y(1)-deta1*y(2)-f(1))+(y(6)-y(2)-10)*y(4)+(y(6)-y(2)-10)*(-omega2*y(3)+m32*omega3*y(5)-(deta2+m32*deta3)*y(4)+m32*deta3*y(6))+(y(6)-y(2)-10)*y(6)+(y(6)-y(2)-10)*(-omega3*y(5)+omega3*y(3)+deta3*y(4)-deta3*y(6)+m13*f(1))+(y(6)-y(2)-1<0)*(-omega3*y(5)+omega3*y(3)+deta3*y(4)-deta3*y(6)+m13*f(2));
dy=[dy(1);dy(2);dy(3);dy(4);dy(5);dy(6)];

回复

使用道具 举报

千问 | 2008-11-9 14:29:06 | 显示全部楼层
每行的开头都加上百分号,绝对快很多...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行