实干、实践、积累、思考、创新。
- 程序图标 ( Icon )
- 程序介绍 ( Introduction)
最近看文献,整理资料,遇到Runge-Kutta法相关的内容,于是整理SDOF_RUNGE程序,通过编写程序,掌握RUNGE-KUTTA法的基本概念。
数值分析中,龙格-库塔法(Runge-Kutta methods)是用于非线性常微分方程的解的重要的一类隐式或显式迭代法。这些技术由数学家卡尔·龙格和马丁·威尔海姆·库塔于1900年左右发明。Runge-Kutta公式的思路就是利用区间内一些特殊点的一阶导数值的线性组合来替代某点处的n阶导数值,这样就可以仅通过一系列一阶导数值来得到某点幂级数展开的预测效果。在工程中最常用的是四阶龙格-库塔积分,也就是 RK4 积分,其完整的表述如下(搬运自百度):
已知初值问题:
对于该问题,RK4法的表达式为:
其中
上面的递推公式中,下一个值(yn+1)由现在的值(yn)加上时间间隔(h)和一个估算的斜率的乘积所决定。该斜率是以下斜率的加权平均,k1是时间段开始时的斜率;k2是时间段中点的斜率,通过欧拉法采用斜率k1来决定y在点tn+h/2的值;k3也是中点的斜率,但是这次采用斜率k2决定y值;k4是时间段终点的斜率,其y值用k3决定。
结构动力学中,可以利用该方法,进行结构的动力时程方程的求解。SDOF_RUNGE就是用采用 RK4求解单自由度动力时程分析的小程序。SDOF_RUNGE的编制主要参考William T. Thomson, Marie Dillon Dahleh 编写的《Theory of Vibration with Applications》的第五版,我看的清华大学出版社出版的影印版纸板,原版和影印版的封面如下:
采用Runge-Kutta法求解结构动力方程,首先需要将原来的2阶动力微分方程降阶为1阶,变为上面介绍的标准模式,然后再套用迭代公式进行求解。《Theory of Vibration with Applications》一书总结了相关概念和递推公式如下。
通过上述公式,可编制SDOF_RUNGE程序。
- 程序案例 ( Example )
采用SDOF_RUNGE程序对《Theory of Vibration with Applications》案例4.8.2进行分析。案例4.8.2如下图所示
SDOF_RUNGE程序分析结果如下图所示,由图可见,计算结果与书本一致。
- 相关内容(Related Topics)
[01]. [Tool] SPECTR – A program for Response Spectra Analysis [反应谱计算程序]
[02]. [程序][Tool] Ground Motion Selection [强震记录选取]
[03]. [程序][软件]Ground Motion Library [强震记录管理]
[04]. Artificial ground motion generator [人工模拟地震动]
[05]. ATC-63 Ground Motion Record Sets [ATC-63推荐的地震动记录集]
[06]. [Tool][软件]PEER NGA Ground Motion Convertor [PEER地震波数据格式转换器]
[07]. Frequency Analysis of Ground Motion by MATLAB [MATLAB地震动频域分析]
[08]. [Tool] [程序] GB18306-2015《地震动参数区划图》地震动参数计算
[09]. [Tool]水电工程水工建筑物标准设计反应谱计算程序(NB 35047-2015)
[10]. GB18306-2015地震动参数确定步骤与实例 (Ground motion parameter determination steps and examples of GB18306-2015)
[11]. 设计基本地震加速度与水平地震影响系数最大值
[12]. Tripartite Plot of Response Spectra [三联反应谱的基本概念与绘制]
[13]. Earthquake Response Spectra Analysis by MATLAB [MATLAB地震反应谱分析]
[14]. YJK地震波反应谱分析与地震波选取注意事项
[15]. 地震反应谱的特性(The Characteristics of Earthquake Response Spectrum)
[16]. Basics of Earthquake Response Spectra[地震反应谱的基本概念]
[17]. [Tool]中国规范反应谱生成程序 [Chinese Code’s Design Response Spectrum]
[18]. ETABS 2015人工波功能初步测试(一)
[19]. ETABS 2015人工波功能初步测试(二)
[21]. Dynamic Analysis of SDOF System by MATLAB [MATLAB单自由度系统动力响应分析]
[22]. 地震波基线是否修正对结构分析结果的影响(一)
[24]. [Software][科研小工具] 力-位移累积耗能计算[Force-Displacement Cumulative Dissipated Energy Calculator ]
[25]. [Tool][更新][Updates] SPECTR (v1.1) – A program for Response Spectra Analysis [SPECTR反应谱计算程序更新]
[26]. GMS Converter: 通用格式转换器 [General Formats Transformer for Earthquake Records]
[27]. [编程][软件] PERFORM-3D 地震波时程转换工具
[29]. [软件][地震动][Tool] 地震动参数计算软件GMP:补充介绍及说明
[30]. [地震工程][科研]地震动能量反应谱 (Earthquake Energy Demand Spectra)
[32]. [减隔震][地震工程][软件][Tool] 软钢·摩擦阻尼器减震结构的性能曲线计算
[33]. [地震工程][科研][软件][Tool] 等延性反应谱计算工具 (Construction of Constant-Ductility Response Spectrum)
[34]. [选波][地震波][Tool] GMS: Ground Motion Selection Program Updates (GMS选波软件更新)
[35]. [选波][地震波] 记录一个实际工程有趣的选波问题
[36]. [PEER][地震波] 关于PEER强震数据库地震波的单位及数据格
[37]. [科研][更新][Update] 地震动参数计算软件(GMP)更新 (支持更多数据导入格式)
[38]. YJK1.7人工波功能测试
[40]. [数学][地震动][软件] FOUR_TRAN: Fourier Analysis Tool [傅里叶分析工具]
[44]. [软件][工具][地震波] KNETConvert: Kik-net Ground Motion Converter [K-Net, Kik-net 地震波数据转换工具]
[45]. [地震工程][科研][软件] IRSA 2020: Inelastic Response Spectra Analysis Program (弹塑性反应谱及单自由度非线性地震分析工具)
[49]. [地震][动力学] 对称结构的地震剪力规律 (Seismic Shear Law of Symmetrical Structures)
[50]. [软件][地震波][抗震] GMS_Design 地震波选波工具
[51]. [地震][结构] 双向地震作用效应,【先振型组合,再方向组合】及【先方向组合再方向组合】的差异?(实际案例测算)
[52]. [地震计算][反应谱][动力学][CQC] 振型叠加法随着组合振型数量的增加各种响应量是怎么变化的?
[53]. [抗震][动力学] 对于整体结构,X向地震作用下有Y向剪力吗?有!!
[54]. [地震波][选波][教程] 时程分析地震波选波介绍 ( Introduction of Seismic Wave Selection in Time History Analysis)
[55]. [抗震][减震][笔记] 黏弹性阻尼器的减震性能曲线 Response Reduction Curve of Viscoelastic (VE) System
[56]. [地震][动力学][Dynamics] 将阻尼矩阵的非对角线元素取为0计算结果会怎么样?
[57]. [工具][软件][规范] 广东省标准《高层建筑混凝土结构设计规范》反应谱计算工具
[58]. [资料] 1940 El Centro (Imperial Valley) Earthquake 地震波
[59] [动力学][Dynamics][SAP2000] SAP2000中振型向量的标准化方法
[61] [Dynamics][动力学][SAP2000] 梁的振动形态及振型质量 (Vibration Modes and Modal Mass of Beams)
[63] [地震动][动力学] 地震波的基线修正是什么意思?什么时候要基线修正?
[64] [SPECTR][SeismoSignal] SPECTR与SeismoSignal反应谱计算有差异?
[65] [动力学][舒适度] 增加结构的刚度可以降低的结构的加速度吗?
[67] [软件][动力学][Dynamics] NSDOF算例1——单自由度体系弹性动力时程分析
[68] [软件][动力学][Dynamics] NSDOF算例2——单自由度体系非线性动力时程分析
[69] [软件][动力学][Dynamics] NSDOF算例3——非线性粘滞阻尼单自由度体系动力时程分析
[70] [软件][动力学][Dynamics] NSDOF算例4——摩擦阻尼单自由度体系动力时程分析
[71] [软件][动力学][Dynamics] NSDOF算例5——非线性粘滞阻尼器+材料非线性 单自由度体系动力时程分析
[72] [软件][动力学][Dynamics] NSDOF算例6——设置黏弹性阻尼器单自由度体系动力时程分析
[73] [下载][软件]GB-SPECT V2021: 中国规范反应谱生成程序 [Chinese Code’s Design Response Spectrum]
[74] [结构][软件] TLDPC: 调谐液体阻尼器参数计算器 [TLDPC: Tuned Liquid Damper (TLD) Parameter Calculator]
[75] [下载][软件] 黏滞阻尼系数单位转换工具 [Viscous Damping Coefficient Unit Conversion Tool]
[76] [笔记][算例][减振] 调谐液体阻尼器减震算例 [Example of Vibration Reduction of Tuned Liquid Damper (TLD) ]
[77] [动力学][地震] 振型分解反应谱法构件地震力的计算过程?
[78] [下载][软件][地震工程] Spectr_Evolution: Seismic response spectrum evolution [地震波反应谱演化][反应谱随积分时间长短的变化]
[79] [软件][数学][地震动] FPSA: Fourier and Power Spectra Analysis [地震波频谱分析工具]
[80] [动力学][地震工程] 一个有趣的问题: SPECTR中的Newmark-Beta法计算反应谱发散?
[81] [结构设计][动力学] YJK中CQC振型组合地震力的复核
[82] [工具][软件][地震动] AEEG: A Program for Artificial Earthquake Accelerograms Generation [人工地震波合成软件]
[84] [动力学][地震动] SPECTR与SeismoSignal反应谱计算有差异?
[92] [软件][地震动] AEEG人工地震波合成 —— 案例1(拟合自定义反应谱)
[93] [软件][地震动] AEEG人工地震波合成 —— 案例2(如何提高人工波拟合精度)
[95]. [软件][地震工程][科研][更新] IRSA 2022: Inelastic Response Spectra Analysis Program (弹塑性反应谱及单自由度非线性地震分析工具)
[96]. [软件][地震工程] IRSA 案例1 —— 等延性反应谱分析算例 ( Constant Ductility Response Spectra Analysis Examples of IRSA)
[97]. [软件][地震工程] IRSA 案例2——单自由度非线性地震分析算例 ( Inelastic SDOF Earthquake Analysis Examples of IRSA)
[100]. [软件][地震工程] IRSA 案例5——地震波能量谱分析 ( Seismic Wave Energy Spectrum Analysis Examples of IRSA)
[101]. [软件][地震工程] IRSA 案例6——地震波基线修正 ( Seismic Wave Baseline Correction Examples of IRSA)
- 微信公众号 ( Wechat Subscription)
欢迎关注 “结构之旅” 微信公众号