如何通过提取节点和元素生成网格文件

时间:2019-09-10 16:01:01

标签: mesh

我需要生成一个网格文件,在其中需要提取以下信息:

  • 每个节点的X Y和Z坐标+节点标签
  • 所有元素+元素标签的列表

我想给我域的每个边缘(边缘的元素和节点)一个索引,以便在我的代码中使用它来管理BC,IC和参数...)

是否存在任何可以帮助我做到这一点的代码?

我尝试过gmsh,但是我真的无法理解.msh文件的语法,这与他们在9.1 MSH file format

中提出的解释不同。

1 个答案:

答案 0 :(得分:0)

我为此创建了meshio。这是写文件的方法:

points = numpy.array([
    [0.0, 0.0, 0.0],
    [0.0, 1.0, 0.0],
    [0.0, 0.0, 1.0],
    ])
cells = {
    "triangle": numpy.array([
        [0, 1, 2]
        ])
    }
meshio.write_points_cells(
    "foo.vtk",
    points,
    cells,
    # Optionally provide extra data on points, cells, etc.
    # point_data=point_data,
    # cell_data=cell_data,
    # field_data=field_data
    )

支持多种格式。