Components#

This chapter describes how the code is organised. It follows the TRACMASS Components chapter of the Fortran documentation (main program, main modules, namelist, projects) and maps each Fortran piece onto its JAX counterpart.

  • Main program: what tracmass.run and the integrators do, step by step, compared with TRACMASS.F90 and mod_loop.F90.

  • Grid and flux data: the C-grid, index conventions, and the three-layer split into GridFields, LazyFluxFields and FluxFields.

  • Advection schemes: the equations for the crossing time and the new position, for the time-stepping and the time-analytical schemes.

  • Integrators: windows, sub-steps, time interpolation, and the full-grid, patched and streaming variants.

  • GCM adapters: the equivalent of the Fortran projects folder.

  • Main modules: a tour of the Python package.

  • Fortran-to-JAX map: every Fortran routine and its TRACMASS-JAX equivalent.