当前位置: 首页 > 工具软件 > OpenSees > 使用案例 >

matlab调用opensees,基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法技术

宣滨海
2023-12-01

本发明专利技术公开了一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法。本发明专利技术一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,包括:根据结构设计参数,建立OpenSees结构有限元分析模型;地震波文件名称命名,编写地震波列表;编写目标调幅峰值列表和地震动时间间隔列表;编写OpenSees输出的数据文件名称命令流;编写OpenSees加载地震波命令流;编写在计算不收敛时自动切换算法命令流;编写在倒塌临界状态分析终止命令流;编写MATLAB软件读取OpenSees软件输出数据并写入到Excel表格中的命令流。本发明专利技术的有益效果:本发明专利技术提出了一种基于OpenSees与MATLAB的逐步增量动力快速分析与数据处理方法,解决了在地震波切换、地震动峰值进行调幅时。

Incremental dynamic analysis and data processing based on OPENSEES and MATLAB

【技术实现步骤摘要】

基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法

本专利技术涉及工程领域,具体涉及一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法。

技术介绍

现代的抗震设计理论是从20世纪初才开始建立起来的。随着人们对地震动特性和结构动力特性理解的不断加深,结构抗震设计理论从最初的静力阶段和反应谱阶段,发展到动力阶段及目前的基于性能(PBSD)的抗震设计理论阶段。逐步增量动力分析(IncrementalDynamicAnalysis,IDA)方法是基于动力弹塑性时程分析,其基本思路是,对于某条特定的地震动输入,通过设定一系列单调递增的的地震强度指标IM(IntensityMeasure),并对每个地震强度指标下的地震输入进行结构弹塑性时程分析,可以得到一系列结构的弹塑性地震响应指标DM(DamageMeasure),这样形成了一条IM-DM曲线(IDA曲线)。与静力弹塑性分析方法相比较,IDA方法是对结构在地震下的动力响应的模拟,故而可以避免静力弹塑性分析因简化而带来的问题。覆盖了从弹性到弹塑性直到结构动力失稳的反应全过程,同时能够反映出结构在不同强度等级地震下的地震需求能力和整体抗倒塌能力,并且还能够体现出结构的强度、刚度及变形的变化过程。传统技术存在以下技术问题:目前,商用软件如PKPM、盈建科、SAP2000、Perform3D等软件均可以进行时程分析,但是,不能批量化的进行逐步增量动力分析分析。商用软件每次只能分析一条地震波,等前一条波分析结束后,才能分析下一条波。而逐步增量动力分析分析需要对数十条地震波并且每条地震波调幅数十次进行分析,如20条地震波,每条地震波调幅20次,则需要分析400次,这对商用软件来说,如果一条一条地震波的手工输入,其工作量是十分复杂,浪费大量时间精力。另外,在数据输出方面更是繁杂,成千上万个输出文件堆积一起,无法快速寻找出有价值的数据指标。

技术实现思路

本专利技术要解决的技术问题是提供一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法。为了解决上述技术问题,本专利技术提供了一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,包括:根据结构设计参数,建立OpenSees结构有限元分析模型;地震波文件名称命名,编写地震波列表;编写目标调幅峰值列表和地震动时间间隔列表;编写OpenSees输出的数据文件名称命令流;编写OpenSees加载地震波命令流;编写在计算不收敛时自动切换算法命令流;编写在倒塌临界状态分析终止命令流;编写MATLAB软件读取OpenSees软件输出数据并写入到Excel表格中的命令流。在另外的一个实施例中,“根据结构设计参数,建立OpenSees结构有限元分析模型”具体包括:梁柱单元端部采用IMK转角弹簧单元,上部单元采用elasticBeamColumnElement与之串联;其中,IMK转角弹簧的具体参数根据截面的设计参数,由公式计算得来;由于构件是由IMK转角弹簧和elasticBeamColumnElement串联形成,所以,上部elasticBeamColumnElement需要对抗弯刚度进行修正,计算公式如下:节点采用Joint2DElement;采用rayleigh阻尼,利用region命令分别为弹性单元和有质量的节点赋予刚度比例系数和质量比例系数,计算过程中采用初始刚度。在另外的一个实施例中,“地震波文件名称命名,编写地震波列表”具体包括:由于输入的地震波是数条甚至是数十条,因此将待分析的每条地震波进行命名,输出数据文件的名称由每条地震波名称决定,此名称亦是MATLAB后处理时寻找的文件名,为简便起见,以阿拉伯数字1,2,3......进行命名;在OpenSees中编写地震波名称列表,记为AA,用于foreach循环。在其中一个实施例中,“编写目标调幅峰值列表和地震动时间间隔列表”具体包括:在OpenSees模型中编写目标调幅峰值列表记为BB,用于foreach循环;在OpenSees模型中利用list命令,编写读取每条地震动时间间隔数组,记为dt_AA,用于识别每条地震波的时间间隔。在其中一个实施例中,“编写OpenSees输出的数据文件名称命令流”具体包括:以每条地震动名称为输出的数据文件夹进行命名,利用filemkdir命令创建正在分析地震波输出文件的文件夹;以每条地震动名称和目标调幅峰值为输出的数据文件进行命名。在其中一个实施例中,“编写OpenSees加载地震波命令流”具体包括:首先,利用open命令打开地震动文件;利用read命令读取地震动文件中数据、lsort命令按递增顺序对地震动数据进行排序,然后,利用lindex命令获取地震动峰值,最后,llength命令获取地震动总步数。在其中一个实施例中,“编写在计算不收敛时自动切换算法命令流”具体包括:计算不收敛时,首先,减小分析步时间,分析步时间调至0.5倍,传递给算法进行分析;再次不收敛时,自动切换积分方法:按下列顺序进行(Krylov加速收敛的牛顿迭代法KrylovNewton)-(牛顿迭代法Newton)-(第一步采用初始刚度,之后采用当前刚度的牛顿迭代法Newton-initialThenCurrent)-(求解非线性残差方程的线性牛顿迭代法NewtonLineSearch)-(修正的牛顿迭代法ModifiedNewton)-(线性迭代法Linear);如切换积分方法仍不收敛时,判定结构到达倒塌临界点,分析终止。在其中一个实施例中,“编写在倒塌临界状态分析终止命令流”具体包括:已判定到达倒塌临界状态,则分析一步,使时程分析结束;利用open--r命令打开输出文件,puts命令写入0.20.2,覆盖掉分析不收敛前的记录,以此作为分析不收敛的标志,close关闭文件;filemkdirFailRecord创建分析失败记录文件夹,open—w命令创建新的.txt文件,记录下此时分析不收敛地震波名称和目标幅值。在其中一个实施例中,“编写MATLAB软件读取OpenSees软件输出数据并写入到Excel表格中的命令流”具体包括:利用MATLAB中的sprintf命令读取输出的文件数据,max函数寻找损伤指标最大值,xlswrite函数,将地震动名称和目标峰值及损伤指标最大值写入Excel表格中的指定位置。基于同样的专利技术构思,本申请还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一项所述方法的步骤。基于同样的专利技术构思,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一项所述方法的步骤。基于同样的专利技术构思,本申请还提供一种处理器,所述处理器用于运行程序,其中,本文档来自技高网...

