%%%%%%%%%%%%% 赵永辉《气动弹性力学与控制》中P-K法 %%%%%%%%%%%%%%%%%
clear
clc
% %%%%%%%%%%%%参数设置
mu=20;
a=-0.4;
% b=0.127;
xapha=0.03;
rapha=sqrt(0.25);
% wh=55.9;
% wapha=64.1;
% Rw=wh/wapha;
Rw=0.6;
V=2:0.01:4;
n=length(V);
for j=1:n
Vnon=V(j);
% Vnon=1.0;
% [A]{q}=z[B]{q};p^2M{q}=(V^2*B-K){q}
K=[Rw^2 0;0 rapha^2];
M=[1 xapha;xapha rapha^2];
omiga=sqrt(eig(K,M));
% omiga=sort(omiga);
% k10=omiga(1)/Vnon;
% k20=omiga(2)/Vnon;
if omiga(1)<omiga(2)
k10=omiga(1)/Vnon;
k20=omiga(2)/Vnon;
else
k10=omiga(2)/Vnon;
k20=omiga(1)/Vnon;
end
k11=1;
k=0;
while abs(k11-k)>1e-6
k=k10;
if k<0.5
Fk=1-0.165/(1+0.00207025/k^2)-0.335/(1+0.09/k^2);
Gk=-1/k*(0.0075075/(1+0.00207025/k^2)+0.1005/(1+0.09/k^2));
else
Fk=1-0.165/(1+0.001681/k^2)-0.335/(1+0.1024/k^2);
Gk=-1/k*(0.006765/(1+0.001681/k^2)+0.1072/(1+0.1024/k^2));
end
Lh=1-1i*2/k*(Fk+1i*Gk);
Lapha=1/2-1i*1/k*(1+2*Fk+1i*Gk)-2/k^2*(Fk+1i*Gk);
Mh=1/2;
Mapha=3/8-1i*1/k;
B=k^2/mu*[Lh Lapha-(0.5+a)*Lh;Mh-(0.5+a)*Lh Mapha-(0.5+a)*(Lapha+Mh)+(0.5+a)^2*Lh];
z=eig((Vnon)^2*B-K,M);
p=-sqrt(z);
if imag(p(1))<0
p(1)=-p(1);
end
if imag(p(2))<0
p(2)=-p(2);
end
% if abs(imag(p(1))-omiga(1))<abs(imag(p(2))-omiga(1))
% k11=imag(p(1))/Vnon;
% else
% k11=imag(p(2))/Vnon;
% end
% [P,I]=sort(imag(p));
% PP=[p(I(1));p(I(2))];
%
% k11=imag(PP(1))/Vnon;
k11=min(imag(p(1)),imag(p(2)))/Vnon;
k10=k11;
end
if imag(p(1))<imag(p(2))
gama1(j)=real(p(1))/imag(p(1));
g1(j)=2*gama1(j);
w1(j)=imag(p(1));
else
gama1(j)=real(p(2))/imag(p(2));
g1(j)=2*gama1(j);
w1(j)=imag(p(2));
end
%
% gama1(j)=real(PP(1))/imag(PP(1));
% g1(j)=2*gama1(j);
% w1(j)=imag(PP(1));
%%%%%%%%%%%%%%%%%
k21=1;
k=0;
while abs(k21-k)>1e-6
k=k20;
if k<0.5
Fk=1-0.165/(1+0.00207025/k^2)-0.335/(1+0.09/k^2);
Gk=-1/k*(0.0075075/(1+0.00207025/k^2)+0.1005/(1+0.09/k^2));
else
Fk=1-0.165/(1+0.001681/k^2)-0.335/(1+0.1024/k^2);
Gk=-1/k*(0.006765/(1+0.001681/k^2)+0.1072/(1+0.1024/k^2));
end
Lh=1-1i*2/k*(Fk+1i*Gk);
Lapha=1/2-1i*1/k*(1+2*Fk+1i*Gk)-2/k^2*(Fk+1i*Gk);
Mh=1/2;
Mapha=3/8-1i*1/k;
B=k^2/mu*[Lh Lapha-(0.5+a)*Lh;Mh-(0.5+a)*Lh Mapha-(0.5+a)*(Lapha+Mh)+(0.5+a)^2*Lh];
z=eig((Vnon)^2*B-K,M);
p=-sqrt(z);
% if imag(p(1))*imag(p(2))<0
if imag(p(1))<0
p(1)=-p(1);
end
if imag(p(2))<0
p(2)=-p(2);
end
% if abs(imag(p(1))-omiga(2))<abs(imag(p(2))-omiga(2))
% k21=imag(p(1))/Vnon;
% else
% k21=imag(p(2))/Vnon;
% end
% [P,I]=sort(imag(p));
% PP=[p(I(1));p(I(2))];
% k21=imag(PP(2))/Vnon;
k21=max(imag(p(1)),imag(p(2)))/Vnon;
k20=k21;
end
if imag(p(1))<imag(p(2))
gama2(j)=real(p(2))/imag(p(2));
g2(j)=2*gama2(j);
w2(j)=imag(p(2));
else
gama2(j)=real(p(1))/imag(p(1));
g2(j)=2*gama2(j);
w2(j)=imag(p(1));
end
%
end
subplot(2,1,1)
plot(V/sqrt(mu),g1,'o-')
hold on
plot(V/sqrt(mu),g2,'ro-')
grid on
subplot(2,1,2)
plot(V/sqrt(mu),w1,'o-');
hold on
plot(V/sqrt(mu),w2,'ro-')
grid on
% plot(V*wapha*b,g2,'ro-')
pk.zip_Chatter_PK法_颤振pk_颤振分析pk法_颤振计算pk法
版权申诉
5星 · 超过95%的资源 74 浏览量
2022-07-15
11:01:56
上传
评论 5
收藏 1KB ZIP 举报
林当时
- 粉丝: 97
- 资源: 1万+
最新资源
- 基于MFC的校园导航程序(使用最短路径dijkstra算法).rar
- Android Studio android APP 视频作为视图背景需要源代码或想了解其实现原理的可以私心我
- com.ZeroneGames.GreenProject.apk
- Python自动化开发入门教程
- 4399GameSem_116_13955_207551_6.apk
- python 3.9.19源码编译包
- php-8.2.18-Win32-vs16-x64.rar
- 字节跳动青训营-抖音项目
- SQL资料手册,语句教程,高级查询语句语法
- 上位机和串口建立 Modbus 协议进行数据传输,并使用 Mysql 数据库存储,能够实现实时温湿度显示和动态变化曲线,历史数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论4