最传统的方法,是将序列地震动按加载顺序添加在同个文本文件,在一次时程分析中完成所有序列地震的加载,简单粗暴,但所有地震的分析结果将堆砌在同个文件中,不利于数据处理。本推送将介绍一种实现序列地震分析的新途径,在考虑损伤累积的同时,实现序列分析结果的分解,呈现更为清晰的序列地震分析结果,方便损伤评估及数据处理。点击“阅读原文”可查看并下载本推送算例。
序列地震时程分析的实现
在序列地震时程分析的过程中,可在每个地震激励的结尾处通过“remove”命令移除当前激励的结果记录器“recorders”,并在下一地震激励开启前重新定义“recorders”,实现序列分析结果的分解。如本算例,通过地震序列名称“SeriesName”及地震激励名称“GM_Name”来对分析结果进行归类。本算例对于地震工况的定义区别于推送(双向地震与动力增量分析),三向地震地震波来源于不同的文件,同时不对地震波进行自动调幅。若需忽略某向地震激励,则相应的地震波文件填0值即可(详见“阅读原文”算例)。
procSeries_GM_Analyze{SeriesNameDampingGM_Name_Listdt{Model_Descp""}}{#InputModelsource"Model\\0_Main.tcl"#DampingRatioDefineRayleigh_Proc12Damping#Gravity_AnalysisGravity_Proc10##TimeHistoryLoadTagsetgmLoadCaseTag##ForeachLoadCaseNameforeachGM_NameGM_Name_List{setdirect_name"SeriesName\\GM_Name"#CreateDirectoryfilemkdirdirect_name#DefineRecorderRecorder_Procdirect_name#GroundMotionAnalysissetTimeCost[SeriesGroundMotionAnalysisgmLoadCaseTagGM_NamedtModel_Descp]}#AnalysisTimeputs"*Model_DescpGM_NameFinishwith[format"%.0f"TimeCost]second."#UpdateloadcasetagsetgmLoadCaseTag[exprgmLoadCaseTag+3]#Removeoldrecorderremoverecorders#TimebacktoZeroloadConst-time0.0}#ClearAllwipeAll#Returnreturn0}#GroundMotionAnalysisprocSeriesGroundMotionAnalysis{LoadTagGM_Namedt{Model_Descp""}}{#DefineFileName_ListsetiGMfileList[list"GroundMotion//X//GM_Name.txt""GroundMotion//Y//GM_Name.txt""GroundMotion//Z//GM_Name.txt"]#DefineDirectionsetiGMdirList[list"1""2""3"]#DefineFactorssetiGMfactList[list1.01.01.0]#DefineGroundMotionforeachGMFileiGMfileListGMDiriGMdirListGMFactiGMfactList{#DefineLoadCasepatternUniformExcitationLoadTagGMDir-accel"Series-dtdt-filePathGMFile-factorGMFact"incrLoadTag}#GetFilePrtNumbersetPrtNum[GetFilePrtNum"GroundMotion\\X\\GM_Name.txt"]setDuration[exprPrtNum*dt+10]#GMDAnalyze_Procreturn[GMDAnalyze_ProcDurationdt"Model_DescpGM_Name"]}
在使用时,仅需定义地震序列的名称及所包含的地震波名称列表即可。
#ModelDescpsetModel_Descp"OpenSEES"#DampingRatiosetDamping0.05#SeriesNamesetseriesName"GMSeries1"#GroundMotionDescpsetGM_Name_List[list"GM1_04g""GM1_06g"]#DigitalIntervalsetdt0.02#InputTCLsource"Model\\12_OSM.tcl"#SeriesAnalysisSeries_GM_AnalyzeseriesNameDampingGM_Name_ListdtModel_Descp
主余震分析
选取一框架结构为算例(智能化的结构弹塑性分析全套解决方案),所有单元采用刚度法纤维单元,由于刚度法纤维单元采用二次插值函数(浅析纤维单元(一):单元剖分数对刚度法纤维单元力学性能的影响),存在线性曲率及常值轴向应变问题,因此对单元进行剖分。图1测试算例利用PBSD(地震动工具箱之教学视频,人工波生成功能测试[开源])生成人工波,对算例模型分别完成“0.6g-0.4g”的主余震序列分析及“0.4g”的单波激励,并利用PBSD(功能介绍及应用教学回顾[含视频])完成抗震性能评估。结构顶点位移时程曲线、层间位移角曲线及首层构件的损伤程度如图2所示。可见,结构经历0.6g主震后存在显著的残余变形。主震后,结构再遭遇0.4g的余震,此时结构的楼层位移、层间位移角及构件损伤程度均显著大于不考虑主震的0.4g单波激励。在0.4g的余震下,结构首层大量框架柱发生严重损坏或失效,而不考虑主震的0.4g激励下,结构首层柱仅发生轻度损坏。
图2结构响应与首层构件损伤
点击“阅读原文”可查看并下载本推送相关的算例模型。
精彩回顾:
OpenSEESDaysEurasiainPolyU
第十一届全国防震减灾工程学术研讨会
年精选推送集锦
在日本E-Defense盲测比赛的表现
PBSD
超限工程好助手:结构抗震性能设计软件PBSD功能简介
功能介绍及应用教学回顾[含视频]
构件变形指标VS材料应变指标:从评估敏感性出发
YTP导模工具使用手册
减隔震模块介绍
智能化的结构弹塑性分析全套解决方案
地震动工具箱教学视频
地震动工具箱:多频段选波方法详解
一键弹塑性报告功能演示
性能前馈集中塑性铰单元的定义、优势与测试
性能前馈集中塑性单元PFLPH与纤维单元力学性能对比
弹塑性模型刚度调整
人工波生成功能测试[开源]
弹性时程分析的实现与功能测试
与国家高规对比浅谈反应谱的修正与完善
性能设计基本方法与PBSD的实现PBSD工程应用
保利南亚之窗——昆明地标性建筑
格力新经济创投中心——珠海新地标
广东美术馆“三馆合一”项目——岭南文化新地标
佛山天珺秀台——新广东省《高规》项目
珠海万菱环球中心——m拱北摩天新地标
OpenSees
OpenSEES历史版本下载浅析两类纤维单元:位移元与应力元24类纤维截面剖分TCL函数浅析纤维单元的数值积分方法浅析分布塑性铰单元的数值积分方法应力元纤维单元的LocalizationIssues宏观梁柱单元的强度软化模拟浅析纤维单元(一)浅析纤维单元(二)浅析纤维单元(三)FiberSection3D新变化:-Gj必选项始末新版IMK模型的前世今生浅析剪力墙宏观单元:MVLEM浅析剪力墙宏观单元:SFI-MVLEM浅析剪力墙宏观单元:分层壳单元浅析矩阵求解器(一):谁最高效?浅析矩阵求解器(二):谁才是万金油?浅析约束处理方法(一)浅析约束处理方法(二)浅析迭代(一)浅析迭代(二):基于LineSearch优化迭代算法浅析迭代(三):基于Krylov优化迭代算法SecAggregator为DispBC赋予剪切刚度乃无用功PM截面分析实例如何利用应变控制截面分析的进程低周往复加载实例:荷载位移双控SDOF非线性动力时程分析的实现与算例双向地震与动力增量分析WSAP结构力学求解器(一):二阶效应分析[开源]结构力学求解器(二):模态分析[开源]结构力学求解器(三):杆端释放[开源]结构力学求解器(四):单元荷载定义[开源]编程与工具分段解析法及多软件反应谱求解结果对比探究[开源]
OpenSEES_XML分析结果提取工具[开源]
OSRun[OpenSees运行辅助工具][开源]
FSV[OpenSees纤维截面可视化工具][开源]WilsonWu