Installation/Linux/foam-extend-3.0
For acute installation issues, please post on the corresponding cfd-online forum.
This page explains how to install the foam-extend project on various Linux distributions and Apple Mac OS X. If you have installed foam-extend on a platform that is not mentioned here or had to take other/additional steps for successful installation, please contribute and edit this page or send a message to the maintainer.
To quote[1] from the release notes of the project:
- The foam-extend project is a fork of the OpenFOAM® open source library for Computational Fluid Dynamics (CFD). It is an open project welcoming and integrating contributions from all users and developers. Previously known as OpenFOAM®-dev and OpenFOAM®-extend, it contains bug fixes and performance improvements, as well as extensions and additional features provided by community contributors (see list below), such as dynamic mesh and topological change support, turbomachinery extensions including general grid interpolation (GGI), cyclic GGI and mixing place, block-coupled matrix support, finite area method, comprehensive mesh motion capability and GPU support. For a full list, see below.
- Version 3.0, nicknamed "Jeju", is the current version of foam-extend. The release now continues the tradition and spirit of the original FOAM code developed by prof. Jasak and Mr. Weller during their time at Imperial College and released as the general purpose CFD/CCM package by Nabla Ltd. in 2000. In this spirit, we shall revert to original numbering scheme (foam-2.3.2, 13 December 2004) as release number 3.0. Visit http://foam-extend.org for more information.
- OPENFOAM® is a registered trademark of ESI Group. OpenFOAM-extend and foam-extend are a community effort not endorsed by ESI Group.
- ↑ http://sourceforge.net/p/openfoam-extend/foam-extend-3.0/ci/master/tree/ReleaseNotes-foam-extend-3.0
In the following chapters and sections is explained how to generally install foam-extend-3.0 and related dependencies, such as ParaView.
Contents
1 Installing from binary package
Binary packages are available for Ubuntu 12.04 and 13.10 as well as Fedora 19.
Download
Packages can be downloaded on SourceForge:
Download foam-extend files on SourceForge
Install packages
- For Ubuntu (and similar), download .deb package and run:
software-center foam-extend_3.0-1_amd64.precise.deb
- For Fedora (and similar), download .rpm package and run:
sudo yum localinstall foam-extend-3.0-1.fc19.x86_64.rpm
Setup user directory
See section First steps.
2 Installing from source code
Install required packages
If you installed on a system that is not mentioned here, please contribute and add it here
- On Ubuntu 12.04 and Ubuntu 13.10 run:
sudo apt-get install git-core build-essential binutils-dev flex \ bison zlib1g-dev qt4-dev-tools libqt4-dev libncurses5-dev \ libxt-dev rpm mercurial
and create an additional link:
sudo ln -s /usr/bin/make /usr/bin/gmake
- On Fedora 19 run:
sudo yum groupinstall "Development Tools" sudo yum install gcc-c++ binutils-devel bison flex m4 zlib-devel \ qt-devel qtwebkit-devel mercurial
Get the source code
- The recommended way is to get the source code through git source code management system. This way, you can get updates and bugfixes easily by running "git pull". To install into the default location run:
cd ~ mkdir foam cd foam git clone git://git.code.sf.net/p/openfoam-extend/foam-extend-3.0 foam-extend-3.0
- Alternatively, you can download a snapshot (.tgz) of the source code at SourceForce: Download foam-extend files on SourceForge
Then create installation directory and unpack:
cd ~ mkdir foam cd foam tar zxvf foam-extend-VERSION_NUMBER__COMMIT_NUMBER.tgz
Compile
- Set the environment variables:
- On bash (if unsure whether you are using bash, run "echo $SHELL"):
cd ~/foam/foam-extend-3.0 source etc/bashrc
- On csh:
cd ~/foam/foam-extend-3.0 source etc/cshrc
- On bash (if unsure whether you are using bash, run "echo $SHELL"):
- Optionally, set environment variable for Qt to compile ParaView:
- On bash (if unsure whether you are using bash, run "echo $SHELL"):
export QT_BIN_DIR=/path/to/qmake
- On csh:
setenv QT_BIN_DIR=/path/to/qmake
- On bash (if unsure whether you are using bash, run "echo $SHELL"):
- Optionally, set environment variable for compiling Cuda solvers:
- On bash, for example (replace "sm_30" with value according to your GPU architecture):
export CUDA_ARCH=sm_30
- On csh:
setenv CUDA_ARCH=sm_30
- On bash, for example (replace "sm_30" with value according to your GPU architecture):
- Start compiling:
./Allwmake.firstInstall
Setup user directory
See section First steps.
3 Installing on Apple with sparse image
- Download the sparse image from SourceForge:
Download foam-extend files on SourceForge
- Unpack and mount the image by clicking on the file
- Open a terminal and run:
mkdir foam cd foam ln -s /Volumes/foam-extend-3.0 . . foam-extend-3.0/etc/bashrc
4 First steps
After installing the foam-extend core, the first step should be to create the directory, where simulation cases will be held (this assumes that you have sourced etc/bashrc or etc/cshrc as described above):
mkdir -p $FOAM_RUN
When you have sourced etc/bashrc or etc/cshrc, you can use a shortcut to change to your run directory by typing:
run
You can now explore the tutorial cases, type:
tut
to change to the corresponding directory. To run a case, copy it to $FOAM_RUN and execute the solver application there.
For any questions, please refer to the forums at cfd-online.com