我要加入 登录
声振论坛 返回首页

vibraman的个人空间 http://home.vibunion.com/?5962 [收藏] [复制] [分享] [RSS]

日志

多自由度阻尼系统固有振型的MATLAB求解程序

已有 585 次阅读2006-11-28 22:03

天气: 晴朗
心情: 高兴

多自由度阻尼系统固有振型的MATLAB求解程序

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);

author:yanyongju

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 我要加入

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-6-4 06:46 , Processed in 0.030717 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部