|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
本帖最后由 huazi071783 于 2011-3-7 16:23 编辑
用荣格-库塔发解结构振动微分方程,Mx''+cx'+kx=F(t),我设激振力为正弦周期力F(t)=f*cos(omeg*t),变化后:x'=y;dy=-(c./m)*y-(k./m)*x+F(t);求解后画出结果的相轨迹图,但是得到的结果矩阵y的第一列全为零,第二列是周期值看似正确,为什么第一列为零呢?这结果不对啊!不知道什么原因,请高手解答,谢谢!
clear;clc
global m omeg k c f
m=0.5; %质量
c=0.2; %阻尼
k=1; %刚度
omeg=6.3;
f=5;
x0=[0;0]; %初始值
tspan=[0:0.01:100];
[t,y]=ode45('vibration',tspan,x0); %y为结果矩阵
plotmatrix (y); figure(gcf)
figure(2)
plot(y(:,1),y(:,2)) %相轨迹图
调用结构振动函数
function dy=vibration(t,y)
global m omeg k c f
dy=[y(1);-(c./m)*y(2)-(k./m)*y(1)+f*cos(omeg*t)]; |
|