AGILE code

AGILE is available on Github. If you have questions or notice problems, please raise an issue on https://github.com/amrvac/AGILE/issues.
Contributions via pull requests welcome!

Quick links

AGILE aims

AGILE is a GPU enabled parallel adaptive mesh refinement framework aimed at solving (primarily hyperbolic) partial differential equations by a number of different numerical schemes. The emphasis is on (near) conservation laws and on shock-dominated problems in particular. A number of physics modules are included; the hydrodynamics and the magnetohydrodynamics module are most frequently used. Users can add their own physics module or modify existing ones. At present, the framework supports only 3D simulations, in Cartesian, spherical, cylindrical, or logarithmic-radius spherical/cylindrical grid geometries (the curvilinear ones including the polar axis) -- see Coordinate systems.

AGILE is written in Fortran 2003, uses OpenACC or OpenMP target offloading (selectable at build time) for GPU offloading, and MPI for parallelization.

The philosophy behind AGILE is to use a single versatile code with options and switches for various problems. The advantage of such a general approach is easier maintenance, the compatibility of different parts, and the automatic extension of new features to existing applications. AGILE is not a fool-proof black-box design. A user needs to write subroutines for initial conditions, and for source terms or special boundary conditions when needed. AGILE's initial condition and IO subroutines are largely compatible with MPI-AMRVAC, enabling a quick transition of existing setups.

Development

AGILE is developed and maintained by an international team led by
Oliver Porth at the Anton Pannekoek institute for Astronomy, University of Amsterdam.

Major contributors are:

  • Adrian Kelly
  • Olaf Willocx
  • Hao Wu
  • Jesse Vos
  • Yuhao Zhou
  • Héctor R. Olivares Sánchez
  • Leon Oostrum
  • Johan Hidding
  • Victor Azizi
  • Chun Xia
  • Rony Keppens
  • Jannis Teunissen

Initial development was supported by the Netherlands eScience Center under grant number NLESC.OEC.2023.008 (AGILE).

Version 1.0 can be referenced via ArXiv id 2607.19277 (submitted to RASTI, in review)

We acknowledge significant prior work on the upstream MPI-AMRVAC/VAC/BHAC codes (bhac.science, amrvac.org) with past contributors listed under https://amrvac.org/md_doc_2acknowledgments.html.

AGILE Documentation

This site combines the AGILE source-code API reference (generated by FORD from !>/!< comments under src/) with narrative documentation adopted from upstream MPI-AMRVAC. See About the AGILE documentation for how this site itself is generated, and how to write documentation comments.