1. About

1.1. MFiX

MFiX is an open-source multiphase flow solver and is free to download and use. A one-time, no-cost registration is required prior to downloading the source code. To register, go to https://mfix.netl.doe.gov/ and click on the “Register” button in the upper right corner. Once you have read the notice, you can submit your application by clicking on “REGISTER.” After your application has been reviewed and accepted, you will receive an email notification and instructions on how to download the code. Please allow for 2-3 business days for your registration to be processed.

Potential users may find reviewing the Frequently Asked Questions section of the MFiX website useful before downloading the code.

1.2. Development state of MFiX models

MFiX provides a suite of models that treat the carrier phase (typically the gas phase) and disperse phase (typically the solids phase) differently. Their current state of development is summarized in the tables below.

Symbol description for the following tables:

Symbol

Description

\(\bullet\)

Implemented and fully tested

\(\circ\)

Implemented with limited testing

\(\square\)

Not tested or status unknown

Models not extended to DMP-parallel are only available for serial runs

Models not extended to SMP-parallel are available for SMP runs but do not scale with thread count

1.2.1. MFiX-TFM (Two-Fluid Model)

MFiX-TFM (Two-Fluid Model) is an Eulerian-Eulerian model, which supports a broad range of capabilities for dense, reacting, multiphase flows by representing the fluid and solids as interpenetrating continua. This is the most mature MFiX model and is capable of modeling multiphase reactors ranging in size from benchtop to industry-scale. Approximation of the solid phase as a continuum typically allows for faster simulation time than Lagrangian techniques; however, it also introduces the need for accurate mathematical models to capture realistic solids phase behavior. This includes transport properties, heterogeneous reaction kinetics, and constitutive relations for interaction between fluid and solid phases, e.g., solids phase drag and interphase heat transfer.

Feature

Serial

†DMP

‡SMP

Momentum Equations

\(\bullet\)

\(\bullet\)

\(\bullet\)

Energy Equations

\(\bullet\)

\(\bullet\)

\(\bullet\)

Species Equations

\(\bullet\)

\(\bullet\)

\(\bullet\)

Chemical Reactions

\(\bullet\)

\(\bullet\)

Cartesian cut-cell

\(\bullet\)

\(\bullet\)

1.2.2. MFiX-DEM (Discrete Element Model)

MFiX-DEM (Discrete Element Model) is an Eulerian-Lagrangian model that treats the fluid phase as a continuum and models the individual particles of the solid phase. This is a relatively new variation on MFiX. While the treatment of individual particles can provide higher fidelity over a broad range of flow regimes (from dilute to packed), it becomes very challenging (in terms of computational resources) when dealing with very large numbers of particles for large-scale simulations. These large-scale applications will require high performance computing (HPC) resources and large amounts of computer time. Code optimization and speed up are critical research fronts to support industrial scale applications.

Feature

Serial

†DMP

‡SMP

Momentum Equations

\(\bullet\)

\(\bullet\)

\(\bullet\)

Energy Equations

\(\bullet\)

\(\bullet\)

Species Equations

\(\bullet\)

\(\bullet\)

Chemical Reactions

\(\bullet\)

\(\bullet\)

Cartesian cut-cell

\(\circ\)

\(\circ\)

1.2.3. MFiX-CGP (Coarse Grained Particle)

MFiX-CGP (Coarse Grained Particle) is an Eulerian-Lagrangian model similar to DEM, where particles are grouped into larger coarse-grained particles (CGP). The collisions between CGPs are resolved the same way as in DEM. This modeling approach is more affordable than DEM since fewer CGPs need to be tracked. This modeling approach falls between DEM and PIC in terms of computational resources.

Feature

Serial

†DMP

‡SMP

Momentum Equations

\(\bullet\)

\(\bullet\)

\(\bullet\)

Energy Equations

\(\bullet\)

\(\bullet\)

Species Equations

\(\bullet\)

\(\bullet\)

Chemical Reactions

\(\bullet\)

\(\bullet\)

Cartesian cut-cell

\(\circ\)

\(\circ\)

1.2.4. MFiX-PIC (Multiphase Particle in Cell)

MFiX-PIC (Multiphase Particle in Cell) is another Eulerian-Lagrangian model that represents the fluid as a continuum while using “parcels” to represent groups of real particles with similar physical characteristics. The MFiX-PIC approach offers reduced computational cost over MFiX-DEM as there are typically fewer parcels to track and parcel collisions are not resolved. However, the added modeling approximations influence the overall accuracy of the method. Development, validation, and optimization of modeling approximations are critical research fronts.

