|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
MATLAB里运行一下程序:
tspan=[0 50];
y0=zeros(6,1);
[t,y]=ode45(@zcx3fun,tspan,y0);
plot(t,y);grid;
hold on;
%%
函数.m文件:
function dy=zcx3fun(t,y)
%质量矩阵
M=eye(3,3);
%刚度矩阵
K=[4,-2,0;-2,3,1;0,1,3];
%阻尼矩阵
C=[8,-4,0;-4,6,3;0,3,3];
%%
%激振力矩阵
F=[sin(3*t);0;0]
%函数定义
x=y(1:3);
dx=y(4:6);
dy=[x;M\(F-K*x-C*dx)];
这样的代码,为什么运行结果出来后工作表中变量数值如下:
y(:,1) y(:,2) y(:,3) y(:,4) y(:,5) y(:,6)
0 0 0 0.00027583 5.044e-006 -4.5144e-008
0 0 0 0.00060967 1.6558e-005 -2.5499e-007
0 0 0 0.0010649 3.8314e-005 -7.9677e-007
0 0 0 0.0016351 7.3123e-005 -1.8962e-006
0 0 0 0.0023141 0.00012347 -3.8438e-006
为什么前面应该是位移,怎么全为0?
后面速度为正余弦,跟解析解接近呢?
??、、???感觉我自己是不是有点理解错误了呢,请高手帮我解答下,谢谢!
|
|