Architecture

Architecture#

Model ──────────▶ SystemModel ─────────▶ NumericalSystemModel ──▶ solver template ──▶ backend
PDE, closures,     operator slots          + reconstruction,        one sympy graph      NumPy · JAX · foam · AMReX
BCs                (flux, source, ...)     Riemann solver, kernels  per time step        (printed, compiled)
  • Model: model family, closures, boundary conditions

  • SystemModel: initial conditions, the derived operators

  • NumericalSystemModel: reconstruction order and limiter, Riemann solver

  • Solvers and options: hyperbolic or Chorin, CFL and dt, time order, MOOD, IMEX, restart

  • Backends: CPU, GPU, MPI, AD, coupling, code printing

  • GUI: compose and run a case in the browser