基于Matlab的多自由度系统固有频率及振型计算

可参考文涛,基于Matlab语言的多自由度振动系统的固有频率及主振型计算分析,2007

 

对于无阻尼系统

[VEC,VAL]=eig(inv(A)*K)

 

对于有阻尼系统,参考振动论坛计算程序

输入MDK

function [v,w,zeta]=vbr_sf(m,d,k)

%vbr_sf  vbr_sf(m,d,k)

%        [v,w,zeta]=vbr4(m,d,k)

%        function vbr_sf finds the mode shapes and natural frequencies of

%        a linear second order matrix equation.  有阻尼二阶矩阵方程

%        [v,w]=vbr_sf(m,k) finds the mode shapes and natural frequencies

%        for the undamped case.

if nargin==2

  k=d;

  [v,w]=eig(m\k);

  w=sqrt(w);

end

if nargin==3

  if norm(d/m*k-k/m*d) < 1e-8*norm(k/m*d)

    %disp('Damping is proportional, eigenvectors are real.')

    [v,w]=eig(m\k);

    w=sqrt(w);

    zeta=(v'*m*v)\(v'*d*v)/2/w;

   else

    %disp('Damping is non-proportional, eigenvectors are complex.')

    a=[0*k eye(length(k));-m\k -m\d];

    [v,w1]=eig(a);

    w=abs(w1);

    zeta=-real(w1)/w;

  end

end

w=diag(w);zeta=diag(zeta);

 

    振动系统的特性包括固有特性,固有特性一般指的是没有激励对应数学齐次方程的特征,也就是特征解,包括特征值(物理上常称固有频率)和特征向量(物理上常称振型)。固有特性是振动系统的一种自身固有特征,也可以这么理解,当系统以某个固有频率振动时,振动的振型一定是对应的固有振型。

   自由振动准确理解是在初始激扰(初始力或初位移)作用下,激扰撤销后系统的振动,对于线性无阻尼系统,由于系统存在正交性,若初始激扰是单频的,那么激励撤销后,系统仍然按激励的频率振动下去,振动响应是所有固有振型的叠加,仅仅当激励的频率等于某个固有频率时,振动的振响应就是对应的振型的若干倍;对于线性有阻尼系统,差别是振动的振响应会逐渐减小... ..

    如果激励是多频率成分,问题要复杂一些.

响应是振型的叠加,频率不存在叠加... ..

系统的固有特性与惯性、弹性和耗散等有关,主要是惯性和弹性,惯性实际工程中通常不会有什么变化,而弹性相对比较容易发生变化,材料常数、剖面模数(断面出现裂纹、断裂. . .)、边界刚度等等发生变化都会显现系统变形刚度发生变化,导致系统固有频率随之发生变化。

(转自举聚)

转载于:https://www.cnblogs.com/hyb221512/p/10172708.html

你可能感兴趣的:(基于Matlab的多自由度系统固有频率及振型计算)