Skip to content

Component index — model · theory · example · tutorial

This is the single cross-reference for every component aeolus1d models. Each row links the four things you usually want together but that otherwise live on separate pages:

  • Model used — the physics/numerics, named, with the key reference. Full citations are in the linked theory section.
  • Theory — the equations, in Theory.
  • Prose / fields — the narrative closure write-up in Closures, and the field-level dispatch table in Closures — reference (lists the exact TOML keys each kind consumes).
  • Example — a self-contained runnable examples/*.toml (run with aeolus1d run examples/<file>); plot scripts mirror each by index in examples/plots/.
  • Tutorial — a guided walkthrough, where one exists.

If you are new, read the Tutorials first — they walk the pipeline end-to-end. This page is the lookup you come back to when you need "where is component X documented, and what's a working case I can copy?".

How the columns map to the solver pipeline

The sections below follow the order data flows through a run: initial/geometry → spatial scheme → EOS → source closures → species & reactions → boundary conditions → network coupling → engine components → controllers → vehicle system → learned seams. The same order the runtime uses in Runtime data flow.


1. Initial conditions & geometry

Component (kind) Model used Theory Example
Initial field — uniform / riemann / regional / mode Direct primitive-state init; Riemann = left/right discontinuity at x0 §1.1 Quasi-1D Euler 01_single_pipe_sod.toml
Area profile — parabolic / tanh_step / tabulated Quasi-1D area-source term A(x) §2.1 Finite-volume discretisation 02_cd_nozzle.toml

→ Tutorial: Sod shock tube.

2. Spatial scheme & flux (core numerics)

Component Model used Theory Example
Reconstruction — 1st-order / MUSCL / MP5 MUSCL-Hancock slope-limited; MP5 (Suresh-Huynh) 5th-order §2.2 Spatial reconstruction 23_mp5_sod.toml
Riemann flux — HLLC / HLLC-LM HLLC (Toro); HLLC-LM low-Mach fix (Thornber) §2.3 Riemann solver 24_hllc_lm_pulse.toml
Time integration — SSP-RK / implicit-Euler / BDF2 / Radau Explicit SSP-RK2/3; implicit block-Thomas Newton with Phase I-Y Picard outer loop (adaptive_picard) §2.4 Time integration, Numerics, Implicit-solver reference 40_implicit_adaptive_pipe.toml, 54_adaptive_picard_turbo.toml, 57_picard_stiffness_step.toml

3. Equation of state

Component (kind) Model used Theory & prose Example
EOS — ideal Ideal gas p = ρRT §1.2 EOS · Closures: Gas EOS most examples
EOS — redlich_kwong / peng_robinson Cubic real-gas with closed-form analytic Jacobians §1.2 EOS · Closures: real-gas Jacobians 09_real_gas_shock_tube.toml, 17_real_gas_nozzle.toml, 18_real_gas_catalyst.toml, 19_real_gas_plenum.toml
EOS — tabulated CoolProp-tabulated (T, ρ)→(p, e, ∂p/∂T, ∂p/∂ρ) panel, built at build_network time §1.2 EOS 58_tabulated_eos_implicit.toml

Notes: EOS is per-pipe — [pipe.eos] R_gas overrides [gas] R_gas so each pipe can carry a different working fluid. Real-gas/tabulated sound speed uses the local cv_real = ∂e/∂T|_ρ (ideal cv plus the departure term), not the scalar reference cv.

4. Source-term closures

Family (kinds) Model used Theory · prose · fields Example
Friction — darcy_const / colebrook / minor_loss Darcy-Weisbach; Colebrook-White ε/D; bend & minor-loss K §3.1 Friction · prose · fields 77_pipe_flow_heat.toml, 78_pipe_bend_loss.toml, 79_orifice_plate.toml, 81_bend_geometric.toml
Wall heat — constant_twall / egr_cooler / charge_air_cooler / flow_nu Fixed-h; ε-NTU heat-exchanger; Nusselt-correlation convective §3.2 Wall heat transfer · prose · fields 44_egr_cooler.toml, 75_coolant_pipe.toml, 80_pipe_wall_warmup.toml, 82_multilayer_wall.toml
Porous — darcy_forchheimer / _kc Darcy-Forchheimer (α/β or K/C_F) + Sutherland μ §3.3 Porous media · prose · fields 05_catalyst_plug.toml (substrate)
Catalyst — two_phase_heat / _var_nu / mechanism Two-phase solid/gas energy, h·a_v·(T_s−T_g), var-Nusselt §3.4 Two-phase catalyst · fields 05_catalyst_plug.toml, 07_catalyst_thermal_front.toml, 18_real_gas_catalyst.toml
Particulate filter — diesel_particulate_filter Cake Δp (Konstandopoulos), soot load, NO₂/active regen Closures: Aftertreatment · fields 41_dpf_regen.toml, 49_dpf_no_inhibition.toml, 50_dpf_active_regen.toml, 55_dpf_regen_hrr.toml, 56_dpf_regen_lowmach.toml, 84_dpf_substrate_inertia.toml
DPF solid thermal mass — [pipe.filter.thermal] Per-cell cake T_cake, substrate-wall thermal inertia, canning loss to ambient fields 84_dpf_substrate_inertia.toml, 55_dpf_regen_hrr.toml
Catalysed soot filter — [pipe.filter.csf] Arrhenius CO + C₃H₆ oxidation on the washcoat, with mass-transfer-limited rate caps fields 41_dpf_regen.toml (passive by default)
Coolant coupling — [[coolant_coupling]] Cell-aligned gas-pipe ↔ coolant-pipe exchange through a dynamic wall fields 75_coolant_pipe.toml, 44_egr_cooler.toml

→ Tutorial: Aftertreatment chain. ADRs: ADR-0005 catalyst energy coupling.

5. Species transport & reactions

Operator-split (Strang) chemistry — see §7 Strang-split chemistry, §3.5 Species transport, and ADR-0001 operator-split stiff chemistry. Field-level table: Closures — reference: family reaction.

Reaction kind Model used Example
arrhenius_scr_demo / _multi_demo Single/multi-species Arrhenius demo 08_reactive_pipe.toml, 21_multi_species_kinetics.toml
nh3_ads_des NH₃ adsorption/desorption storage (Temkin α_des) 42_scr_urea_injector.toml
nh3_scr_kinetics Standard + fast SCR + NH₃ oxidation kinetics 42_scr_urea_injector.toml, 45_two_stage_scr.toml, 38_engine_turbo_scr.toml
nh3_slip_catalyst Ammonia-slip catalyst (SCR + selective ox) 43_scrf.toml
hc_oxidation / doc_oxidation / doc_oxidation_voltz HC/CO oxidation; Voltz self-inhibition kinetics 46_doc.toml
doc_oxidation_S DOC + sulfur poisoning coverage θ_S 61_doc_sulfur_poisoning.toml
twc / twc_brinkmeier Three-way catalyst; Brinkmeier O₂-storage (OSC) 74_twc.toml (OSC demo + plot); avl_cruise_m/c02012_gasoline.toml (twc); validation/heliyon_twc_co_oxidation/case_co2_production_300C.toml (twc_brinkmeier)
hnco_hydrolysis HNCO → NH₃ urea-decomposition branch 48_hnco_hydrolysis.toml
mechanism Spec-driven mass-action mechanism (mechanism_file, TOML/YAML) compiled to py_reaction_multi 35_mechanism_pipe.toml, examples/mechanisms/
Multi-species transport Y + Y_extras canonical layout 20_multi_species.toml
Per-cell variable γ γ(T, Y) built from species NASA-7 thermo → variable-γ HLLC (Karni); [pipe.species] per_cell_gamma (default off), gamma_T_from_energy (default on — energy-consistent T recovery, γ-contact pressure-preserving), caloric_thermo (default on since 2026-08-06 — inverts the true e = ∫c_v dT instead of the calorically-perfect e = c_v(T)·T, worth −105 K at 1000 K; inert unless per_cell_gamma is set) 87_multicomponent_variable_gamma_shock_tube.toml

Integrators: §7 — LSODA (15_strang_chemistry.toml) vs. @njit Bader-Deuflhard BS (16_bs_chemistry.toml). ADR-0003 canonical extras layout, ADR-0004 implicit-upwind QS species, ADR-0009 inflow-ghost species conservation. → Recipes: Aftertreatment chain, Train an ML chemistry surrogate. → Authoring a custom mechanism or adding a species: Chemistry file formats. → Thermo data for a species the seed DB lacks: aeolus1d thermo-db fetch pulls Burcat's ~3700-species NASA-7 database to a user-local cache (not bundled — it is non-commercial-use only, and aeolus1d is MIT). See Chemistry file formats — Burcat's database and CLI — aeolus1d thermo-db.

6. Boundary conditions

Theory: §4 Boundary conditions. Fields: Closures — reference: BC.

BC kind Model used Theory Example
wall / transmissive Reflecting wall / zero-gradient outflow §4.1 01_single_pipe_sod.toml
stagnation_inlet / pressure_outlet Isentropic stagnation in; static-p out §4.2, §4.3 02_cd_nozzle.toml
nonreflecting LODI / Poinsot-Lele characteristic §4.4 22_lodi_port.toml
transient_* (stagnation / pressure / mass-flow / velocity) Time-tabulated BC schedules, incl. species §4.5, §4.8 04_pulsed_intake.toml
valve_inlet / valve_orifice Cam-lift inlet; Winterbone-Pearson orifice flow §4.6 25_valve_inlet.toml, 26_valve_orifice.toml
mass_flow_inlet / velocity_inlet Prescribed ṁ or u with T0 §4.7 —
egr_valve / throttle Orifice valve with supply-gas composition §4.6 72_throttle_demo.toml, 62_egr_valve_ctrl.toml

7. Network coupling (junctions)

Theory: §5 Network coupling. Picard outer loop: Implicit network — Picard.

Junction kind Model used Theory Example
plenum 0-D mass + energy ODE volume §5.1 03_two_pipes_junction.toml, 11_neck_pipe_junction.toml
corberan Corberán CP+h pressure-loss junction §5.2 12_cp_junction.toml, 10_cp_junction_kloss.toml
ehr Extended Helmholtz Resonator (per-port u_n ODE) §5.3 13_ehr_helmholtz.toml
passthrough / biased_plenum Inline pass; biased AdBlue distributor plenum §5.1 42_scr_urea_injector.toml
Quasi-2D plenum Spatially-resolved Helmholtz volume §5.4 06_helmholtz_quasi2d.toml

→ Tutorial: Networks and junctions.

8. Engine components

Theory: §6 Engine components.

Component Model used Theory Example
Reciprocating cylinder Slider-crank volume; compressible-orifice valve coupling; well-mixed charge composition + complete-combustion products §6.1, ADR-0008, field reference 31_cylinder.toml, 50_two_cyl_engine.toml, 91_cylinder_species_transport.toml
Wiebe combustion Single/multi-Wiebe heat-release; knock retard §6.2 52_knock_event.toml
Compressor / turbine Quasi-steady map-driven; shared-shaft turbo §6.3 · surge/choke 27_compressor.toml, 28_turbo_shaft.toml, 83_turbo_robustness.toml
VGT / sequential turbo 3-D vane-axis map; twin-sequential; wastegate §6.3 55_vgt_3d_turbo.toml, 59_wastegate_boost_ctrl.toml, 60_twin_sequential_turbo.toml
Variable valve timing Cam-phase shift (Phase E5) §6.4 (engine cases)
Full engine chain Cylinders → turbo → aftertreatment → tailpipe §6 39_4cyl_engine_turbo_scr.toml, 71_ktm_510_si.toml

→ Tutorial: Engine end-to-end · Post-processing.

9. Closed-loop controllers

Prose: Closures: Closed-loop controllers.

Controller Model used Example & recipe
Throttle PI Manifold-pressure feedback 72_throttle_demo.toml → recipe
EGR + O₂ feedback EGR-valve closed loop on O₂ 62_egr_valve_ctrl.toml → recipe
VGT / wastegate boost Boost-pressure PI 51_vgt_boost_ctrl.toml, 59_wastegate_boost_ctrl.toml
Spark / knock retard Spark-timing & knock controllers 63_spark_timing_ctrl.toml, 52_knock_event.toml
DPF heater Active-regen PI on cake temperature 53_dpf_heater_ctrl.toml

10. Vehicle system / drive cycles

Component Model used Doc Example
Drive cycle Vehicle longitudinal dynamics, gear/road load Vehicle system 85_vehicle_drive_cycle.toml, 76_wltp_lite_dpf.toml
Electrified drive cycle Parallel-hybrid engine/e-motor torque split, coulomb-counted battery SoC Vehicle system 86_electrified_drive_cycle.toml

Vehicle drive-cycle cases run with aeolus1d drive-cycle <file> --out trace.csv (the self-contained cycle path), not aeolus1d run.

11. Learned / ML seams

Pattern: Closures: ML substitution pattern.

Seam (kind) Model used Example & recipe
Junction BC — learned_npz NN port-state surrogate 14_py_junction_bc.toml, 29_learned_junction_bc.toml
Turbo map — learned_npz NN compressor/turbine map 30_learned_turbo_map.toml
Surface-chemistry surrogate NN reaction-rate surrogate → recipe

Not on this page

A few subsystems are documented but aren't per-component rows:

  • Inverse problems / [optimize] — fitting model parameters to data: §9 Inverse problems, examples/optimize/.
  • Acoustic mode analysis — Helmholtz + FEM eigensolver + state-space linearization: §8 Acoustic mode analysis, Mode analysis.
  • Run / case settings — every [case] / CaseHeader field: Run settings.
  • Import from AVL Cruise M / GT-Suite — Interop, examples/avl_cruise_m/.
  • Validation suites — paired with published/proprietary data: Validation dossier, examples/validation/.
  • Driving from Python — the load_case → build_network → run_case / dispatch_advance call surface, the Pipe state you read in a sampler, and the closure registry: API reference.