多自由度 自由振动 MATLAB 仿真
刚刚做的振动初步研究多自由度无阻尼 系统自由振动分析
M1=1kgM2=10kgk1=10N/mk2=100N/m
初始条件:x(0)=0.05mx’(0)=0 m/sy(0)=0 my’(0)=0m/s;
clear
M= %质量矩阵
K= % 刚度矩阵
KM=inv(M)*K %动力矩阵
=eig(KM); %求解特征值 和特征向量
P1=P(1,:);
P2=P(2,:);
Mo=; %模态
f=sqrt(W2)/(2*pi) %固有频率
A=;
B=;
C=;
D=0;
sys=ss(A,B,C,D); %状态方程
t=0:0.01:12;
=initial(sys,,t); %初始条件仿真
subplot(211)
plot(t,y);
Y1=*y';
N=1024;
w=fft(Y1,N); %对输出信号 频谱分析
subplot(212)
plot(abs(w));
经计算结果如下:
固有频率W^2 =
7.2984 0
0 13.7016
振型 Mod=
1.0000 1.0000
0.2702 -0.3702
M1=1kgM2=2Kgk1=10N/mk2=40N/m
初始条件:(1) X(0)=0.028078 X’(0)=0Y(0)=0.1Y’(0)=0
(2) X(0)=0.17808 X’(0)=0Y(0)=-0.1Y’(0)=0
固有频率W^2 =
7.1922 0
0 27.8078
振型Mo =
1.0000 1.0000
0.2808 -1.7808
[ 本帖最后由 yejet 于 2006-11-7 15:52 编辑 ]
第二个系统的程序
clearM= %质量矩阵
K= % 刚度矩阵
KM=inv(M)*K %动力矩阵
=eig(KM); %求解特征值 和特征向量
P1=P(1,:);
P2=P(2,:);
Mo=; %模态
f=sqrt(W2)/(2*pi) %固有频率
A=;
B=;
C=;
D=0;
sys=ss(A,B,C,D); %状态方程
t=0:0.01:10;
=initial(sys,,t); %初始条件仿真 (只有一阶模态)
=initial(sys,[-0.1 0 0.17808 0],t);% 只有二阶模态的初始条件
=initial(sys,,t); % 一般条件
subplot(311);
plot(t1,y1);
subplot(312);
plot(t2,y2);
subplot(313);
plot(t3,y3);
[ 本帖最后由 yejet 于 2006-11-7 15:52 编辑 ] 楼主,有个问题呀.什么是动力矩阵,这种求固有频率的方法能详细说说吗>?谢谢! 原帖由 luckromeo 于 2006-11-9 00:06 发表
楼主,有个问题呀.什么是动力矩阵,这种求固有频率的方法能详细说说吗>?谢谢!
动力矩阵:
inv(M)*K
clough的书上有说。 原帖由 linqus 于 2006-11-9 11:37 发表
动力矩阵:
inv(M)*K
clough的书上有说。
其实这两行:
KM=inv(M)*K %动力矩阵
=eig(KM); %求解特征值 和特征向量
可以通过一个行来搞定:
=eig(K,M) ; %也可以直接求广义特征值 和特征向量
[ 本帖最后由 junstin 于 2006-11-22 10:47 编辑 ] 给出的程序是两个自由度吧
要是多个自由度呢
振型应该怎么求啊???????? 上面楼主我发现你的一个错误,系统矩阵和动力矩阵之间存在互逆
KM=inv(M)*K %系统矩阵
inv(K)*M %动力矩阵
你正好掉了个头,摘自师汉民 机械振动系统 能给出具体算式嘛,程序不是很看的懂 A=;
B=;
C=;
D=0;
sys=ss(A,B,C,D); %状态方程
状态方程我不能理解啊,另外initial的命令能不能详细介绍一下,另外楼主能不能介绍一下有关振动在应用matlab的方法获推荐一些资料,我才疏学浅,以前学matlab都是结合信号处理学的,而振动的很多概念也很难理解,没想到这两个结合了起来,开了眼界,希望楼主能在程序中多一些注释,或者在程序前后多一些说明,照顾一下这些后进者,谢谢!
用你的程序仿真后,怎么结果和你的结果不一致啊?
呵呵,我仿真后的结果和你楼主的不一样,不知道为何?第一个算例的频率是
f =
0.4300 0
0 0.5891
第二个算例的频率是
f =
0.4268 0
0 0.8393
答 13# 感谢大家支持
由刚度矩阵 所求的 特征值为 Wn^2 (固有频率为 叫频率 单位为 弧度/秒)进行 开方 得到为Wn (固有频率)除以 2PI即 单位为 HZ所以 会出现 上述值进行频谱分析时 间隔频率为 采样频率/采样点数
答 13#
由刚度矩阵 所求的 特征值为 Wn^2 (固有频率为 叫频率 单位为 弧度/秒)进行 开方 得到为Wn (固有频率)除以 2PI即 单位为 HZ所以 会出现 上述值进行频谱分析时 间隔频率为 采样频率/采样点数 如果是四自由度的系统一下部分要怎么设置呢?我看了帮助,感觉不是很懂,能不能具体讲一下ss?
A=;
B=;
C=;
D=0;
sys=ss(A,B,C,D); %状态方程
回复 #14 wendyrong 的帖子
对于任何 一个多自由度 振动系统 首先 就是要得出 系统的动力学 方程]即 得到 质量矩阵M 刚度矩阵 K
关于 求相应仿真部分 A,B,C,D 的求得看一下现代控制论部分 楼主分析的很好,值得学习