Contact details and license

The multifluid Fluidity/IC-FERST code base is developed and used at a number of academic institutions across the UK, including Imperial College London, the University of Aberdeen, Queen’s University Belfast, University of Cincinnati and London South Bank University. The code is released under the GNU Affero Public License version 3.0. Public releases are made at irregular intervals.

To request further information, please contact the head of the project: Professor Matthew D. Jackson.

Department of Earth Science and Engineering
Royal School of Mines
Prince Consort Road
Imperial College London
SW7 2BP

How to install


IC-FERST is developed and run on Linux. To install on such machines it is necessary to install certain supporting software.

The basic list of supporting software, and method of installation, is the same as for the single phase Fluidity code.

Installing on Ubuntu

This is the best supported operating system. Intructions to install the necessary packages using the system package managers are given here. Once the fluidity-dev package has been installed, your system should be able to compile the IC-FERST/ Multifluids Fluidity package, which may be downloaded at the foot of this page. The list of commands to get IC-FERST working is as follows:

Download it from GitHub here, or using the following command:

git clone https://github.com/ImperialCollegeLondon/multifluids_icferst.git

– Install dependencies

sudo apt-add-repository ppa:fluidity-core/ppa
sudo apt-get update
sudo apt-get install fluidity-dev

– Ubuntu 18.04, modify the .bashrc file in home to include

export PETSC_DIR=/usr/lib/petscdir/3.8.3

– Ubuntu 20.04, modify the .bashrc file in home to include

export FCFLAGS="-I/usr/include"

– Ubuntu 24.04, navigate to the root directory of your IC-FERST folder and set up the configuration file correctly by running

cd IC-FERST-FOLDER/
sudo apt-get install autoconf-archive python-is-python3 pkg-config
autoreconf --force --install

You may need to explicitly include the python dependencies

export PYTHONPATH=/usr/lib/python3

– Navigate to the root directory of your IC-FERST folder. You can install the application for all users by running:

cd IC-FERST-FOLDER/
sudo ./configure --enable-2d-adaptivity && sudo make install

– Or you can install it just for your user by running:

cd IC-FERST-FOLDER/
./configure --enable-2d-adaptivity --prefix=$HOME/ICFERST
make mp && make install

Using the diamond GUI to configure test cases

The input files are “EXAMPLE.mpml”. This files can be either manipulated using diamond a GUI, or a text file. To open the diamond GUI for ICFERST this is an example, found in the examples folder in IC-FERST-FOLDER/legacy_reservoir_prototype/tests/3D_BL

diamond -s IC-FERST-FOLDER/ICFERST/schemas/multiphase.rng 3D_test.mpml

Installing on other Linux systems

Although less well supported, the code has been found to run successfully on Red Hat and OpenSUSE systemd. A list of hints and tips for these and other systems may be found here.