【软件下载】程序:地震波的反应谱生成程序
【Python源代码】python:地震波的反应谱生成程序源代码
小编:林哲
本期DinoStru结构笔记继续讲结构动力学的一个知识点,通过单自由度系统,把地震波转化为反应谱(加速度反应谱),加速度反应谱的含义就是把不同周期(确定了刚度与质量的相对关系)在一定阻尼比的条件下,输入地震波以后,结构的最大顶点加速度与周期的关系。如下图所示。也就是说要生成反应谱曲线,需要做以下三步:
一个简图看懂反应谱的意义
(1) 确定刚度,质量与阻尼比,输入地震波
(2) 计算一定周期下的加速度时程,并对时程求取最大值
(3) 通过一系列的操作(根据周期值修改单自由度体系的刚度或质量),得到不同周期对应的加速度最大值,把加速度最大值与周期作成曲线就是反应谱曲线。
不同刚度下的体系的加速度时程
加速度反应谱曲线的单位是(m/s2),把这个加速度除以重力加速度g = 9.8m/s2,得到地震影响系数曲线(也就与规范的反应谱对应),一个阻尼比有一条独立的反应谱曲线。
那么,对单自由度体系进行时程分析求解有多种方法比如:杜哈梅积分与Nigam精确法,该两种方法的计算细节可以参考如下[Dino笔记]所示:
(1) 单自由体系的一般动荷载振动与程序(杜哈梅积分)
http://www.dinochen.com/article.asp?id=378
(2) 单自由体系的一般动荷载振动与程序(Nigam精确解)
http://dinochen.com/article.asp?id=371
笔者通过delphi与python编写反应谱生成程序供学习结构动力学的同学使用,程序的界面如下图所示,附件与源代码可以在上方的链接下载。以下是程序计算结果与商用程序的对比。
附件提供下载地址,生成反应谱的小程序
商用学术程序 SeismicSoft 生成反应谱曲线
商用软件YJK生成反应谱的功能
多个程序计算所得反应谱的对比
笔者通过对Elcentro地震波生成反应谱曲线,发现程序采用Nigam精确积分法得到的结果与seismic-soft的结果最接近,Duhamel积分的精度与时间间隔有关(算例采用0.02s),在周期小于0.5s以内的精度差,YJK生成的反应谱与seismic-soft生成的反应谱,与Nigam精确积分法的结果有一定的差别。
以下是python的精确积分法的计算结果。python源代码在附件可以下载。
python 生成反应谱程序,其源代码在下方下载,采用matplotlib绘制曲线
程序DELPHI与PYTHON的计算结果对比
====the end====
下载资料汇总:
【软件下载】程序:地震波的反应谱生成程序
【Python源代码】python:地震波的反应谱生成程序源代码
(微信公众号用户,点击【阅读原文】后下载)
更多结构动力学的东西,可以关注我的微信公众号: DINOSTRU