Appearance
Ideal MHD
The ideal-MHD verification of FLUME: the conservative MHD system with cell-centred check.sh under src/tests/flume/verification/mhd/<case>/ that runs it (CPU by default, FLUME_EXE=exe/adam_flume_fnl for the GPU backend) and an oracle that asserts the physics: an exact solution, a reference run, a symmetry or a conservation property. All runs use 2 MPI ranks and WENO5 unless a page says otherwise; the models are described in models and the schemes in numerics.
Seven scripts (rj2a, riemann, linear-wave, cpaw, orszag-tang, rotor, field-loop) also run on the weno-riemann scheme through the shared --numerics option (MHD on weno-riemann).
| Case | ID | What it verifies |
|---|---|---|
| Ryu–Jones 2a: all seven waves | MV-4 | the whole MHD path against an exact 7-state solution; x/y/z bitwise; GLM inert in 1-D |
| Brio–Wu and Ryu–Jones 4d | — (mhd/riemann) | clean runs near the eigensystem degeneracies; the positivity floors engage and stop as they should |
| MHD plumbing | — (M2-P1) | the MHD model end to end: the fast-speed and |
| MHD with a zero field | MV-2 | MHD with |
| GLM divergence cleaning | MV-3, MV-10 | the GLM telegraph system against its exact solution; div(B) decay of the Dedner peak, uniform and across seams; the divb_tol monitor |
| Order of accuracy | MV-5, MV-6, MV-7 | fifth order on linear waves, the circularly polarised Alfvén wave and the magnetised vortex |
| MHD conservation across AMR seams | MV-11 | every MHD integral, |
| Orszag–Tang vortex | MV-12 | 180° symmetry, conservation and positivity, uniform and across 2:1 seams |
| MHD rotor | MV-13 | symmetry under rotation with |
| Field loop advection | MV-9 | the divergence error GLM leaves, the loop dissipation, CPU–FNL agreement on |
| Rotated shock tube | MV-8 | |
MHD on weno-riemann | RV-5, RV-6, RV-7 | the HLLD scheme on the M2 verifications |
| EGLM cleaning | EV-2, EV-3, EV-4 | the energy-consistent cleaning: telegraph solution, EGLM = GLM at |
| Positivity limiter | PV-1 to PV-5 | positivity on magnetised blasts and near vacuum, inactivity on smooth flow, 2:1 seams |
| Quadtree AMR | MV-15 | 2:1 seams on quadtrees against the octree reference |
The Ryu–Jones 2a split in two realms (MV-14, mhd/multirealm) has no page of its own: it is on the multi-realm page.
Regenerating the figures
The check.sh scripts delete their checkpoints after the oracles, so the figures are drawn from re-runs:
bash
cd src/tests/flume/verification
./make_doc_runs.sh <runs-dir> blast vacuum rj2a order mhd rotated quadtree # every MHD figure run
./make_doc_figures.py --out ../../../../docs/public/flume --runs <runs-dir> \
--only blast near-vacuum mhd-riemann order glm-pulse orszag-tang rotor field-loop eglm-energy \
weno-riemann rotated-shock-tube quadtreeeglm-energy reads the conservation histories kept in the mhd/orszag-tang work directories. The group mhd (issue #85, R2a) writes the runs of the gallery figures: Brio–Wu, RJ4d, the GLM pulse, Orszag–Tang and its AMR run, the rotor, the field loop, and RJ2a on HLLD with primitive interpolation.