Validation Suite Overview

The validation/ directory contains script-driven reproducibility cases rather than unit tests. They are best read as a small evidence hierarchy:

  • verification: controlled numerical checks of conservation and advection-diffusion behaviour
  • independent evaluation: comparison against observations not used to define the model state
  • remote-sensing aerosol anchor: a real aerosol-column case in satellite-collocation space, exercising the aerosol-process extension under prescribed emissions
  • replay consistency: constrained experiments initialized and bounded by external products
  • gradient / AD checks: differentiability and inversion-readiness experiments

Case map

CaseRole in the docsMain question
MASS_CONSERVATIONverificationIs the finite-volume transport update discretely conservative and budget-consistent?
VMRverificationDoes a uniform mixing-ratio field stay uniform under real (divergent) winds (constancy invariant)?
GAUSSIANverificationDoes TARSA reproduce a controlled analytical advection-diffusion solution?
TVD_limiterverification / differentiabilityDoes the smoothed Koren limiter stay TVD-safe while remaining suitable for AD workflows?
ETEX1independent evaluationDoes TARSA recover the pathway, arrival timing, and receptor metrics of a real tracer release?
CAPTEXindependent field comparisonHow does the repository CAPTEX workflow handle interval-averaged station observations over North America?
FENNECremote-sensing aerosol anchorCan TARSA's aerosol-process extension reproduce a satellite-retrieved dust column under prescribed emissions? (lives in examples/FENNEC_june2011)
CAMSreplay consistencyCan TARSA preserve realistic 3-D tracer structure over a short constrained replay window?
GRADIENTSgradient / AD checksAre the forward-model sensitivities usable for optimisation and inversion workflows?

Practical Notes

  • Many scripts download or preprocess meteorology (ERA5, CAMS) and may require API credentials.
  • The credential setup used by the example and validation download steps is collected in Guide / Data Access.
  • Plotting is often handled by companion Python scripts (plot_*.py).
  • Some cases include curated figures and summary tables in the docs, while others currently document the workflow and output logic more than fixed reference figures.

Use the pages below for case-specific configuration, interpretation, and run commands.