“OpenSees常见问题解决方法”
本次推文主要介绍OpenSees几类常见问题的解决方法,供给大家学习参考。
-
如何运行OpenSees
-
方法一:直接运行OpenSees
运行OpenSees后,在DOS窗口内键入“source ****.tcl”可运行与OpenSees.exe同目录下的tcl文件。
图1 直接运行OpenSees求解
-
方法二:Batch模式下运行
-
根据个人偏好在任意盘创建一个文件,放入OpenSees.exe(个人放置路径:C:Program Files (x86)OpenSeesBin);
-
右击“我的电脑” → “属性” → “高级系统设置” → “环境变量” → “系统变量”;
-
在系统变量加入OpenSees.exe的路径,完成环境变量的添加。
图2 添加系统环境变量
添加系统环境变量后,在cmd中键入“opensees”并拖拽文件夹中的tcl文件即可运行分析。
图3 CMD中运行OpenSees
-
分析失败:Returened -1
有几位朋友遇到这个问题,且模型检查许久都未发现报错的原因。其实报错的原因极其简单:OpenSees程序有问题。而且这个问题很神奇,即不是因为ActiveTcl不匹配,亦不是版本问题。目前解决方法:点击阅读原文,下载网盘提供的OpenSees.exe。
图4 Returned -1报错
图5 优雅解决问题
-
分析失败:Returened -3(一步都未运行)
一般模型较大时或采用大量零长度单元时,会较容易遇到该报错情况。程序在第一个分析步就直接粗暴的告诉你“Analyze Failed, returned: -3”。此时如果你对结构进行模态分析,会获得图6右侧的报错信息,主要指刚度矩阵对角元素存在负值而导致矩阵奇异。
图6 Returned-3(一步都未运行)
矩阵奇异的原因有多种,目前笔者遇到的主要都是由约束不足造成,而且极有可能是因为定义了多余节点,该节点即未与单元相连也没有约束,此时将导致矩阵奇异。图7通过添加多余节点的方式,重现了该报错信息。
图6 报错重现
有多余节点时,Perform3D会直接将该点固定住,而OpenSees则没有那么聪明。解决方法:将结构化繁为简,检查是否有多余节点,检查是否有足够约束。
下期预告:
【拓扑优化】浅谈拓扑优化(二)
精彩回顾: