支持单纯形元素的 FEM 库

计算科学 有限元 图书馆
2021-12-11 08:58:09

我的问题可以改写为“像 deal.II 这样的 FEM 库,但适用于单纯形元素”。
我们的科学小组使用非常复杂的 3D 几何图形,因此我们通常更喜欢四面体网格作为我们的模型。我们使用 Gmsh 来构建这样的网格。
我们使用的编程语言是 C++。我们从未使用过第三方 FEM 库,我们使用自己的矩阵格式、求解器等。但我认为应用 FEM 库(例如 deal.II)可以提高我们调查的效率。deal.II 有很多优点,但它的主要缺点(对我们来说)是只支持六面体网格。我读到了这笔交易。II 可以通过此处描述的界面使用来自 Gmsh 的网格也许这是我正在寻找的一个不错的选择。但我不确定。
无论如何,也许任何人都知道 C++ FEM 库以及有据可查、经过良好测试和积极维护的 deal.II,但支持单工有限元。
我想补充一点关于此类库可以拥有的功能。我非常希望有机会使用 a) 矢量 Nedelec 和 b) 其他标准(标量、连续)元素中的不连续元素。

4个回答

发布我的问题两个月后,我意识到我仍然想尝试使用 deal.II,并实现了 tet->hex 转换器来处理复杂的几何图形。所以如果有人有兴趣,欢迎来到tethex wiki 页面

我将重复 Nathan 的评论作为答案。您可能想要LibMesh他们确实支持一些Nedelec 元素,尽管我的第一次搜索发现了 2D 元素。如果您环顾四周或提出要求,我相信您也会找到 3D 的。它有一个庞大的元素库。

DUNE http://www.dune-project.org支持各种结构化和非结构化网格。如果您使用底层 ALUGrid http://aam.mathematik.uni-freiburg.de/IAM/Research/alugrid/库,您将通过我们的网格接口获得一个带有六面体元素的网格。我们支持 gmsh http://www.dune-project.org/external_libraries/install_gmsh.html

如果您想了解更多信息,3 月份有一个关于 DUNE 的课程http://conan.iwr.uni-heidelberg.de/dune-workshop/index.html (注册截止日期已经是 2 月 24 日)。

免责声明:我是 DUNE 开发人员之一,但我的回答尽量不要太主观。