Feature

Serial

†DMP

‡SMP

Momentum Equations

\(\bullet\)

\(\bullet\)

\(\circ\)

Energy Equations

\(\bullet\)

\(\bullet\)

Species Equations

\(\bullet\)

\(\bullet\)

Chemical Reactions

\(\bullet\)

\(\bullet\)

Cartesian cut-cell

\(\bullet\)

\(\bullet\)

1.2.5. MFiX-Hybrid (Eulerian-Lagrangian-Eulerian)

MFiX-Hybrid (Eulerian-Lagrangian-Eulerian) is a blend of MFiX-TFM and MFiX-DEM that represents the fluid as a continuum and models solids as either a continuous phase (TFM) or discrete particles (DEM). This technique is presently restricted to solving only the momentum equations to yield hydrodynamic predictions. This model is still in its infancy and has seen only limited testing.

Feature

Serial

†DMP

‡SMP

Momentum Equations

\(\circ\)

\(\circ\)

\(\circ\)

Energy Equations

Species Equations

Chemical Reactions

Cartesian cut-cell

\(\circ\)

\(\circ\)

\(\circ\)

Note

The hybrid model is not currently supported and users should use caution if they decide to explore the hybrid model. Creating MFiX-Hybrid models in the GUI is not supported.

1.3. GUI

The MFiX GUI is a front-end tool that allows users to quickly set-up MFiX models, run the developed models, and provide post-processing tools with the goal of making MFiX easy to use.

The GUI is written in Python using the cross-platform Qt framework. The Anaconda platform is used for MFiX dependencies, which allows us to support MFiX on Linux, Windows, and Mac. The Visualization Toolkit (VTK) is used to visualize and manipulate the input geometry.

1.4. Support Forum

When your subscription to MFiX is accepted, you are automatically added to the MFiX forum, where important announcements about MFiX are shared with the MFiX community. If you are already an MFiX member, use you current credentials to participate in the forum.

The Forum is a discussion platform for MFiX, Nodeworks and Tracker software. Developers and users can post topics (discussion threads) to various categories for each software.

Users are encouraged to participate in the discussion and share their work (input files, udf’s, images or small animations showing simulation results) to benefit the entire MFiX community.

The support forum is located at https://mfix.netl.doe.gov/forum. Click on the topics of interest to you.

Support forum etiquette:

  1. Do not post offensive or inappropriate material. Stay courteous and respectful at all times.

  2. Please allow sufficient time (say 2 to 3 business days) for MFiX developers and users to reply before posting unanswered questions again.

  3. Post questions in the appropriate forum category. Do not send requests or emails directly to MFiX developers or other users unless a prior arrangement has been made. This ensures questions and answers are archived, and it allows the entire MFiX community to engage. Additionally, follow-up questions should occur in the same thread.

  4. Do not ask for a copy of a reference, e.g., a journal article. Do not post copyrighted material.

  5. Prior to posting questions regarding MFiX installation or compilation issues, please search the forum to see if your question has already been answered.

  6. When posting a question to the forum, provide a complete description of the issue you encountered. It may be useful to provide the following information in your post:

    1. MFiX version you are trying to install or run

    2. Some details on your operating system environment (for Linux: copy and paste the output of the command “uname –a”, Linux distribution name and version also)

    3. Your compiler name and version number (e.g. ifort -v will give the version number for Intel Fortran compiler)

    4. Output for your $PATH environment (in csh type echo $PATH)

    5. Your MPI library name and version number (if compilations problem with DMP mode encountered but make sure you can compile and run a simple hello world type MPI program with your current installation) Also please provide hardware details such as number of cores per socket in your system (or send the output for “cat /proc/cpuinfo” and how many cores you are trying to utilize.

Note

Common reasons you may not receive an answer to your request

  1. Your question has already been answered and is available in the archive.

  2. You did not provide sufficient description of your problem (saying “It doesn’t work” is not useful).

  3. Your question is outside the scope of the MFiX forum.

1.5. User contribution

If you wish to contribute to the development of MFiX, please contact the MFiX team at admin@mfix.netl.doe.gov. We are looking for simulation results (figures, animations, input files, user-defined subroutines), and new models that could benefit the entire MFiX community. If you have written or know any publication that uses MFiX, please let us know and we will post the citation on the website (https://mfix.netl.doe.gov/publications). Proper credit will be given to all contributors.