首页 > 行业资讯 > Gmsh模块与OpenSees的交互操作

Gmsh模块与OpenSees的交互操作

时间:2023-10-05 来源: 浏览:

Gmsh模块与OpenSees的交互操作

原创 GeotechWu 计算岩土力学
计算岩土力学

GeotechWu

计算岩土力学(Geomechanics)是一个综合的岩土工程(Geotechnical Engineering)信息源。

收录于合集

1. 引言

OpenSees自身没有前后处理功能,于是许多研究者为 O penSees 开发了GUI,有些是免费的,有些则是收费的;有些是独立的应用,有些则是基于开源的第三方软件,其中发展比较成熟的一个GUI是GiD+OpenSees,它是GiD的一个插件,在Anura3D中曾经使用过【 安装Anura3D指南---基于物质点法(MPM)的岩土数值模拟 】。

另一种为OpenSees开发GUI的途径是使用Gmsh,Gmsh是非常流行的免费网格划分软件,ADONIS【 有限元软件ADONIS网格划分的重大更新 (V3.90) 】、Neper【 在Windows系统下安装和使用Voronoi生成器Neper 】和Irazu【 FDEM-Irazu的数值模拟流程和材料参数选择 】均使用了Gmsh作为它们的网格划分器。

2. Gmsh模块

首先 安装Gmsh的Windows版本(V4.11.1),然后安装Gmsh Python模块。

pip install gmsh

Gmsh模块的主要方法有:
(1)  initialize()  初始化Gmsh

gmsh .initialize ()

(2)  add_point ()   在(x,  y,  z)  创建一个

point1 = gmsh.model.geo.add_point( 0 , 0 , 0 , 1 e- 2 ) point2  = gmsh.model.geo.add_point( 100 , le- 2 )

(3) add_line() 创建从点1到点2的线

line1 = gmsh.model.geo.add_line(point1, point2)

(4) add_curve_loop() 创建由线形成的面

face1 = gmsh.model.geo.add_curve_loop([line1, line2, line3, line4])

(5) add_plane_sufac e() 在面上创建曲面并连接曲面

gmsh .model .geo .add_plane_surface ( [face1] )

(6) synchronize()  同步从Gmsh模型创建的Gmsh数据结构。

gmsh .model .geo .synchronize ()

(7) generate() 生成网格

gmsh .model .mesh .generate ()

(8) write() 创建给定模型名称的网格

gmsh .write (" GFG .msh ")

(9) run() 创建图 形用户界面

gmsh .fltk .run ()

(10) finalize() 完成Gmsh API

gmsh .finalize ()

      

3. 交互原理

首先作为前处理在Gmsh中产生网格文件,通过gmsh2opensees模块把参数传递到OpenSees中,计算结束后把结果返回到Gmsh中,作为后处理在Gmsh中显示【 OpenSeesPy---使用Python操作OpenSees命令 】。

4. 结束语

本文简要描述了使用Gmsh作为前后处理器与OpenSees的交互过程,虽然实现了基本的自动化处理,但由于Gmsh和OpenSees都是通用软件,内含了非常复杂的功能,因此需要花费更多时间进行试验。

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