【物理应用】基于El-centro地震波作用下隔震与非隔震支座下的顶层位移、速度、加速度的对比情况附matlab代码

简介: 【物理应用】基于El-centro地震波作用下隔震与非隔震支座下的顶层位移、速度、加速度的对比情况附matlab代码

 1 内容介绍

1.编程完成隔震/非隔震结构在Elcentro波作业下顶层加速度和位移

2.每层刚度分别放大、缩小4倍,其他参数不变,对比顶层加速度和位移隔震效果变化,分析原因。

计算以上各结构的各阶频率与振型。

image.gif编辑

image.gif编辑

2 仿真代码

k_addm=zeros(size(k_add));        

k_addm(1)=k_add(1);

for i=2:cn+1

 k_addm(i)=4*k_add(i);            % 每层刚度放大4倍 m:magnify

end

K_addm=matrix_free(k_addm,cn+1);   %放大后的刚度矩阵

[vgm,dgm]=eigs(K_addm,M_add,2,'SA'); %放大刚度后隔震结构振型vgm和频率dgm    

dgm=sqrt(dgm);

albe_gm=2*0.05/(dgm(1,1)+dgm(2,2))*[dgm(1,1)*dgm(2,2),1];

C_addm=albe_gm(1)*M_add+albe_gm(2)*K_addm;                

%---Newmark法求解隔震结构在地震波下响应分析-----

dk_gm=K_addm+M_add/(beta*dt^2)+C_addm*gama/(beta*dt);

GA_gm=M_add/(beta*dt)+C_addm*gama/beta;

GB_gm=M_add/(2*beta)+dt/2*(gama/beta-2)*C_addm;

disp_gm=zeros(cn+1,acl);                     %隔震结构位移disp_gm

velo_gm=zeros(cn+1,acl);                     %隔震结构速度velo_gm

accl_gm=zeros(cn+1,acl);                     %隔震结构加速度accl_gm    

for i=1:acl-1

 dP_gm=Mxg_g(:,i+1)-Mxg_g(:,i)+GA_gm*velo_gm(:,i)+GB_gm*accl_gm(:,i);

 ddisp_gm=dk_gm\dP_gm;

 disp_gm(:,i+1)=disp_gm(:,i)+ddisp_gm;

 dvelo_gm=gama/(beta*dt)*ddisp_gm-gama/beta*velo_gm(:,i)+(1-gama/(2*beta))*dt*accl_gm(:,i);

 velo_gm(:,i+1)=velo_gm(:,i)+dvelo_gm;

 daccl_gm =(1/(beta*dt^2))*ddisp_gm-(1/(beta*dt))*velo_gm(:,i)-(1/(2*beta))*accl_gm(:,i);

 accl_gm(:,i+1)=accl_gm(:,i)+daccl_gm;

end

topacl_gm=accl_gm(cn+1,:);                 %加隔震支座的结构顶层加速度    

topdis_gm=disp_gm(cn+1,:);                   %加隔震支座的结构顶层位移

figure(3);

plot(t,topdis_g,'r',t,topdis_gm,'b');       %顶层位移对比图

legend('未放大刚度','放大刚度');

title('隔震结构顶层位移对比图')

xlabel('时间/sec');

ylabel('顶层位移/m');

figure(4)

plot(t,topacl_g,'r',t,topacl_gm,'b');       %顶层加速度对比图

legend('未放大刚度','放大刚度');

title('隔震结构顶层加速度对比图')

xlabel('时间/sec');

ylabel('顶层加速度(m/s2)');

3 运行结果

1.非隔震结构与隔震结构对比

未加隔震支座的结构的一阶频率为1.65Hz,二阶频率为4.82Hz,三阶频率为7.64Hz。前三阶振型如图1所示,振型采用特定坐标的归一化方法,设定质点1坐标为1,其他质点坐标按比例确定:

image.gif编辑

隔震结构的一阶频率0.615Hz,二阶频率为3.065Hz,三阶频率为5.855Hz。前三阶振型如图2所示,振型同样采用设定隔震支座质点坐标为1的归一化方法:

image.gif编辑

图 2

顶层位移最大值,非隔震结构为8.17cm,隔震结构12.23cm;顶层加速度最大值,非隔震结构为12.67m/s2,隔震结构为3.61m/s2,顶层位移对比图如图3所示,顶层加速度对比图如图4所示,隔震支座能有效降低结构加速度,但却增大了结构位移。

image.gif编辑

 图 3

image.gif编辑

图 4

2 每层刚度放大4倍隔震结构与原隔震结构对比

刚度放大4倍后,顶层位移最大值变为10.51cm,顶层加速度最大值为3.29m/s2,比原先非隔震结构有所减小。刚度越大的结构在地震波作用下的动力响应越小,但下降幅度并不是很大。两种结构的顶层位移对比图和顶层加速度对比图分别如图5和图6所示。

image.gif编辑

图 5

image.gif编辑

图 6

3 每层刚度缩小4倍后隔震结构与原隔震结构对比

刚度缩小4倍后,顶层位移最大值变为16.77cm,顶层加速度最大值为4.23m/s2,比原先非隔震结构要增大一些,但比例并不是很大。刚度越小的结构在地震波作用下的动力响应越大,所以会呈现这样的结果,但因下降比例两种结构的顶层位移对比图和顶层加速度对比图分别如图7和图8所示。

image.gif编辑

                                         图 7

image.gif编辑

    图 8

4 参考文献

[1]董启暖. EI-Centro地震波作用下的金属滑移隔震支座系统减震性能分析[D]. 山东大学, 2011.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

相关文章
|
4月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
215 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
4月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
139 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
4月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
105 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
5月前
|
算法 安全 数据挖掘
随机数生成方法及其在Matlab中的应用
随机数生成方法及其在Matlab中的应用
|
6月前
|
算法 数据可视化 数据挖掘
MATLAB中常用的数学函数及其应用示例
MATLAB中常用的数学函数及其应用示例
|
7月前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
7月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
7月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
7月前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)