【JY】基于Matlab的双线性滞回代码编写教程

有你关注

所以值得

【JY】基于Matlab的双线性滞回代码编写教程的图1

 单质点体系振动是最为简单的振动,通常在学习结构动力学中也是最开始学习这部分的知识和内容,这部分内容最为基础,也非常重要。回顾这几篇文章:

【JY】结构动力学初步-单质点结构的瞬态动力学分析

【JY】基于Ramberg-Osgood本构模型的双线性计算分析

【JY】SDOF计算教学软件开发应用分享

    很多小伙伴在后台以及文章下方留言,Matlab的动力学分析怎么编写?JYChen带大家详细的过一遍。但首先,请读者先移步阅读上面三篇文章,知道双线性计算分析原理和动力计算方法,然后我们准备发车。
    本程序编写主要是单质点计算(含双线性+黏滞阻尼编写)
【JY】基于Matlab的双线性滞回代码编写教程的图2

图 带水平粘滞阻尼器计算的双线性

【JY】基于Matlab的双线性滞回代码编写教程的图3

图 不带水平粘滞阻尼器计算的双线性

  好了,发车了~

代码讲解:

【JY】基于Matlab的双线性滞回代码编写教程的图4

第5行:对输出界面清空,对计算保留的数据清空。

第7~10行:设置计算所需要的动力参数。

第11~12行:读取txt文本的地震波。(注:也可以其他方式读取)

第14~15行:黏滞阻尼器所需要的计算参数。

【JY】基于Matlab的双线性滞回代码编写教程的图5

第17~19行:设置双线性滞回的关键参数。

第20行:计算系统阻尼比。

第22~23行:计算前处理所需要整理的变量。

【JY】基于Matlab的双线性滞回代码编写教程的图6

第25行:基于地震波步进迭代开始。

第26~34行:双线性滞回的未屈服阶段判断进行确定刚度。

【JY】基于Matlab的双线性滞回代码编写教程的图7

第35~41行:双线性滞回的正向屈服阶段判断进行确定刚度。

第42~48行:双线性滞回的反向屈服阶段判断进行确定刚度。

【JY】基于Matlab的双线性滞回代码编写教程的图8

第49~52行:各计算迭代力提前整理与准备计算。

【JY】基于Matlab的双线性滞回代码编写教程的图9

第53~66行:进行Newmark-β的计算分析。(详情请阅读任意一本结构动力学)

【JY】基于Matlab的双线性滞回代码编写教程的图10

第67~69行:结果进行整理储存。

第70~72行:结果进行整理,得到了相对加速度Acc,绝对加速度Aabs,位移Dish,恢复力Fsh。

(注意:前面计算单位需保证一致,建议取:N、m、s。由于最后化单位,加速度单位为:m/s2,位移Dish单位为mm,恢复力Fsh单位为kN)


到站了,希望各位看官有所收获!

源代码获得可关注“建源学堂”公众号,后台回复:Matlab双线性教学

以上仅代表个人观点,欢迎批评指正~

欢迎关注我们的网站:www.jycmf.cn

下期更精彩!

往期精彩

点击直达

#性能分析

【JY】基于性能的抗震设计浅析(一)

【JY】基于性能的抗震设计浅析(二)

【JY】浅析消能附加阻尼比

【JY】近断层结构设计策略分析与讨论

【JY】浅析各动力求解算法及其算法数值阻尼(人工阻尼)

理念

【JY|体系】结构概念设计之(结构体系概念)

【JY|理念】结构概念设计之(设计理念进展)

【JY】有限单元分析的常见问题及单元选择

【JY】结构动力学之显隐式

【JY】浅谈结构设计

#概念机理

【JY】基于Ramberg-Osgood本构模型的双线性计算分析

【JY】结构动力学初步-单质点结构的瞬态动力学分析

【JY】从一根悬臂梁说起

【JY】反应谱的详解与介绍

【JY】结构瑞利阻尼与经济订货模型

【JY】主成分分析与振型分解

【JY】浅谈结构多点激励之概念机理(上)

【JY】浅谈结构多点激励之分析方法(下)

【JY】板壳单元的分析详解

【JY】橡胶支座的简述和其力学性能计算

【JY】振型求解之子空间迭代

【JY】橡胶支座精细化模拟与有限元分析注意要点

#软件讨论

【JY】复合材料分析利器—内聚力单元

【JY】SDOF计算教学软件开发应用分享

【JY】Abaqus案例—天然橡胶隔震支座竖(轴)向力学性能

【JY】Abaqus6.14-4如何关联fortran?

【JY】如何利用python来编写GUI?

【JY】如何解决MATLAB GUI编程软件移植运行问题?

【JY】浅谈结构分析与设计软件

【JY|STR】求解器之三维结构振型分析

【JY】SignalData软件开发应用分享

#其他

【JY】位移角还是有害位移角?

【JY】如何利用python来编写GUI?

【JY】今日科普之BIM

~关注未来更精彩~

(2条)
默认 最新
请问,系统阻尼是否有应该是c=2*m*w*kexi,而程序代码中用pi代替了m,是否准确
评论 点赞
您好,在确定刚度时,即if(flag==0)的部分,是不是应该是X0(1)-xk2>=xy?而不是+xk2
评论 1 点赞
回复
代码没有问题,是+xk2,感谢阅读。
评论 点赞
点赞 评论 3 收藏 4
关注