【技术保护点】

1.一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,包括:/n根据结构设计参数,建立OpenSees结构有限元分析模型。/n地震波文件名称命名,编写地震波列表;/n编写目标调幅峰值列表和地震动时间间隔列表;/n编写OpenSees输出的数据文件名称命令流;/n编写OpenSees加载地震波命令流;/n编写在计算不收敛时自动切换算法命令流;/n编写在倒塌临界状态分析终止命令流;/n编写MATLAB软件读取OpenSees软件输出数据并写入到Excel表格中的命令流。/n

【技术特征摘要】

1.一种基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,包括:

根据结构设计参数,建立OpenSees结构有限元分析模型。

地震波文件名称命名,编写地震波列表;

编写目标调幅峰值列表和地震动时间间隔列表;

编写OpenSees输出的数据文件名称命令流;

编写OpenSees加载地震波命令流;

编写在计算不收敛时自动切换算法命令流;

编写在倒塌临界状态分析终止命令流;

编写MATLAB软件读取OpenSees软件输出数据并写入到Excel表格中的命令流。

2.如权利要求1所述的基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,“根据结构设计参数,建立OpenSees结构有限元分析模型”具体包括:

梁柱单元端部采用IMK转角弹簧单元,上部单元采用elasticBeamColumnElement与之串联;其中,IMK转角弹簧的具体参数根据截面的设计参数,由公式计算得来;由于构件是由IMK转角弹簧和elasticBeamColumnElement串联形成,所以,上部elasticBeamColumnElement需要对抗弯刚度进行修正,计算公式如下:

节点采用Joint2DElement;

采用rayleigh阻尼,利用region命令分别为弹性单元和有质量的节点赋予刚度比例系数和质量比例系数,计算过程中采用初始刚度。

3.如权利要求1所述的基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,“地震波文件名称命名,编写地震波列表”具体包括:

由于输入的地震波是数条甚至是数十条,因此将待分析的每条地震波进行命名,输出数据文件的名称由每条地震波名称决定,此名称亦是MATLAB后处理时寻找的文件名,为简便起见,以阿拉伯数字1,2,3......进行命名;

在OpenSees中编写地震波名称列表,记为AA,用于foreach循环。

4.如权利要求1所述的基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,“编写目标调幅峰值列表和地震动时间间隔列表”具体包括:

在OpenSees模型中编写目标调幅峰值列表记为BB,用于foreach循环;

在OpenSees模型中利用list命令,编写读取每条地震动时间间隔数组,记为dt_AA,用于识别每条地震波的时间间隔。

5.如权利要求1所述的基于OpenSees与MATLAB的逐步增量动力分析与数据处理方法,其特征在于,“编写OpenSees加载地震波命令流”具体包括:

首先,利用open命...

【专利技术属性】

技术研发人员:刘赛,顾冬生,罗国胜,

申请(专利权)人:江南大学,

类型:发明

国别省市:江苏;32

 类似资料: