本帖最后由 VibInfo 于 2016-4-25 16:02 编辑
以下是引用feifeifool在2006-6-9 9:47:16的发言:
需要把D开方,不过你这个系统应该是半正定系统,因为第一阶近似为0,尽管小于零。
下面是程序:
clc;clear;
% J=[30.1 355.3 211.0 398.3 398.3] %单位:Kg*m2
% K=[39.95 13.48 4.56 4.56]%单位:1.0e6 N*m/rad
J=[30.1 0 0 0 0;0 355.3 0 0 0;0 0 211.0 0 0;0 0 0 398.3 0;0 0 0 0 389.3];
K=1E6*[39.95 -39.95 0 0 0;-39.95 53.43 -13.48 0 0;0 -13.48 22.6 -4.56 -4.56;0 0 -4.56 4.56 0;0 0 -4.56 0 4.56];
[V,D]=eig(K,J);
duijiaoyuansu=sort(diag(D));
af=duijiaoyuansu(find(duijiaoyuansu>=eps));
af=sqrt(af);
frequency=af/2/pi;
运行结果:
frequency =
17.1263
22.4193
58.1738
191.1761
这个结果应该是对的。
不好意思,又发现一个问题:
发现J、K 的单位有多个。
如果J的单位为kgm2,K的单位为Nm,那上面计算出来的af还要除以2pi才能求出频率(Hz)吗?
轴 K=(piGD4)/32L G-剪切模量 D-直径 L-长度
谢谢
[此贴子已经被作者于2006-6-14 16:33:31编辑过]
|