反应谱法求多自由度体系的最大位移反应
1. 求反应谱
求反应谱线的matlab函数代码如下:
function spectrum (Rc,At)
% w为圆频率
% k为刚度
% M为质量
% C为阻尼
% Rc为阻尼比
% At为力的作用时间
M=1;
dw=0.01;
n=4/dw;
dt=0.01; %dt<=1/(20*f),f为结构振动的最高频率
for i=1:n
w(i)=i*dw;
C=2*Rc*w(i);
k=w(i)^2;
m=At/dt;
temp0=[0,0,0];
for j=1:m
t=j*dt;
F=exp(-0.001*t)*sin(t)+exp(-0.002*t)*sin(2*t)+exp(-0.003*t)*sin(3*t);
[dispyy,veloyy,acceyy]=newmark(k,M,C,dt,F,temp0(1),temp0(2),temp0(3));
dispy(j)=dispyy;
temp0=[dispyy,veloyy,acceyy];
end
s(i)=max(abs(dispy));
end
plot(w,s)
function [dispyy,veloyy,acceyy]=newmark(K,M,C,dt,P,dispy0,veloy0,accey0)
dispyy=0;
acceyy=0;
veloyy=0;
beta=0.25;
deta=0.5;
K1=K+1/(beta*dt^2)*M+deta/(beta*dt)*C;
Py=1/(beta*dt^2)*M+deta/(beta*dt)*C;
Pvy=1/(beta*dt)*M-(1-deta/beta)*C;
Pay=(1/(2*beta)-1)*M-(1-0.5*deta/beta)*dt*C;
PP=P+Py*dispy0+Pvy*veloy0+Pay*accey0;
dispyy=K1\PP;
acceyy=1/beta/dt^2*(dispyy-dispy0)-veloy0/beta/dt-(0.5/beta-1)*accey0;
veloyy=(deta/beta/dt)*(dispyy-dispy0)+(1-deta/beta)*veloy0+(1-deta/2/beta)*dt*accey0;
运行spectrum(0.05,50) 得到如下反应谱线:
2. 用反应谱求二自由度体系的最大位移响应
解答过程(除模态为手算外,其他用matlab求解)如下:
M=[1 0;0 1]; % 质量矩阵
K=[1 -1;-1 2]; % 刚度矩阵
F=[1;1]; % 力阵
W=eigs(M/K) % W为圆频率的平方
W =
2.6180
0.3820
w=[1/W(1)^0.5,1/W(2)^0.5] % w为圆频率向量
w =
0.6180 1.6180
e1=[1;0.618]; % 第一模态
e2=[-0.618;1]; % 第二模态
e=[e1,e2];
Me=e'*M*e % 等效质量阵
Me=
1.3819 0
0 1.3819
Fe=e'*F % 等效作用力阵
Fe =
1.6180
0.3820
mag=Fe'/Me(1) % 放大系数向量
mag =
1.1708 0.2764
for i=1:2
Y(i)=maxdisp(w(i),mag(i)); % maxdisp()为在反应谱上插值的函数,代码见附录
end
Y
Y =
1.5433 0.1069
for i=1:2
x(i)=((e1(i)*Y(1))^2+(e2(i)*Y(2))^2)^0.5; % x(i)为第i个物体的最大位移响应
end
x
x =
1.5448 0.9598
许贤
10412044
附录:
maxdisp()函数的代码
function [x]=maxdisp(W,mag) % W为圆频率,mag为作用力的放大系数
M=1;
dw=0.01;
n=4/dw;
dt=0.01;
for i=1:n
w(i)=i*dw;
C=2*0.05*w(i);
k=w(i)^2;
m=50/dt;
temp0=[0,0,0];
for j=1:m
t=j*dt;
F=exp(-t)*sin(t)+exp(-2*t)*sin(2*t)+exp(-3*t)*sin(3*t);
[dispyy,veloyy,acceyy]=newmark(k,M,C,dt,F,temp0(1),temp0(2),temp0(3));
dispy(j)=dispyy;
temp0=[dispyy,veloyy,acceyy];
end
s(i)=max(abs(dispy));
end
% 插值运算
for i=1:n
if W<=w(i+1)
x=(W-w(i))/dw*s(i+1)+(w(i+1)-W)/dw*s(i);
break;
end
end
x=x*mag;
本文档为【结构动力学作业动力学作业许贤】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。