振型矩阵与正则振型矩阵

%由振型矩阵mode_vec(特征列向量组成)、质量矩阵M求正则振型矩阵mode_vec_n
function mode_vec_n= mode_n(mode_vec,M)
M_p=mode_vec'*M*mode_vec;  %求主质量阵
n=length(mode_vec);
mode_vec_n=zeros(n);
for i=1:n
     mode_vec_n(:,i)=mode_vec(:,i)/sqrt(M_p(i,i));
end
%mode_vec_n'*M*mode_vec_n=I
%mode_vec_n^(-1)=mode_vec_n'*M
%I*q_n"+[w_n^2]*q_n=[0]
%x=mode_vec_n*q_n
%正则坐标 q_n=mode_vec_n^(-1) *x 

 

%%%%%%%%---------------------------------------------------------------------------------------------------

%SH760小轿车空载主要参数
clear;
m=1340;
a=1.54;
b=1.29;
l=a+b;
Ic=2395; %绕质心的转动惯量
rou=sqrt(Ic/m);
k1=40*1000;
k2=44*1000;
M=[m*(b^2+rou^2)/l^2,m*(a*b-rou^2)/l^2;m*(a*b-rou^2)/l^2,m*(a^2+rou^2)/l^2];
K=[k1,0;0,k2];
 
%用matlab特征值分解法求主振型------------------------------------------------
 
[eig_vec,eig_val] = eig(inv(M)*K);

 

>> mode_vec_n=mode_n(eig_vec,M)

mode_vec_n =

    0.0383    0.0163
   -0.0167    0.0341

>> mode_vec_n'*M*mode_vec_n

ans =

    1.0000   -0.0000
         0    1.0000

>> mode_vec_n'*K*mode_vec_n

ans =

   71.0537         0
         0   61.8142

>> eig_val

eig_val =

   71.0537         0
         0   61.8142

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值