MFIX (Multiphase Flow With Interphase Exchanges) with Intel compilers on a 64-bit Opteron Linux System

MFIX (Multiphase Flow With Interphase Exchanges) has been developed by the U.S. National Energy Technology Laborartory, providing transient data on the three-dimensional distribution of pressure, velocity, temperature, and species mass fractions.

MFIX requires user registration. Specifically the license requires: "It should not be redistributed in whole or in part." Seeking further clarification from the DOE what is really meant is "must" rather than "should", as per RFC2119.

Once regsitered you'll be able to download the gunzipped tarball (mfix.tar.gz) and extract (tar xvf mfix.tar.gz and change into the extracted directory. Regrettably plain-text documentation is not provided, requiring either the PDF also available on the web (also as a PDF!). Version numbers, of a sort, are available in the CHANGES file (e.g., "Changes from MFIX2007-4 (Date: 12/31/2007) to MFIX2010-1 (Date: 02/02/2010)").

To install MFIX you will need to set the environment variables for a version of Fortran. Intel compilers seem the best so if you have environment modules and export it (shouldn't be necessary, but experience shows it helps);

module purge
module load openmpi-intel/1.4.1
export Intel="/usr/local/openmpi/1.4.1-intel/"

Then, outside the model directory run sh model/make_mfix. Note that the documentation is incorrect on this point; there is no "mkmfix". Select 'n' for SMP, 'y' for DMP, 'n' for debug, 'y' for recompilation (if necessary), and /usr/local/openmpi/1.4.1-intel/include for the mpif.h location. Select [2] in for "Intel Fortran Compiler (IFORT - FCE for 64 bit) on AMD Opteron". Assuming you have followed all the instructions it should create an executable mfix.exe.