StackNordic¶
StackNordic reconstructs and prepares stored OpenFOAM results for DNS, LES and machine-learning workflows. It reads OpenFOAM.com and OpenFOAM Foundation cases, including reconstructed, uncollated, collated and grouped-collated layouts.
Documentation · Installation · API
Installation¶
Use Python 3.11 or 3.12. Install the PyPI release with pip:
pip install stacknordic
Or use uv in an existing virtual environment:
uv pip install stacknordic
Follow the public installation guide for optional environment setup, OpenFOAM requirements, installation checks and main or editable installation. The repository copy contains the same guide.
Reconstruct a case¶
Activate the Python environment and the OpenFOAM runtime, enter a decomposed case, and run:
stacknordic reconstruct --n-jobs -1 --progress
The OpenFOAM-style alias is equivalent:
stacknordic -reconstructPar --n-jobs -1 --progress
Select times, fields and another destination explicitly when required:
stacknordic reconstruct \
--case-dir cases/TaylorGreenVortex3D \
--output-dir output/TaylorGreenVortex3D \
--time-range 0 0.1 \
--fields U p nut \
--n-jobs 8 \
--progress
StackNordic isolates concurrent physical-time reconstructions, preserves the source case and removes temporary case views after success or failure. See the reconstruction API and CLI contract.
Read the case-to-dataset example for copyable Python steps and the expected output structure.
Core workflows¶
- Export reconstructed or decomposed fields directly, including time-local decomposition and mesh addressing.
- Compute progress variables and reaction rates from declared Cantera contracts.
- Package and compile Cartesian datasets as self-describing HDF5 snapshots or time series.
- Filter and downsample DNS data with declared Reynolds, Favre, variance and SGS reductions.
- Run a closed set of post-processing operations on OpenFOAM cases or exported Cartesian datasets.
StackNordic is independent of FoamNordic, but the projects are designed to be used together. FoamNordic owns solver execution and resident model coupling; StackNordic owns reconstruction, stored-data preparation, packaging and filtering.
Read the shared documentation site or the repository index for API, architecture and validation references.
Development¶
uv sync --dev
uv run pytest
uv run ruff check .
uv build