|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
各位好!我做了一个关于但自由度的振动响应及相图程序。它是在三种阻尼情况下运行的,但只出来阻尼为0.1的,效果也不好。另俩个没有显示出来,请大家帮忙看看原因。公式见附件。
function xdot=free1(t,x,dump,zeta,alpha)
xdot=[x(2);-2*zeta*x(2)-x(1)-alpha*x(1)^3];
zeat=[0.1 1.0 5.0];alpha=[0 0 0];
tspan=linspace(0,40,400);
for i=1:3
[t,x]=ode45('free1',tspan,[1 1]',[],zeta(i),alpha(i));
subplot(2,1,1);
plot(t,x(:,1));hold on
subplot(2,1,2);
plot(x(:,1),x(:,2));
hold on
end
subplot(2,1,1)
xlabel('time(\tau)');
ylabel('displacement x(\tau)');
axis([0 40 -2.0 2.0]);
text(2.7 ,-1.3,'\zeta=0.1');
text(-3.6,-0.1,'1.0');
text(3.6,1.0,'5.0');
subplot(2,1,2)
xlabel('displacement');
ylabel('velocity');
title('phase portant');
axis([-2.0 2.0 -2.0 2.0]);
text([0.7, -1.25,'\zeta=0.1']);
text(0.8 ,-0.65,'1.0');text(0.8,0.1,'5.0'); |
|