我正在处理一个*.cgns文件。这种网格格式,当保存为非结构化网格时,保存节点坐标、每个元素的节点连接性和边界条件。它是一种简洁的网格格式,具有良好的文档。但是,我仍然负责为计算构建其余的数据结构。例如,以单元为中心的 FV 方案的面表。这是一项非常精细的工作,必须以某种方式为每个求解器完成(对于单元顶点求解器,我认为它是相邻的点)。
因此,由于许多人不得不开发这种类型的例程,我认为有理由认为比我更聪明的人编写了一个组织这些数据结构的库。
我正在阅读DMplex 的 PETSc 文档,但我仍在试图弄清楚如何给*.cgns它一个文件。从我所见,即使使用 cgns 支持进行编译,这种格式的文件 I/O 也没有很好地建立在这个库中。我不是在批评任何人,PETSc 是一个很棒的图书馆。
我的问题是,是否有任何库可以管理此类数据结构的创建,不仅适用于 FV 方法,还适用于任何类型的方案/求解器?一个快速的奖金问题......是否有人研究算法以有效地为 PDE 求解器创建数据结构?