Examples

Runnable notebooks spanning flow, combustion, acoustics, and thermoacoustics.

The examples live as notebooks under examples/ in the repository. A selection is executed at build time and shown here as full pages; the rest link out to their source (marked ↗) so you can run them yourself. Each notebook declares its own title, description, and a render flag in its metadata.nefes block, so this gallery is generated straight from the notebooks with no separate list to maintain.

Getting started

Example What it shows
Converging nozzle from a UI-exported case Load a network and its boundary conditions from a UI-produced YAML file and solve the mean flow.
Saving and loading cases ↗ Write a solved network back to the native YAML (case plus results) and read it in again.

Flow

Example What it shows
Composite elements: one element, many atoms A composite element presents as one element but expands at build time into a small graph of atomic elements joined by internal edges.
Gas-turbine secondary-air system ↗ Solve a large showcase network loaded from YAML (gas_turbine_large.yaml).
Huge flow network: 1000+ elements ↗ A stress test solving a programmatically generated network with over a thousand elements.
Parameter studies ↗ The named-parameter API: the addressable inventory, validated writes, the pristine-base with_params idiom, and nefes.parameter_study sweeps.

Combustion

Example What it shows
Reacting-flow fundamentals The building blocks behind the combustor examples: fuel injection, a heat-release flame, and the frozen and equilibrium gas states.
Species libraries: automatic, explicit, and Cantera mechanisms Build the same hydrogen/air flame three ways: an automatic product slate, an explicit species pool, and a Cantera-format mechanism.
Gas-turbine combustor (reacting mean flow) ↗ A complete combustor as a network: compressor-discharge air, fuel injection, a flame, and dilution to the outlet.
Multi-fuel combustion manifold ↗ Burn three different fuels in three parallel branches off one air supply, then remix the products into a single outlet.
Multiple fuels: octane primary and hydrogen reheat ↗ Two very different fuels injected at different positions and burned in sequence.
Rich-quench-lean (RQL) combustor ↗ Stage combustion rich, quench with air, then burn lean, the classic low-NOx arrangement.
The burnt marker: an orientation-proof reacting closure ↗ How each edge is labelled frozen (unburnt) or equilibrium (burnt) so a reacting network stays consistent regardless of edge orientation.

Acoustics

Example What it shows
Helmholtz resonator Build a Helmholtz resonator and see how the storage block M enters the acoustic operator A(omega).
Acoustic refinement ↗ When discretization matters for acoustics: a horn’s scattering matrix converges as O(1/N) with segment count.
Analytic continuation of tabulated transfer functions ↗ Turn tabulated complex data known only on a real frequency grid (a flame transfer function or a boundary reflection coefficient) into an analytic model usable off the real axis.
Animated mode shapes ↗ Visualize the continuous, spatially-resolved perturbation field of a network mode as an animation.
Compositional (indirect) noise at a choked nozzle ↗ A composition inhomogeneity accelerated through a compact choked nozzle radiates sound, mirroring entropy-spot noise.
Eigenmode analysis ↗ Linear stability: a network’s free acoustic oscillations as the roots of det A(omega)=0 by contour integration.
Frequency-dependent reflection ↗ A terminal’s reflection coefficient as a constant, a frequency table, or a callable frequency-domain model.
Inertance and end corrections ↗ How inertance and end corrections on the jump elements populate the storage block M of the acoustic operator.
Outflow boundaries and acoustic power ↗ Compare flow-fixing outflow boundaries (choked nozzle and metered bleed) and their acoustic-power balance.
Perturbation boundary conditions ↗ The PerturbationBC acoustic closure carried by every single-port terminal, and how to set it.

Thermoacoustics

Example What it shows
Cavity modes and intrinsic (ITA) modes A Rijke tube carrying both cavity resonances and intrinsic thermoacoustic modes, and three ways to tell them apart: anechoic ends, eigenvalue continuation in the flame gain, and a Nyquist stability map.
Self-excited Rijke tube The fundamental thermoacoustic oscillator: a duct with a heat source that, under the right phase, self-excites an acoustic instability.
Entropy noise: generation at a flame, conversion at a nozzle ↗ A fluctuating flame both radiates sound directly and sheds entropy spots that convert to sound at a downstream nozzle.
Equivalence-ratio instability ↗ Fuel-supply combustion instability: a chamber fluctuation modulates fuel flow -> equivalence ratio -> unsteady heat release.
Identifying a flame’s dynamic response ↗ Extract a flame transfer function inside a multi-element gas-turbine combustor by system identification.
Indirect-noise thermoacoustic instability ↗ A compact flame in a duct ending in a choked nozzle goes unstable through the entropy (indirect-noise) path.
TUM BRS swirl burner ↗ Benchmark against Emmert et al.: a mixed acoustic and intrinsic (ITA) spectrum rebuilt from a digitized flame response.
The EM2C combustor: a cross-code check against OSCILOS ↗ Reproduces the published eigenvalue of the stable EM2C swirl combustor (OSCILOS technical report, Sec. 5.4.1) from a solved mean flow.

Validation

Example What it shows
Validation: Greyvenstein and Laurie (1994) Verify the mean-flow solver against Example 3 of Greyvenstein and Laurie (1994), a segregated CFD pipe-network benchmark.
Validation: entropy generator (De Domenico et al. 2019) ↗ Validate the perturbation network for lossy nozzles against De Domenico et al. (2019).
Back to top