【OpenSees】浅析约束处理方法(二):Lagrange、Transformation
【OpenSEES】浅析Newton迭代(三):基于Krylov优化迭代算法
上期推送(【OpenSees】浅析矩阵求解器(一):谁最高效?)通过算例探讨求解效率最优的Solver,建议采用UmfPack进行求解,当内存不足时采用BandSPD。我们除了需要关注求解效率外,还需要关注各类Solver的适应性,在求解一些特殊问题时,并非所有Solver均适用。本期推送通过两个典型算例(两端固接梁、Lagrange约束问题)来推究不同Solver的适用性。点击“阅读原文”可查看与本推送相关的测试算例。
两端固接梁问题
通过对两端固接的欧拉梁施加单位位移和单位转角,可以获得我们熟悉的刚度系数值,如图1所示。如此简单的两端固接梁问题,OpenSees多数多数情况下无法顺利求解。
图1 两端固接梁问题
Lagrange问题
图2 Lagrange问题
针对上述两类典型的数值问题,UmfPack虽如万金油般具备最佳适用性,但也存在一定的使用局限。当构件数目较多时,则会出现如图3所示的错误信息。通过查询源码可知,“numerical analysis returns -1″为内存不足。通过UmfPACK用户手册可知UmfPACK.lib分为32位及64位两个版本,可惜的是不管是32位还是64位的OpenSees,均加载32位的UmfPACK.lib,因此内存上限为2G。
图3 内存上限问题
点击“阅读原文”可查看与本推送相关的测试算例。
精彩回顾:
【会议总结】OpenSEES Days Eurasia 2019 in PolyU
【PBSD】【OpenSees】在2019日本E-Defense盲测比赛的表现
-
PBSD
【PBSD】超限工程好助手:结构抗震性能设计软件PBSD功能简介
【PBSD】【OpenSEES】智能化的结构弹塑性分析全套解决方案
【PBSD】性能前馈集中塑性单元PFLPH与纤维单元力学性能对比
-
OpenSees
【OpenSEES】OpenSEES历史版本下载:v1.7.2-v3.1.0
【OpenSees】应力元纤维单元的Localization Issues
【OpenSEES】浅析迭代(二):基于LineSearch优化迭代算法
【OpenSEES】浅析迭代(三):基于Krylov优化迭代算法
【OpenSees】SecAggregator为DispBC赋予剪切刚度乃无用功
-
WSAP
-
编程与工具