OpenSees模型查看工具

For English Version: Here

Glimpsees是一款将OpenSees代码进行可视化检查的工具。开发这个软件最主要的原因在于OpenSees自带的显示功能非常差劲,只能显示模型大致的外观。如果在建模的过程中涉及到比较复杂的连接或者节点区域,无法进行放大检查。Glimpsees是一个基于tcl和Matplotlib的OpenSees代码可视化工具,它能够对OpenSees的tcl代码进行解析,并使用Matplotlib进行图形的绘制。具体看下图:

OpenSees模型查看工具

OpenSees模型查看工具

OpenSees模型查看工具

OpenSees模型查看工具


新版本1.2引入事件响应,可以通过快捷键直接显示支座编号(b)、节点编号(n)、单元编号(e)和单元类型(i),并可以清除显示(d),如下图所示:

OpenSees模型查看工具

OpenSees模型查看工具

下载安装

软件以exe形式发布:exe形式可以直接在Windows(x64)系统运行,不需要安装额外库文件。

点击下载EXE版本

下载最新版请到GlimpseesChange Log

使用教程

下载之后直接进行解压,将自己的tcl文件全部拷贝到软件目录下,双击软件输入主模型tcl即可生成模型图像。为了提高生成效率,并减少出错可能,应该将模型计算部分和后处理部分的命令注释掉。图像中四节点单元的图例均用实线表示,用不同颜色进行区分。

OpenSees模型查看工具

OpenSees模型查看工具

在模型生成完成之后,点击图形上面的保存按钮,可以将图片保存为svg矢量格式或者eps图元文件,然后导入AI进行在编辑。为了方便贴图,我已经将图中所有字体调整Times New Roman字体,同时在模型生成完成之后,Glimpsees的命令行窗口会输出模型中element的个数,同时会在目录下生成AllElementsInfo.txt文本,其中记录了Glimpsees所获取和计算得到的模型element的参数:

OpenSees模型查看工具

OpenSees模型查看工具

如果发现命令行显示的Total elements in the model与自己的概念有出入,可以打开AllElementsInfo.txt文本,在记事本“格式”->“自动换行”选择之后,调整一下记事本适当的宽度可以得到下面的列表:

OpenSees模型查看工具

OpenSees模型查看工具

其中所有数据的均为Glimpsees解析tcl之后的实际结果,包括使用for循环等方式进行建模的element均会被计算并记录下来。

Glimpsees能够对tcl的语法进行解析并采用自己的方式生成图像,但是需要注意下面几点:

  1. Glimpsees是用于前处理建模检查用的工具,不是后处理的工具,同时也不是在计算过程中动态显示模型的工具,这些功能等我掌握了OpenGL之后再进行开发;
  2. Glimpsees中已经能够处理绝大多数的命令,但是DisplayModel2D、DisplayModel3D这个命令无法进行解析,即便我给tcl解析器增加了几乎所有OpenSees的自定义命令,仍然不能处理好这两个命令,所以如果使用了这两个命令请提前注释掉;新版本已经修复了这个问题;
  3. 对于进行IDA分析的模型,由于在分析过程中进行了多次建模和清除,Glimpsees只会保存和显示最后一次分析的模型;
  4. 如果分析过程中多次建模并使用wipe,确保wipe命令用于建模的开头,如果循环建模分析过程中wipe命令是应用于模型建完后,则最后一次建模结束的wipe命令同样会清除Glimpsees所提取的模型数据。

PS: 其中软件目录下自带的test.tcl和test2.tcl为OpenSees官网的例子,版权为OpenSees所有。test3.tcl为陈学伟博士OpenSees书籍中exam02.tcl的例子,我稍微修改了一下增加了一个quad和一个shellMITC4单元用于测试模型的三维显示效果,版权为陈学伟博士所有。这是我第一次结合编程语言的解释器写软件,学到了很多,下次写一个手记。

8条评论

  1. ssssssyoga   •  

    大神!给你点个赞!

  2. lry   •  

    运行程序后闪退是怎么回事呢?

  3. Nigel-7   •  

    大神,请问有没有Python版OpenSeesPy版本的这个工具。这个工具太有用了,跪求!

  4. CHEN A CHENG   •  

    大神,错误代码3203是怎么回事?

  5. Hasan   •  

    Boss, I love your work, I am also a new civil engineer from Bangladesh and just finished my masters in South Korea, I am nowadays looking for a job here. I found c++ and python more demanding for civil engineers this days. I will be very grateful if you guide me to make similar software. Which software and programming environment will be best suitable to make this kind of software?

    • 伊犁的秋天   •     Author

      This is created by Python and the visualization is based on the Matplotlib

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

Are you human? Click the Grapes...