Research · written up July 2026
Working through the Zingg two-book arc
Lomax, Pulliam and Zingg wrote two textbooks that together run from the analytical foundations of a numerical scheme to shock capturing that works.
The question
Rebuilt from the two books alone, does the arc carry into 2-D, where both lanes are verification-gated and neither is validated?
Book one is the analytical layer: modified wavenumber, eigenvalue analysis of marching schemes, dispersion against dissipation, truncation error. Book two is the operational one: JST artificial dissipation, Roe with MUSCL reconstruction, multigrid. The books are a course; working them is not the same thing as reading them, and the difference is whether the schemes run.
Three structurally different solvers came out of it, each on the canonical problem it was built to handle: ARC1D (JST with an implicit finite-difference march), FLOMG (FAS multigrid, transonic), upwind1d (Roe with MUSCL and a TVD limiter set). They share kernels, so a change to the shared mathematics has to satisfy all three.
What the two lanes bought
One measurement neither could make alone. On grids of equal cells and against the exact Riemann solution, JST artificial dissipation spreads the contact discontinuity over 26 cells where characteristic-decomposition upwinding leaves 16, a factor of 1.6. Both counts come from the repository's own width rule at a tolerance of 0.02, run against the committed final states rather than read off a figure.
Where the codebase went after the books
Past their 1-D chapters. There is a shared library of the numerical fundamentals, 105 canonical outputs pinned by MD5 under one local gate, and two 2-D lanes: an ARC2D reconstruction and a 2-D upwind extension. Both are verification-gated. Neither is called validated, and the difference between those two words is the whole discipline the books were being worked for.
What it does not settle
There is no continuous integration behind any of this. One local check in the repository certifies the committed outputs; nothing runs in the cloud.
The contact-width comparison is one model problem at one grid spacing under one width metric. It is not a ranking of the two schemes.
- Where it stands
- The 1-D arc is done and holding. Both 2-D lanes are verification-gated and neither is validated.
- Next
- Carry the 2-D lanes: the ARC2D reconstruction toward its reference comparison, the upwind extension through its exact-solution ladder.
- Tools
- Python · ARC1D · FLOMG · upwind1d