Finite-difference/finite-volume (1D and 2D) solver for the compressible Euler equations; 2D FDM runs on uniform-Cartesian or curvilinear/body-fitted (Plot3D) grids with FVS as the high-order FD-WENO option (uniform order is scheme-dependent; curved-grid order is residual-structure-limited to ~3rd); canonical manual docs in doc/*.org and API docs generated by FORD.

cfd-solver

cfd-solver

Finite-difference and cell-centered finite-volume (1D and 2D) solver for the compressible Euler equations, implemented as an fpm library and executables. The method config key selects the spatial discretisation per block: 'fdm' (default in 1D) or 'fvm' (default in 2D). The 2D FDM path runs on uniform-Cartesian or curvilinear/body-fitted (Plot3D) grids and adds FVS flux splitting (Lax-Friedrichs, Steger-Warming, van Leer) as a genuinely high-order conservative FD-WENO option alongside the existing FDS Riemann solvers; on curved grids the achievable order is residual-structure-limited to ~3rd (a high-order residual redesign is a planned follow-up).

The canonical manual docs live in doc/developer-guide.org and doc/theory-guide.org. This FORD site is intentionally a light API and dependency-graph layer generated from source docstrings.

Documentation Roles

  • doc/developer-guide.org — authoritative manual for build/run workflows, platform support, configuration, examples, architecture, profiling, and operational behavior.
  • doc/theory-guide.org — authoritative manual for equations, derivations, and algorithmic background.
  • README.md — landing page and quick-start summary only.

Scope

The library supports configurable numerical schemes, multiple boundary conditions, built-in and external initial-condition workflows, checkpoint / restart, logging, profiling hooks, and a polling-friendly session API. GUI integration uses Cortex IPC (master spec §11–§13); the C ABI and shared-library path were removed in Phase I. See the developer guide for the current public option names, defaults, and build workflow.

Developer Info

Haiyu Wang