AMReX is a software framework containing all the functionality to write massively parallel,
block-structured adaptive mesh refinement (AMR) applications.
Development of AMReX is centered at LBNL with contributions from NREL and ANL. All three labs are part of the
DOE Exascale Computing Project's Block-Structured AMR Co-Design Center.
Key features of AMReX include:
Primarily C++ with Fortran interfaces available
Support for 1D, 2D and 3D
Support for cell-centered, face-centered, edge-centered, and nodal data
Support for particles and particle-mesh operations
Support for embedded boundary (cut cell) representations of complex geometries
Support for hyperbolic, parabolic, and elliptic solves on hierarchical adaptive grid structure
Optional subcycling in time for time-dependent PDEs
Hybrid parallelization strategy including MPI, OpenMP, OpenACC and CUDA support
Highly efficient parallel I/O, including native and hdf5 format
Plotfile format supported by AmrVis, VisIt, ParaView, and yt.
AMReX Source & Documentation
AMReX is publicly available at
Extensive documentation is availble at
AMReX Core Development Team