网站大量收购闲置独家精品文档,联系QQ:2885784924

地震工程学-反应谱和地震时程波的相互转化matlab编程.doc

地震工程学-反应谱和地震时程波的相互转化matlab编程.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
地震工程学作业 课程名称: 地震工程学______ 指导老师:_______翟永梅_________ 姓 名: 史先飞________ 学  号: 1232627________ 一、地震波生成反应谱 1 所取的地震波为Elcentro地震波加速度曲线,如图1所示。 图1 Elcentro地震波加速度曲线 2 所调用的Matlab程序为: % ***********读入地震记录*********** ElCentro; Accelerate= ElCentro(:,1)*9.8067;%单位统一为m和s N=length(Accelerate);%N 读入的记录的量 time=0:0.005:(N-1)*0.005; %单位 s %初始化各储存向量 Displace=zeros(1,N); %相对位移 Velocity=zeros(1,N); %相对速度 AbsAcce=zeros(1,N); %绝对加速度 % ***********A,B矩阵*********** Damp=0.02; %阻尼比0.02 TA=0.0:0.05:6; %TA=0.000001:0.02:6; %结构周期 Dt=0.005; %地震记录的步长 %记录计算得到的反应,MaxD为某阻尼时最大相对位移,MaxV为某阻尼最大相对速度,MaxA某阻尼时最大绝对加速度,用于画图 MaxD=zeros(3,length(TA)); MaxV=zeros(3,length(TA)); MaxA=zeros(3,length(TA)); t=1; for T=0.0:0.05:6 NatualFrequency=2*pi/T ; %结构自振频率 DampFrequency=NatualFrequency*sqrt(1-Damp*Damp); %计算公式化简 e_t=exp(-Damp*NatualFrequency*Dt); s=sin(DampFrequency*Dt); c=cos(DampFrequency*Dt); A=zeros(2,2); A(1,1)=e_t*(s*Damp/sqrt(1-Damp*Damp)+c); A(1,2)=e_t*s/DampFrequency; A(2,1)=-NatualFrequency*e_t*s/sqrt(1-Damp*Damp); A(2,2)=e_t*(-s*Damp/sqrt(1-Damp*Damp)+c); d_f=(2*Damp^2-1)/(NatualFrequency^2*Dt); d_3t=Damp/(NatualFrequency^3*Dt); B=zeros(2,2); B(1,1)=e_t*((d_f+Damp/NatualFrequency)*s/DampFrequency+(2*d_3t+1/NatualFrequency^2)*c)-2*d_3t; B(1,2)=-e_t*(d_f*s/DampFrequency+2*d_3t*c)-1/NatualFrequency^2+2*d_3t; B(2,1)=e_t*((d_f+Damp/NatualFrequency)*(c-Damp/sqrt(1-Damp^2)*s)-(2*d_3t+1/NatualFrequency^2)*(DampFrequency*s+Damp*NatualFrequency*c))+1/(NatualFrequency^2*Dt); B(2,2)=e_t*(1/(NatualFrequency^2*Dt)*c+s*Damp/(NatualFrequency*DampFrequency*Dt))-1/(NatualFrequency^2*Dt); for i=1:(N-1) %根据地震记录,计算不同的反应 Displace(i+1)=A(1,1)*Displace(i)+A(1,2)*Velocity(i)+B(1,1)*Accelerate(i)+B(1,2)*Accelerate(i+1); Velocity(i+1)=A(2,1)*Displace(i)+A(2,2)*Velocity(i)+B(2,1)*Accelerate(i)+B(2,2)*Accelerate(i+1); AbsAcce(i+1)=-2*Damp*NatualFrequency*Velocity(i+1)-NatualFrequency^2*Displace(i+1); end MaxD(1,t)=max(abs(Displace)); MaxV(1,t)=max(abs(Velocity)); if T=

文档评论(0)

小教资源库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档