OpenFOAM

来自 ArchWiki

根据维基百科

OpenFOAM(“开源场运算和操作”的缩写)是一个 C++ 工具箱,用于开发定制的数值求解器,以及用于解决连续介质力学问题的预处理/后处理实用程序,包括计算流体动力学 (CFD)。

安装

此文章或章节需要扩充。

原因:解释 openfoam-orgAUR 和 openfoam-comAUR 之间的区别。(在 Talk:OpenFOAM 中讨论)

基础

如果您不计划使用 OpenFOAM 进行开发任务,则有一个更新版本的程序可用,即 openfoam-orgAUR。对于大多数用户来说,这将是启动并运行安装所需的一切。

OpenFOAM 安装在 /opt 目录中,并在 /etc/profile.d/ 中提供了一个脚本,允许使用 ofoam 命令(shell 别名)激活 OpenFOAM 环境。

注意: /etc/profile.d/ 中的脚本仅在会话开始时加载,因此该命令在安装后不会立即可用。

开发

要在开发环境中安装 OpenFOAM,在 Arch Linux 上的过程相当简单。基本步骤如下:

  1. 从 OpenFOAM 获取源代码文件
  2. 准备构建目录
  3. 创建首选项文件并为您的安装设置环境变量
  4. 编译 OpenFOAM 源代码
  5. 测试 OpenFOAM 安装

前提条件

获取源代码文件

由于 OpenFoam 对其位置很挑剔,因此请创建一个遵循其命名约定的目录,并将源代码解压到那里

$ mkdir $HOME/OpenFOAM
$ wget -P $HOME/OpenFOAM https://dl.openfoam.com/source/v2206/OpenFOAM-v2206.tgz
$ tar -xvfz $HOME/OpenFOAM/OpenFOAM-v2206.tgz -C $HOME/OpenFOAM

环境变量

将以下代码粘贴到您的 .bashrc 文件中。每当您想要运行 OpenFOAM 时,只需运行 of2206 即可初始化环境。这必须在编译之前完成。

$ export FOAM_INST_DIR="$HOME/OpenFOAM"
$ alias of2206='source $FOAM_INST_DIR/OpenFOAM-v2206/etc/bashrc'

编译

运行 of2206 初始化环境。使用 foamSystemCheck 检查是否安装了所有要求,然后使用 foam 进入项目目录。然后您可以使用以下命令进行编译

$ ./Allwmake -j -s -q -l

这将使用所有核心 (-j) 进行编译,减少输出 (-s, -silent),使用排队 (-q, -queue) 和日志 (-l, -log),这些日志稍后可以检查。

测试

要测试是否安装成功,请运行任何测试用例,例如

$ foamInstallationTest -full incompressible/simpleFoam/pitzDaily

故障排除

zsh

如果您不使用 bash,某些功能可能无法正常工作。如果使用 zsh,您将需要 bash-completion 软件包,并将以下内容添加到您的 zshrc 中,以使 OpenFOAM 脚本正常工作

zshrc
autoload bashcompinit
bashcompinit
alias ofoam="source ${FOAM_INST_DIR}/OpenFOAM-10/etc/bashrc"

然后添加以下环境变量,最好添加到 zshenv 文件中

zshenv
export FOAM_INST_DIR=/opt/OpenFOAM
export BASH=/bin/bash

Paraview 未安装

发生这种情况是因为依赖项是作为单独的软件包安装的,而不是在 OpenFOAM 的第三方应用程序目录中。可以:

  • alias paraFoam='paraFoam -builtin' 添加到您的 /opt/OpenFOAM/Open-FOAM-X.X/etc/bashrc 中。
  • 对于每个项目,touch $(echo "${PWD##*/}").foam 然后从 paraview 打开触摸的文件。

另请参阅