开源仿真 / CAE 软件调研(第一版)

这是一篇偏「软件工程 / 工具选型」视角的笔记,面向普通仿真工程师和研发人员: 不讨论商业授权、销售策略,只关心——如果不花钱,我能用哪些开源工具把一条仿真工作流(几何 / 网格 / 求解 / 可视化)基本跑起来, 它们各自适合干什么、不太适合干什么。

1. 为什么要关注开源仿真软件?

在「硬件是基建,软件是生产力」这件事上,正版化越来越是共识。但在工程实践里,开源软件 其实已经成为很多团队的「第二条腿」: 既可以作为正式生产力的一部分,也可以作为商业软件的补充、验证和对照组。

从个人和小团队角度看,开源仿真软件有几个很现实的优点:

下面的列表,本着「面向仿真工作者」和「无需付费,也能干活」的原则, 粗略选了 15 款和工程仿真相关的开源软件。不是排名,也不算全面,只是我个人视角下一份「可以优先尝试」的清单。

2. 综合平台 / 前后处理

2.1 SALOME:开源多物理仿真平台

SALOME 由 EDF(法国电力集团)、CEA(法国原子能和替代能源委员会)和 Open Cascade 合作开发, 是一个工业级的开源仿真平台,特点是:从几何建模、网格,到后处理,一条链路都能打通

2.2 FreeCAD:通用 3D CAD + FEA/CFD 工作台

FreeCAD 是一款通用的 3D CAD 建模软件,基于 LGPL 发布。 它内置了 FEA 工作台、实验性的 CFD 模块、CAM/CNC 工具路径、机器人模拟等功能, 本质上是一个可扩展的工程平台

2.3 MeshLab:三角网格处理专家

MeshLab 主要面向三角网格的处理和修复,典型场景是: 从扫描 / 逆向工程 / STL 导入的大规模非结构三角网格

2.4 Gmsh:几何 + 网格 + 简单后处理

Gmsh 是一个带前后处理功能的 3D 有限元网格生成器, 设计目标是:提供快速、可参数化、可脚本化的网格工具。

3. CFD / 多物理求解器

3.1 OpenFOAM:最常见的开源 CFD 平台之一

OpenFOAM 几乎是开源 CFD 的代名词。它基于有限体积方法,支持多种网格类型(包括多面体), 自带 snappyHexMesh 这样的网格工具,可以处理复杂几何并支持大规模并行。

3.2 SU2:非结构网格 + 形状优化友好

SU2 是一款以航空航天应用起家的非结构网格开源求解器, 原生支持流场 + 形状优化,适用于从低速不可压到高超声速的流动问题。

3.3 Code_Saturne:EDF 自研的通用 CFD 求解器

Code_Saturne 是 EDF 自主开发的一款开源 CFD 软件, 基于有限体积方法,支持 2D / 3D、稳态 / 非稳态、层流 / 湍流、可压 / 不可压、等温 / 非等温等多种场景。

3.4 FDS:火灾动力学模拟工具

FDS(Fire Dynamics Simulator) 由美国 NIST 开发, 基于 CFD 的低马赫数 Navier–Stokes 方程组,专注于火灾场景中的 烟气流动、热传递和能量驱动流动 的数值模拟。

3.5 OpenRadioss:显式动力学 / 碰撞方向的开源尝试

OpenRadioss 是 Radioss 求解器的开源版本,由 Altair 推出, 聚焦于显式动力学、碰撞、安全性分析等场景。

4. 网格生成与几何处理

4.1 cfMesh:面向 CFD 的自动化网格生成

cfMesh 是一个基于 GPL 的网格生成器,重点面向 CFD 应用。 与传统「从几何出发」的非结构网格生成器不同,它采用由内而外的方法来生成网格, 对几何缺陷的容忍度较高。

4.2 enGrid:面向 CFD 的开源网格生成器

enGrid 是一款针对 CFD 的开源网格生成软件,使用 GPL 许可。 它基于 Netgen 生成四面体网格和棱柱边界层网格,界面基于 Qt。

4.3 TetGen:Delaunay 四面体网格生成

TetGen 是一个专注于 Delaunay 四面体网格的生成工具, 适用于有限元 / 有限体积等数值方法需要的高质量四面体网格。

5. 结构 / 多物理求解器

5.1 CalculiX:开源 FEA + Abaqus 输入兼容

CalculiX 是一套结构有限元软件,包含前处理(交互式 OpenGL 界面)和求解器。 求解器支持线性 / 非线性、静力学 / 动力学、热分析等多种工况。

5.2 Code_Aster:EDF 的多物理有限元平台

Code_Aster 是 EDF 开发的一款通用有限元求解器, 能够处理热分析、线性 / 非线性静力学和动力学、压力容器和土木结构等问题。

6. 绘图与数据可视化

6.1 Gnuplot:命令行绘图“小刀”

Gnuplot 是一个命令行驱动的交互式绘图工具, 可用于生成二维 / 三维曲线和表面图,并支持多种输出格式。

7. 小结:怎么用这份清单?

这份清单不是「非要替代商业软件」的意思,而是:

后续如果我在实际工作中深度使用了其中某几款(比如 OpenFOAM / SU2 / Code_Saturne / CalculiX 等), 会另外写更细的使用笔记或踩坑记录,挂在本页或者 技术笔记 下面。