The repository analysis can be rebuilt with:
python -m venv .venv
python -m pip install -r requirements.txt -r requirements-preprocess.txt
python scripts/preprocess/build_internal_convection_inputs.py --check
python scripts/run_all.py
python -m pytest -q
git diff --exit-codeThe workflow uses repository-relative paths and rebuilds geometry import files,
processed tables, numerical checks and figures from the committed Fluent CSV and
text exports. SVG figures use a fixed Matplotlib hash salt and omit date metadata,
so unchanged inputs produce unchanged SVG output. run_all.py does not launch
Fluent.
The direct Python dependencies used by the project are version-pinned. GitHub
Actions runs the same checks on ubuntu-24.04 with Python 3.13. The workflow
covers the internal-convection preprocessing, NASA comparisons, mesh and balance
checks, sensitivity summaries, figures and regression tests.
scripts/verification/replay_saved_state_reports.py provides a separate check
for the released fine-grid Fluent states. It requires a local licensed Fluent
26.1 installation and ansys-fluent-core==0.40.2 from
requirements-fluent.txt. The helper launches Fluent 26.1.0 in 2D double
precision with ui_mode="no_gui", opens a released .cas.h5/.dat.h5 pair and
recomputes the stored external heat-rate, mean-wall-temperature and outlet-Mach
report definitions.
Each run records the SHA-256 hashes of the case and data files together with the
requested and actual Fluent version, dimension and precision. The archived
checks for the two released fine-grid states are under
results/processed/verification/live_saved_state_audits/:
| Saved state | External heat rate [W] | Mean wall temperature [K] | Mass-weighted outlet Mach |
|---|---|---|---|
| fine SST, iter 236 | 35819.60242176461 |
655.619216610248 |
0.9012944409738727 |
| fine Transition SST, iter 556 | 28548.27415186197 |
608.87899709921 |
0.9033510682539843 |
The commands are:
python -m pip install -r requirements-fluent.txt
python scripts/verification/replay_saved_state_reports.py c3x_run145_nasa_exact_fine_SST_final_iter236.cas.h5 --output run145_sst_fine_saved_state_audit.json
python scripts/verification/replay_saved_state_reports.py c3x_run145_transition_sst_fine_final_iter556.cas.h5 --output run145_transition_sst_fine_saved_state_audit.jsonThe matching .dat.h5 files must remain beside the case files with the canonical
filenames listed in fluent/restart_manifest.csv. Fluent itself is not launched
in CI.
The source curves and solved meshes are retained, but the original SpaceClaim and Ansys Meshing GUI history, several interactive meshing controls and the operation sequence are not. The repository also has no full initialisation-to-final Fluent replay for the SST baseline or replay scripts for the internal-cooling and Transition SST sensitivity solves; those study outputs are checked in CI against the committed case matrices and reported numerical relationships.
The requirement files pin the project's direct Python dependencies but not every transitive package or the complete runner operating-system image. The tested GitHub Actions environment is therefore the practical reference for the Python rebuild rather than a bit-for-bit snapshot of the full software stack.