该工作台旨在帮助用户在FreeCAD建模器中设置和运行 CFD 分析,并用作流行的 OpenFOAM® CFD 工具包( www.openfoam.org、www.openfoam.com ) 的前端 (GUI) 。它指导用户在运行模拟之前选择相关物理场、指定材料属性、生成网格、分配边界条件并选择解算器设置。指定最佳实践以最大限度地提高求解器的稳定性。
免责声明:本产品未经 OpenCFD Limited(OpenFOAM 软件的生产商和分销商(通过 www.openfoam.com)以及 OPENFOAM® 和 OpenCFD® 商标的所有者)批准或认可
- 不可压缩的层流(simpleFoam、pimpleFoam)
- 支持各种 RANS、LES 和 DES 湍流模型
- 不可压缩自由表面流(interFoam、多相InterFoam)
- 可压缩浮力流(buoyantSimpleFoam、buoyantPimpleFoam)
- 高速可压缩流 ( HiSA )
- 多孔区域和多孔挡板
- 基础材料数据库
- 使用潜在求解器进行流初始化
- 任意无源标量传输函数的解
- 带边界层的切割单元笛卡尔网格划分 (cfMesh)
- 带挡板的切割单元笛卡尔网格划分 (snappyHexMesh)
- 使用 Gmsh 进行四面体网格划分,包括转换为多面体双网格
- 网格划分后检查网格
- 支持支持求解器的动态网格自适应
- 使用 Paraview 进行后处理
- 对基于力的函数对象(力、力系数)的基本支持
- 对探针的基本支持
- 在 Windows 7-11 和 Linux 上运行
- 单元/回归测试
- 使用可扩展模板结构的案例构建器
- 宏脚本
- 通过 mpiexec & --hostfile 支持分布式并行(集群)运行
可以安装 FreeCAD 和下面列出的先决条件的任何系统。
Windows 7-11;需要 64 位版本。
尚未进行广泛测试,但已有成功的报道。请参阅 以下论坛帖子 以获取说明。
CfdOF 工作台依赖于以下外部软件,其中一些可以自动安装(请参阅下面的说明)。
- FreeCAD 的最新发布版本(至少版本 0.20.0 / git commit 29177) 或最新开发版本(预发布)
- OpenFOAM Foundation 版本 9-10或ESI-OpenCFD 版本 2006-2306
- 帕拉维尤
- cfMesh(定制版本更新为使用最新的 OpenFOAM 版本进行编译)
- HiSA(高速空气动力求解器)
- Gmsh(版本 2.13 或更高版本) - 可选,用于生成四面体网格
可以通过分别运行安装程序或将 .7z 存档解压到目录 <FreeCAD-directory> 来获取和安装最新 版本 或开发的FreeCAD 版本(64 位版本)。在后一种情况下,FreeCAD 可以就地运行 (<FreeCAD-directory>\bin\FreeCAD.exe)。
CfdOF 本身使用 Addon 管理器安装到 FreeCAD 中:
- 运行 FreeCAD
- 选择工具 |插件管理器...
- 在工作台列表中选择CfdOF,然后单击“安装/更新”
- 重新启动 FreeCAD
- 依赖的安装见下文
注意:CfdOF 工作台可以随时通过插件管理器进行更新。
可以从 FreeCAD 中的 CfdOF 首选项面板方便地检查和安装依赖项。在 FreeCAD 窗口中,选择编辑 |首选项...并选择“CfdOF”。依赖项可以作为单独的组件安装,也可以作为 Docker 容器的一部分安装(请参阅下面的Docker 容器安装部分)。
OpenFOAM 通过 OpenCFD MinGW 包安装,并且还支持 OpenFOAM 的BlueCFD Core端口。
可以使用上述链接手动安装 OpenFOAM,或者单击上述首选项面板中的相关按钮。如果您在 CfdOF 中运行 OpenFOAM 时遇到问题,请按照相关网站上的说明确保安装正常。
为了与 OpenFOAM 安装正确连接,CfdOF 需要能够写入其安装位置。由于 Windows 用户帐户控制施加的限制,某些用户在使用 C:\Program Files 内的位置时会遇到问题。因此,建议安装到其他位置,最好是在您的主目录中。
如果使用上述软件包以管理员权限安装 OpenFOAM,则还可以选择安装 Microsoft MPI。如果没有,则需要从此处手动下载并安装它。需要 MPI 才能并行运行。
将首选项面板中的 OpenFOAM 安装目录设置为 MinGW 包的以“vXXXX”子文件夹(其中 XXXX 是安装的版本号)结尾的安装目录,或 BlueCFD 安装目录。它将在默认安装位置自动检测到。
通过点击上面的链接或单击“首选项”面板中的相关按钮,可以安装任何版本的ParaView 。将首选项面板中的 ParaView 安装路径设置为 ParaView 安装的“bin”子文件夹中的“paraview.exe”文件。如果留空,将检测常见默认值。
同样,cfMesh 和 HiSA 可以从“首选项”面板安装。在收到“安装完成”消息之前,请勿将其关闭。请注意,OpenFOAM 安装必须位于可写位置,cfMesh 和 HiSA 才能成功安装。
选择“检查依赖项”选项将验证是否已成功安装所有先决条件。
FreeCAD最新版本 或开发 版本的AppImages可以直接下载并运行,无需安装。请注意,您必须启用下载文件的执行权限才能运行它。否则,可以从https://github.com/FreeCAD/FreeCAD的源代码构建 FreeCAD 。
笔记:
- 通过 Linux 包管理器安装 FreeCAD 会使用本地 Python 安装。因此,您可能需要安装额外的 Python 包才能获得完整功能。依赖性检查器(见下文)可以帮助诊断这一点。
- 请注意,通过某些发行版的包管理器安装的“Snap”容器可能会出现问题,因为它不允许访问系统目录,因此 OpenFOAM 必须安装在用户的主目录中才能从 FreeCAD 运行。
由于上述原因,我们推荐 AppImage 作为 Linux 上最强大的安装选项。
CfdOF 本身使用 Addon 管理器安装到 FreeCAD 中:
- 运行 FreeCAD
- 选择工具 |插件管理器...
- 在工作台列表中选择CfdOF,然后单击“安装/更新”
- 重新启动 FreeCAD
- 依赖的安装见下文
注意:CfdOF 工作台可以随时通过插件管理器进行更新。
可以通过 FreeCAD 中的 CFD 首选项面板检查依赖关系,并方便地安装其中一些依赖关系。在 FreeCAD 窗口中,选择编辑 |首选项...并选择“CfdOF”。
依赖项可以手动安装,也可以作为 docker 容器的一部分安装(请参阅下面的 Docker 容器安装)。可以使用上面的链接或您的发行版的软件包管理器对 OpenFOAM( OpenCFD或Foundation 版本)、Paraview和Gmsh (可选)进行手动安装。但请注意,某些 Linux 发行版中捆绑的 OpenFOAM 软件包可能已过时或不完整;例如,标准 Debian 和 Ubuntu 软件包不包含构建命令“wmake”,因此不能与可选组件“HiSA”和“cfMesh”一起使用。因此,我们建议安装通过上述官方网站提供的软件包。请确保安装可用的“开发”包(通常以后缀“-devel”或“-dev”命名),以确保可以使用“wmake”编译可选组件“HiSA”和“cfMesh”。
在首选项面板中设置 OpenFOAM 安装目录 - 典型安装位置的示例为 /usr/lib/openfoam/openfoam2306、/opt/openfoam10 或 /home/user/OpenFOAM/OpenFOAM-10.x(通常会自动检测到)默认安装位置)。请注意,如果您在启动 FreeCAD 之前已经加载了所需的 OpenFOAM 环境,则安装目录应留空。
cfMesh 和 HiSA 可以使用上述的“首选项”面板进行安装,如果您自己还没有这样做,也可以在 OpenFOAM 安装中从其源代码下载和构建。请注意,这是一个漫长的过程。
选择“检查依赖项”选项将验证是否已成功安装所有先决条件。
Docker 容器提供了一种为 Windows 和 Linux 提供预编译程序包的便捷方式。 macOS 也受支持,但需要帮助来设置容器。请在论坛留言。
Windows 的首选 docker 运行时是通过podman,因为目前这提供了快速的文件系统集成。 也可以使用Docker Desktop 。
- 安装podman(或docker Desktop)。
- 如果使用 podman,请打开 cmd 窗口并发出以下命令:
podman machine initpodman machine startpodman machine set --rootful
- 编辑 → 首选项 → CfdOF:按安装 Paraview按钮。
- 编辑 → 首选项 → CfdOF:选择使用 docker。
- 按安装 Docker 容器按钮。无需安装 gmsh、cfmesh 和 HISA,因为它们包含在 docker 映像中。
- 如果使用 podman,可以启用快速 WSL 文件系统集成:
cfdof在 podman 创建的以下 firectory 中 创建一个新的子目录(例如):\\wsl$\podman-machine-default\home\user- 在 cfdof 首选项页面中,按上述方式设置默认输出目录:
\\wsl$\podman-machine-default\home\user\cfdof
- 按运行依赖性检查器按钮。
- 使用这些说明(或类似说明)安装 docker。
- 按照您的发行版的软件包安装说明安装 paraview(例如
sudo apt-get install paraview在 debian 上)。 - 编辑 → 首选项 → CfdOF:选择使用 docker。
- 按安装 Docker 容器按钮。无需安装 gmsh、cfmesh 和 HISA,因为它们包含在 docker 映像中。
- 按运行依赖性检查器按钮。
目前,除了本自述文件之外,还没有 CfdOF 的正式文档。但是, CfdOF 工作台目录的“Demos”文件夹内提供了演示案例 。这些旨在提供功能和最佳实践的基本概述。这些示例是通过加载并执行“Demos”目录中各个子目录中以“.FCMacro”结尾的宏文件来运行的。如果有多个编号文件,则应按顺序运行这些文件,并旨在逐步演示案例的设置方式。
可以在CfdOF 专用 FreeCAD 论坛寻求社区帮助 ,并且可以在以下论坛帖子中找到各种第三方文档的列表 。
问:我必须创建一个防水的几何形状吗?
答:如果使用笛卡尔网格生成器snappyHexMesh和cfMesh,则不需要这样做。您可以使用壳和化合物而不是创建实体,只要被网格化的化合物中的形状集合阻挡了所需的体积。小于网格间距的间隙也是允许的。
请在CfdOF FreeCAD 论坛上讨论问题 以获得社区帮助。可以在Github 项目网站上报告错误。
请首先阅读报告错误的指南 ,以便提供足够的信息。
这一发展是通过Eskom Holdings SOC Ltd 和科学与工业研究委员会(南非)的初始资助实现的。
- Oliver Oxtoby(CSIR,2016-2018;私人 2019-)[email protected]
- 约翰·海恩斯(CSIR,2016-2018)[email protected]
- 阿尔弗雷德·博加尔(CSIR,2016-2018)[email protected]
- 乔纳森·伯格 (2022)
- 夏庆丰 (2015)
- 托马斯·施拉德 (2017-) [email protected]
- 迈克尔·欣德利 (2016)
- 马克·麦肯齐(CNF,2022)
- 凯蒂·阿克马尔 (2022) [论坛:@KAKM]
- 阿德里安·因绍拉尔德 (2022)
- 克劳斯·森布里茨基 (2017)
CfdOF 致力于纪念迈克尔·欣德利 (Michael Hindley)。正是由于他对 FreeCAD 和开源软件不可抑制的热情,这个工作台才得以存在。安息。