Rule × grid matrix

Auto-generated coverage matrix: which rules dispatch on which grid families, and the convergence-order observed by each Layer-B fixture.

The matrix below is regenerated from discretizations/ and the fixture trees under tests/conformance/ by tools/render_rule_matrix.py. Drop a new rule or a new grid into the catalog and CI updates this view — no hardcoded cells. Use the matrix to answer two questions:

  1. (user) “Does rule X work on grid Y?” — applicable cells are coloured; the number is the floor on observed convergence order baked into the rule’s Layer-B fixture (expected_min_order in discretizations/<family>/<rule>/fixtures/convergence/expected.esm).
  2. (contributor) “Where are the holes?” — missing cells flag rule × grid pairs the rule declares it serves but where the canonical or convergence fixture has not landed yet.

Cells legend:

  • order (green) — applicable, convergence fixture is running, value is the fixture’s expected_min_order floor.
  • canonical (blue) — applicable, cross-binding canonical fixture exists but no convergence fixture yet.
  • missing (amber) — applicable, no fixture yet (or fixture is structurally skipped pending an ESS harness extension). Visible dispatch hole.
  • n/a (muted) — rule does not declare this grid family in its applies_to block.
Rules: 12 Applicable cells: 12 Convergence: 9 Canonical only: 0 Missing: 3 Generated 2026-04-27T18:59:58Z
rulefamilyopcartesianlatlonverticalcubed_spherempasarakawaduo
centered_2nd_uniformfinite_differencegrad1.9n/an/an/an/an/an/a
centered_2nd_uniform_latlonfinite_differencegradn/a1.9n/an/an/an/an/a
centered_2nd_uniform_verticalfinite_differencegradn/an/a1.9n/an/an/an/a
covariant_laplacian_cubed_spherefinite_differencelaplaciann/an/an/amissingn/an/an/a
nn_diffusion_mpasfinite_differencelaplaciann/an/an/an/a1.9n/an/a
upwind_1stfinite_differencegrad0.9n/an/an/an/an/an/a
divergence_arakawa_cfinite_volumedivn/an/an/an/an/a1.9n/a
flux_limiter_minmodfinite_volumelimitmissingn/an/an/an/an/an/a
flux_limiter_superbeefinite_volumelimitmissingn/an/an/an/an/an/a
ppm_reconstructionfinite_volumereconstruct2.8n/an/an/an/an/an/a
weno5_advectionfinite_volumeadvect4.7n/an/an/an/an/an/a
weno5_advection_2dfinite_volumeadvect4.5n/an/an/an/an/an/a