From ArchWiki

According to Wikipedia:

OpenFOAM (for "Open source Field Operation And Manipulation") is a C++ toolbox for the development of customized numerical solvers, and pre-/post-processing utilities for the solution of continuum mechanics problems, including computational fluid dynamics (CFD).


Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Explain the difference between openfoam-orgAUR and openfoam-comAUR. (Discuss in Talk:OpenFOAM)


If you do not plan on doing development tasks with OpenFOAM, there is an updated version of the program available as openfoam-orgAUR and git versions openfoam2.4-gitAUR or openfoam3.0-gitAUR. For most users, this will be everything needed to get an installation up and running.

OpenFOAM is installed in the /opt directory and provides a script in /etc/profile.d/ that allows to activate the OpenFOAM environment with the ofoam command (a shell alias).

Note: Scripts in /etc/profile.d/ are sourced only at the start of a session, so the command will not be available right after installation.


For installation of OpenFOAM in a development environment, the process is fairly straight forward on Arch Linux. The basic steps are as follows:

  1. Obtain source files from OpenFOAM
  2. Prepare build directory
  3. Create Preference File and Set Environment Variables for your installation
  4. Compile OpenFOAM sources
  5. Test OpenFOAM installation


Obtain source files

Since OpenFoam is a picky about its location, create a directory following its naming convention and extract the source code there:

$ mkdir $HOME/OpenFOAM
$ wget -P $HOME/OpenFOAM
$ tar -xvfz $HOME/OpenFOAM/OpenFOAM-v2206.tgz -C $HOME/OpenFOAM

Environment variables

Paste the following code into your .bashrc file. Whenever you want to run OpenFOAM you just have to run of2206 to initialize the environment. This has to be done prior to compilation.

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


Run of2206 to initialize the environment. Use foamSystemCheck to check if all requirements are installed, then foam to change into the project directory. Then you can use the following command to compile:

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

This compiles with all cores (-j), reduced output (-s, -silent), with queuing (-q, -queue) and logs (-l, -log) that can be inspected later.


To test for successful installation, run any test case, for example:

foamInstallationTest -full incompressible/simpleFoam/pitzDaily



Some things do not work correctly if you are not using bash. In the case of using zsh, you will need the bash-completion package, and add the following to your zshrc for the OpenFOAM scripts to work:

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

Then add the following environment variables, preferably into a zshenv file:

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

Paraview not installed

This happens because the dependencies are installed as separate packages, and not in the third-party apps directory of OpenFOAM. Either;

  • Add alias paraFoam='paraFoam -builtin' to your /opt/OpenFOAM/Open-FOAM-X.X/etc/bashrc.
  • For each project, touch $(echo "${PWD##*/}").foam and then open the touched file from paraview.

See also