用于生成不连续 Galerkin FEM 网格的库

计算科学 网格生成 不连续-galerkin
2021-12-10 17:28:01

有许多包可用于生成连续 Galerkin (CG) FEM 网格(gmsh、tetgen、netgen 等),但我一直无法找到生成不连续 Galerkin (DG) FEM 网格的包。

我目前有兴趣专注于 DG 的求解器部分,而不是网格构造,因此创建一个简单的 DG 四边形/三角形网格的包就可以了。我正在寻找一组坐标、节点编号和元素/节点连接性。将 CG 网格文件(例如 Gmsh)转换为不连续的文件也可以。

以前是否这样做过 - 如果是的话,什么可供个人使用?

1个回答

您对不同的概念感到困惑。网格实际上只是由网格的顶点定义的单元的集合,并且这些顶点一起形成每个单元。因此,网格是一个完全几何的对象。它对可能在其上定义的有限元空间一无所知——这是您工作流程中的后续步骤。同样重要的是,网格生成器实际上只适用于这些几何对象:它们对 CG、DG 或任何其他功能空间一无所知。

与网格完全分开的是您在网格上定义的功能空间通常,尽管并非总是如此,它们是通过在节点之间进行插值来构建的。如果你有最低阶的连续元素,这些节点恰好位于顶点,但它们是独立的逻辑概念。同样,如果使用 DG 方法,节点是重复的——即,在 1d 中,每个顶点上都有 2 个节点,但仍然只有一个顶点。

有限元空间在有限元代码中定义,传统上与​​网格生成器是分开的。因此,您只需读取一个常规网格,然后在您自己的代码中为每个顶点分配多个自由度(“节点”)。