Answers:
简短的答案是“否”,没有标准格式。但是有一些常见的用法,例如Gmsh用于输入/输出和VTK用于输出。
在做出决定之前,您需要了解您想做什么。如果您想暂时使用(小型)程序,则可以选择最适合您的口味和需求的格式。如果您打算将来更改为“更大”的程序,最好立即开始管理其文件格式。如果您打算使用商业预处理器/后处理器,那么我建议您坚持使用它们的格式,因为它们会使用每个新版本“更新”那些格式,这可能会让人头疼。
在下面,我列出了一些(开源)选项。
前处理
后期处理
实际上有一个标准:ISO / TS 10303(从1380到1386部分开始)。
在被ISO劫持之前,该计划始于1980年代,被称为PDES / STEP。参见https://www.pdesinc.org/index.html
但是我相信除非有人在强制性要求的环境中工作,否则没有人会使用它。许多国际委员会在颠覆最初的良好意图方面做得非常出色,并制定了一个标准,试图涵盖从描述公司的整体管理结构到编写日期和时间的正确格式的所有内容(我没有,不是在开玩笑)。
除了Wes的答案中引用的MSH文件格式外,我还使用Gamma3的MESH文件格式。如果您使用C / C ++进行编程,则有一个易于使用的软件库LM6,用于以这种文件格式加载/保存[1]
[1] https://www.rocq.inria.fr/gamma/gamma/Membres/CIPD/Loic.Marechal/Research/LM6.html
我第二次使用VTK进行文件输出。如果您想使用非常通用的网格结构,我将向您介绍CGNS库(CFD通用符号系统)的方向,它是一种开源网格格式,具有由财团(包括波音和NASA)维护的自己的库。使用该库读取节点,属性,边界条件等列表非常有用,并且库本身很容易编译。该库是C ++,但可以与Fortran链接。
我们在内部代码中使用了它,我发现它是一种非常有效的格式。它在后台使用HDF5来存储二进制文件。此外,ANSYS,Salome,GMSH均在不同程度上支持该格式的导出。这是github:https : //cgns.github.io/