MENU

pygmsh的网格生成记录(1):geo模块完成网格划分

• December 23, 2022 • Read: 9389 • Python,Finitie Element Method Theory

geo模块

pygmsh中的geo模块,是最基本的几何生成方法,在这个模块中,Geometry这个类会被在最开始就建立,生成一个几何对象实例,这个对象可以是任意的,具体的几何形状可以通过类的方法进行生成,比如多边形用add_polygon()这个方法,圆可以用add_circle()方法。当然,也可以从最基本的点开始生成,在点的基础上生成线(这个线可以是直线,也可以是曲线或者贝塞尔曲线)。

geo模块中,在二维几何对象的基础上,可以进行一些简单的拉伸,旋转、扭转等操作,从而生成三维对象。

import pygmsh

with pygmsh.geo.Geometry() as geom:
    geom.add_polygon(
        [
            [0.0, 0.0],
            [1.0, -0.2],
            [1.1, 1.2],
            [0.1, 0.7],
        ],
        mesh_size=0.1,
    )
    mesh = geom.generate_mesh()
with pygmsh.geo.Geometry() as geom:
    geom.add_circle([0.0, 0.0], 1.0, mesh_size=0.2)
    mesh = geom.generate_mesh()

mesh对象的操作

geom对象的generate_mesh()方法能够进行几何模型的网格划分,划分后会返回一个结果,这个结果这里就先称之为mesh。mesh中包含了节点坐标,单元的节点组成等等信息,当然node和element是最关心的数据。当然python是一种完全的面向对象的编程语言,这里的mesh实际上也是一种类,他的属性,以及它的方法都被用于体现表征数据信息。查看网格节点的坐标可以用points属性,但是网格单元组成的信息,并不是被封装为属性,似乎是一个更为复杂的结构体,mesh.cells是一个meshio对象,mesh.cells_dict["triangle"]可以用于查看三角单元的信息。

mesh.points  # 获取节点坐标

mesh.cells_dict["triangle"]  # 获取单元节点组成

由于mesh是meshio中的对象,它可以方便的输出为vtk文件,采用write方法即可完成。

mesh.write("xxx.vtk")

输出的vtk文件,可以直接采用paraview打开查看。

paraview1
paraview2

Archives Tip
QR Code for this page
Tipping QR Code
Leave a Comment

13 Comments
  1. ydl ydl

    您好 请问您了解pygmsh支持导入模型文件的网格划分吗

  2. 你的文章让我感受到了不一样的风景,谢谢分享。 http://www.55baobei.com/eZ0LzPTTL7.html

  3. 你的文章让我心情愉悦,真是太棒了! https://www.yonboz.com/video/80617.html

  4. 你的才华让人瞩目,期待你的更多文章。 http://www.55baobei.com/d2zOiLTyEX.html

  5. 真好呢

  6. 你的才华让人瞩目,期待你的更多文章。 http://www.55baobei.com/d2zOiLTyEX.html

  7. 你的文章让我心情愉悦,每天都要来看一看。 https://www.4006400989.com/qyvideo/33863.html

  8. 你的文章内容非常专业,让人佩服。 https://www.4006400989.com/qyvideo/38664.html

  9. 你的文章让我心情愉悦,每天都要来看一看。 http://www.55baobei.com/SSbcmIYdGr.html

  10. 《麻辣女生》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/4359.html

  11. 新盘首开 新盘首开 征召客户!!!coinsrore.com

  12. 2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
    新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
    新车首发,新的一年,只带想赚米的人coinsrore.com
    新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
    做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
    新车上路,只带前10个人coinsrore.com
    新盘首开 新盘首开 征召客户!!!coinsrore.com
    新项目准备上线,寻找志同道合的合作伙伴coinsrore.com
    新车即将上线 真正的项目,期待你的参与coinsrore.com
    新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
    新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com

  13. 2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
    新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
    新车首发,新的一年,只带想赚米的人coinsrore.com
    新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
    做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
    新车上路,只带前10个人coinsrore.com
    新盘首开 新盘首开 征召客户!!!coinsrore.com
    新项目准备上线,寻找志同道合 的合作伙伴coinsrore.com
    新车即将上线 真正的项目,期待你的参与coinsrore.com
    新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
    新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com