振动特性matlab,振动理论基础知识:振动系统固有特性的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 andnatural frequencies

% ofa linear secondorder 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) <>

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值