减振器屋
标题:
频响函数计算程序
[打印本页]
作者:
shock
时间:
2009-2-12 08:19
标题:
频响函数计算程序
m=220;k=100000;
af=0.5;bt=0.02; %比例阻尼系数
M=[m 0 0;0 m 0;0 0 m]; %质量矩阵
K=[2*k -k 0;-k 2*k -k;0 -k k]; %刚度矩阵
[v,w]=eig(inv(M)*K); %求特征向量和特征值
w=sqrt(w);
fn=diag(w)/(2*pi); %无阻尼固有频率
C=af*M+bt*K; %阻尼矩阵
zeta=(v'*M*v)\(v'*C*v)/2/w; %阻尼比
zeta=diag(zeta);
w=diag(w);
wd=sqrt(diag(eye(3))-zeta.*zeta).*w; %有阻尼固有频率
fnd=wd/(2*pi);
v=v./v(1,1); %按v(1,1)归一化
Mr=diag(v'*M*v); %模态质量
Kr=diag(v'*K*v); %模态刚度
Cr=diag(v'*C*v); %模态阻尼
i=1;
for k=1:1:3
for wx=0.1:0.1:100
R(i,k)=(1-(w(k)./wx).^2)/(Mr(k).*((1-(w(k)./wx).^2).^2+(2*(zeta(k).*w(k))./wx).^2));
I(i,k)=(2*(zeta(k).*w(k))./wx)./(Mr(k).*((1-(w(k)./wx).^2).^2+(2*(zeta(k).*w(k))./wx).^2));
Y(i,k)=R(i,k)+j.*I(i,k);
i=i+1;
end
i=1;
end
i=1:1:1000;
H1(i)=Y(i,1).*(v(1,1).^2)+Y(i,2).*(v(1,2).^2)+Y(i,3).*(v(1,3).^2);
H2(i)=Y(i,1).*(v(2,1).*v(1,1))+Y(i,2).*(v(2,2).*v(1,2))+Y(i,3).*(v(2,3).*v(1,3));
H3(i)=Y(i,1).*(v(3,1).*v(1,1))+Y(i,2).*(v(3,2).*v(1,2))+Y(i,3).*(v(3,3).*v(1,3));
wx=i/10;
subplot(211)
plot(wx,abs(H1))
title('H11幅频特性曲线')
subplot(212)
plot(wx,180*angle(H1)/pi)
title('H11相频特性曲线')
figure,subplot(211)
plot(wx,real(H1))
title('H11实频特性曲线')
subplot(212)
plot(wx,imag(H1))
title('H11虚频特性曲线')
figure,plot(real(H1),imag(H1))
title('H11导纳圆Nyquist Circle')
要求画出第一列频响函数的加速度幅频、相频、实频、虚频、Nyquist圆
麻烦各位看看程序有什么问题,如何改进?
欢迎光临 减振器屋 (http://jzq5.cn/)
Powered by Discuz! X3.2