Thanks to visit codestin.com
Credit goes to github.com

Skip to content

yuanxiaoming8899/CfdOF

 
 

Repository files navigation

CfdOF:FreeCAD 的计算流体动力学 (CFD) 工作台

该工作台旨在帮助用户在FreeCAD建模器中设置和运行 CFD 分析,并用作流行的 OpenFOAM® CFD 工具包( www.openfoam.orgwww.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 支持分布式并行(集群)运行

支持的平台

Linux

可以安装 FreeCAD 和下面列出的先决条件的任何系统。

视窗

Windows 7-11;需要 64 位版本。

苹果系统

尚未进行广泛测试,但已有成功的报道。请参阅 以下论坛帖子 以获取说明。

入门

先决条件

CfdOF 工作台依赖于以下外部软件,其中一些可以自动安装(请参阅下面的说明)。

设置 CfdOF 工作台

视窗

可以通过分别运行安装程序或将 .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 才能成功安装。

选择“检查依赖项”选项将验证是否已成功安装所有先决条件。

Linux

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( OpenCFDFoundation 版本)、ParaviewGmsh (可选)进行手动安装。但请注意,某些 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 容器安装

Docker 容器提供了一种为 Windows 和 Linux 提供预编译程序包的便捷方式。 macOS 也受支持,但需要帮助来设置容器。请在论坛留言。

Windows 上的 Docker

Windows 的首选 docker 运行时是通过podman,因为目前这提供了快速的文件系统集成。 也可以使用Docker Desktop 。

  1. 安装podman(或docker Desktop)。
  2. 如果使用 podman,请打开 cmd 窗口并发出以下命令:
    • podman machine init
    • podman machine start
    • podman machine set --rootful
  3. 编辑 → 首选项 → CfdOF:按安装 Paraview按钮。
  4. 编辑 → 首选项 → CfdOF:选择使用 docker
  5. 安装 Docker 容器按钮。无需安装 gmsh、cfmesh 和 HISA,因为它们包含在 docker 映像中。
  6. 如果使用 podman,可以启用快速 WSL 文件系统集成:
    • cfdof在 podman 创建的以下 firectory 中 创建一个新的子目录(例如):\\wsl$\podman-machine-default\home\user
    • 在 cfdof 首选项页面中,按上述方式设置默认输出目录: \\wsl$\podman-machine-default\home\user\cfdof
  7. 运行依赖性检查器按钮。
Linux 上的 Docker
  1. 使用这些说明(或类似说明)安装 docker。
  2. 按照您的发行版的软件包安装说明安装 paraview(例如sudo apt-get install paraview在 debian 上)。
  3. 编辑 → 首选项 → CfdOF:选择使用 docker
  4. 安装 Docker 容器按钮。无需安装 gmsh、cfmesh 和 HISA,因为它们包含在 docker 映像中。
  5. 运行依赖性检查器按钮。

文档

目前,除了本自述文件之外,还没有 CfdOF 的正式文档。但是, CfdOF 工作台目录的“Demos”文件夹内提供了演示案例 。这些旨在提供功能和最佳实践的基本概述。这些示例是通过加载并执行“Demos”目录中各个子目录中以“.FCMacro”结尾的宏文件来运行的。如果有多个编号文件,则应按顺序运行这些文件,并旨在逐步演示案例的设置方式。

可以在CfdOF 专用 FreeCAD 论坛寻求社区帮助 ,并且可以在以下论坛帖子中找到各种第三方文档的列表 。

常问问题

问:我必须创建一个防水的几何形状吗?

答:如果使用笛卡尔网格生成器snappyHexMeshcfMesh,则不需要这样做。您可以使用壳和化合物而不是创建实体,只要被网格化的化合物中的形状集合阻挡了所需的体积。小于网格间距的间隙也是允许的。

反馈

报告错误

请在CfdOF FreeCAD 论坛上讨论问题 以获得社区帮助。可以在Github 项目网站上报告错误。

请首先阅读报告错误的指南 ,以便提供足够的信息。

发展

如果您想参与CfdOF的开发,请参阅贡献指南路线图

致谢

资金

这一发展是通过Eskom Holdings SOC Ltd科学与工业研究委员会(南非)的初始资助实现的。

贡献者

奉献精神

CfdOF 致力于纪念迈克尔·欣德利 (Michael Hindley)。正是由于他对 FreeCAD 和开源软件不可抑制的热情,这个工作台才得以存在。安息。

About

基于 OpenFOAM 求解器的 FreeCAD 计算流体动力学 (CFD)

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 68.2%
  • C++ 23.9%
  • Shell 3.9%
  • PowerShell 3.1%
  • Other 0.9%