资源描述:
《matlab计算单自由度的地震反应的程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、采用EL-CENTRO地震波计算单自由体系的振动位移反应谱前言:本课程论文采用软件是MATLABR2010a,所编程序应用的方法是线性加速度法。程序采用的是两层循环上实现位移谱的求取。内循环实现在地震波不由上一步所得到的位移、速度和加速度得到下一时间间隔后的位移速度和加速度;外循环实现在不同结构自振周期(频率)下遭遇地震波的响应。本文在求出和对位移反应谱的同时,也求出了相对速度反应谱、绝对加速度反应谱。一.线性加速度法的简述:线性加速度法是直接数值积分法求解地震反应的方法之一,本文所采用的线性加速度法参考大崎顺彦的《地震动的谱分析入门》第二版。具体计算公式详见大崎顺彦的《地震动的
2、谱分析入门》第二版P116-P118。二.所编程序及编译:clear%读入地震记录***********fid=fopcn(’ei.txt’);[Accelerate,count]=fscanf(fid,,%g,);%count读入的记录的量time=0:0.02:(count-l)*0.02;0/0***********^^^^^^j^^[^^l^***********%初始化各储存14量Displace=zeros(l,count);%相对位移Velocity=zeros(1,count);%相对速度AbsAcce=zeros(1,count);%绝对加速度Damp=0.05
3、;%结构阻尼比取为0.05Tc=0.0:0.05:10;%结构向振周期Dt=0.02;%地震记录的步长%记录计算得到的反应,MDis为最大相对位移,MVel为最大相对速度%1^八^某阻尼吋最大绝对加速度,用于画图MDis=zeros(l,length(Tc));MVel=zeros(1,length(Tc));MAcc=zcros(l,lcngth(Tc));t=l;%在下一个循环中控制不同的结构自振周期forT=0.0:0.05:10Frcy=2*pi/T;%结构A振频率DamFrcy=Frcy*sqrt(l-Damp*Damp);%计算公式化简c_t=cxp(-Damp*Fr
4、cy*Dt);s=sin(DamFrcy*Dt);c=cos(DamFrcy*Dt);A=zeros(2,2);A(1,1)=e_t*(s*Damp/sqrt(1-Damp*Damp)+c);A(1,2)=c_t*s/DamFrcy;A(2,l)=-Frcy*e_t*s/sqrt(1-Damp*Damp);A(2,2)=c_t*(-s*Damp/sqrt(1-Dainp*Damp)+c);d_fK2*DampA2-l)/(FrcyA2*Dt);%计算公式化简d_3t=Damp/(FrcyA3*Dt);B=zeros(2,2);B(1,1)=e_t*((d_f+Damp/Frcy)
5、*s/DamFrcy+(2*d_3t+l/FrcyA2)*c)-2*d_3t;B(1,2)=-e_t*(d_f*s/DamFrcy+2*d_3t*c)-1/FrcyA2+2*d_3t;B(2,l)=-e_t*(((Damp/(Frcy*Dt)+l)*s/DamFrcy)+(l/(FrcyA2*Dt))*c)+l/(FrcyA2*Dt);B(2,2)=e_t*((Damp/(Frcy*Dt)*s/DamFrcy)+(l/(FrcyA2*Dt))*c)-l/(FrcyA2*Dt);fori=l:(count-l)%根掘地震记录,计算不同的反应Displace(i+1)=A(1,1)*
6、Displace(i)+A(l,2)*Velocity(i)+B(1,1)*Accelerate(i)+B(l,2)*Accelerate(i+1);Velocity(i+1)=A(2,1)*Displace(i)+A(2,2)*Velocity(i)+B(2,l)*Accelerate(i)+B(2,2)*Accelerate(i+1);AbsAcce(i+l)=-2*Damp*Frcy*Velocity(i+l)-FrcyA2*Displace(i+l);endMDis(1,t)=max(abs(Displace));MVel(1,t)=max(abs(Velocity));
7、ifT=0.0MAcc(1,t)=max(abs(Accelerate));%当结构的自振周期为0时,其绝对加速度应等于地面加速度elseMAcc(1,t)=max(abs(AbsAcce));endDisplace=zeros(1,count);%初始化各储存向量避免下次卟算吋引用到前(结果Velocity=zeros(l,count);AbsAcce=zeros(1,count);t=t+l;%t=length(Tc),即所求结构ft振周期有多少个,对应就运行多少次。end*