Introduction
MFIX-Exa is a new massively parallel code for computing multiphase flow in which solid particles interact with the gas surrounding them. It is built on top of AMReX, a publicly available software framework designed for building massively parallel block-structured adaptive mesh refinement (AMR) applications.
MFIX-Exa relies on the same fundamental physics as in MFiX but the spatial and time discretizations differ. Specifically,
Fluid velocity is defined at cell centers; pressure is defined at nodes.
The advection algorithm includes an intermediate MAC projection for face-centered advection velocities
Incompressibility of the fluid is imposed through the use of a projection at the end of the time step
The representation of the complex geometry includes mesh refinement around the fluid-solid interface, which is represented used the embedded boundary, or cut-cell approach
Parallelization via flat MPI, OpenMP, hybrid MPI/OpenMP, or MPI/MPI.
Porting of MFIX-Exa to GPUs is in progress.
Parallel I/O using AMReX native I/O or HDF5.
Plotfile format supported by AmrVis, VisIt, ParaView, and yt.
MFIX-Exa is being developed at NETL and LBNL as part of the U.S. Department of Energy’s Exascale Computing Project (ECP). MFIX-Exa heavily leverages AMReX which is also supported by ECP as part of the AMReX Co-Design Center.