Steckler Room Fire

Why this case matters

The closed-cavity thermal cases (differentially heated cavity and the heated cylinder) prove the buoyancy coupling where the only motion is buoyancy and the walls are fixed-temperature. Real thermal wind engineering is rarely closed: a sun-heated atrium, a naturally-ventilated room, a buoyant exhaust venting through an opening all set up a stratified flow that exchanges mass with the outside through a vent. The next rung on the thermal ladder is therefore an open, internally-heated compartment, where the buoyant layer must organise itself and drive a self-selecting exchange through a doorway.

The Steckler room-fire experiment of Steckler et al.[1] is the canonical benchmark for that flow. A single compartment with one doorway and a steady floor-centred heat release develops a two-layer structure: a hot buoyant layer fills the upper room and spills out the top of the doorway, while ambient air is drawn in through the bottom, with a neutral plane in between where the through-door velocity reverses. The experiment measured the steady doorway velocity and temperature profiles and the resulting neutral-plane height, and these have become a de-facto standard for compartment-fire CFD. Reproducing the doorway exchange confirms that the variable-density buoyancy, a volumetric heat source and open boundaries act correctly together - the foundation for buoyant-plume and natural-ventilation CWE applications.

This case is posed as a real fire on the variable-density low-Mach closure: a several-hundred-kelvin hot layer with a temperature ratio T_hot/T_inf ~ 2, far outside the Boussinesq regime. The full nonlinear density variation is retained, rather than a linearized Boussinesq force at a reduced temperature ratio.

Important

Status: planned - not yet validated against reference data. The setup, dimensionless matching and reference data are documented below. The case depends on the variable-density low-Mach closure (Tier 3, Taha et al.[2]) plus the additional capabilities listed under the Prerequisites subsection; the comparison notebook is added once those are met and a GPU validation run is committed.

Physical description

A compartment of 2.8 m x 2.8 m floor and 2.18 m height has a single doorway, 0.74 m wide and 1.83 m tall, centred in one wall (the full-width-door reference configuration, test 16). A heat source sits at the centre of the floor. The released heat warms the air, which rises in a plume, spreads under the ceiling and forms a hot upper layer; the layer drives an outflow through the upper part of the doorway, balanced by an ambient inflow through the lower part. The dividing streamline is the neutral plane.

In nassu the room shell (back wall, two side walls, the front wall with its doorway gap and the ceiling) is a voxelized no-slip surface imported directly from the CAD geometry in real metres (geometry/steckler_room.stl); the floor is the no-slip ground domain face. The doorway faces -y and an ambient plenum (about 2 m deep) extends in front of it, with open (Neumann-outlet) domain faces, so the buoyant exchange develops freely before reaching the domain boundary. The heat release is a volumetric source region on the burner-stand footprint (geometry/stand.stl), feeding the finite-difference energy equation; the temperature field closes the equation of state rho = P / (r T), and the resulting density variation drives the fluid through the exact buoyancy term.

Governing equations

See also

The modeling rationale for this case - why a compartment fire needs the variable-density low-Mach closure rather than a Boussinesq surrogate, what the open doorway implies for the thermodynamic pressure, and how the dimensionless balancing carries over - is set out in the What the Steckler room fire needs section of the thermodynamics theory chapter. The equations below state the closure as instantiated by this case.

The case uses the variable-density low-Mach closure of Taha et al.[2] (Tier 3 of the thermal hierarchy). The density is slaved to the ideal-gas equation of state

(1)\[\rho = \frac{P}{r\,T}\]

rather than read from the population sum, with P the (spatially uniform, ambient-pinned) thermodynamic pressure, r the specific gas constant and T the temperature. The LBM zeroth moment is reinterpreted as the reduced hydrodynamic pressure p^h / (rho cs^2), and buoyancy enters the fluid as the exact body force

(2)\[F_\alpha = (\rho - \rho_\infty)\, g_\alpha\]

with gravity along -z (z up), so a hot, density-thinned parcel (rho < rho_inf) feels an upward force. The Boussinesq force is the linearized small-dT limit of (2); here the full nonlinear density variation is retained, which is what makes this a real fire.

The temperature is advanced each fluid step by an explicit finite-difference energy equation

(3)\[\frac{\partial T}{\partial t} + u_\alpha \frac{\partial T}{\partial x_\alpha} = \alpha\, \nabla^2 T + S, \qquad \alpha = \frac{\nu}{\mathrm{Pr}}\]

with a constant volumetric heat-release source S on the burner region and a thermal diffusivity alpha = nu / Pr. The reference’s convective wall heat loss enters through a Robin (TempRobin) wall condition on the room shell, which requires the energy-field wall BC on voxelized bodies listed under Prerequisites; absent that, the shell is treated as adiabatic.

The flow organises around a buoyancy-driven doorway exchange. The validation quantities are the steady doorway profiles and the neutral-plane height z_n, the height in the opening where the through-door velocity changes sign. Non-dimensionalised by the door height H_door, the neutral-plane fraction z_n / H_door and the profile shapes are the comparison targets.

Dimensionless numbers

The case is set up for dynamic similarity with the reference: the groups that govern the doorway exchange - the geometric length-ratios, the Prandtl number, the dimensionless heat-release rate Q*_H and the resulting real temperature ratio - are all matched. There is no lowered-gravity trick and no reduced temperature ratio: the hot layer carries its real T_hot / T_inf ~ 2. The single group that is not matched is the Reynolds (Grashof) number, which is reduced; the gross door exchange is approximately Reynolds-independent, so the neutral-plane fraction and the profile shapes carry over.

Dimensionless group

NIST test 16

This case

Matched

Door / room height H_door / H_room

0.84

0.84

yes

Door / room width W_door / W_room

0.26

0.26

yes

Prandtl number Pr = nu / alpha

0.71

0.71

yes

Dimensionless HRR Q*_H = Q / (rho_inf cp T_inf sqrt(g) H_door^(5/2))

~ 1.2e-2

~ 1.2e-2 (target)

target

Temperature ratio T_hot / T_inf

~ 2

~ 2 (real, emergent)

yes

Reynolds number Re = U_b H_door / nu

~ 3e5

~ 5e2

no (reduced; Re-independent)

The geometric ratios come straight from the documented setup (reference/steckler_test16_setup.csv) through the dx lattice mapping, and the Prandtl number is reproduced exactly by alpha = nu / Pr with Pr = 0.71. The temperature ratio is real: the burner source heats the energy field, the EOS (1) thins the hot-layer density (a T_hot / T_inf ~ 2 layer at rho_hot ~ rho_inf / 2), and the exact buoyancy (2) drives the door jet directly. The dimensionless heat-release rate Q*_H ~ 0.012 is the target the burner rate and the lattice gravity reproduce together at Ma < 0.1. The experimental neutral plane sits at z_n / H_door = 0.56.

The dimensionless fields match the experiment, so the analysis notebook reconstructs the dimensional doorway profiles (temperature in deg C and velocity in m/s) from the converged dimensionless profiles and the experimental scales. With a real temperature ratio the reconstruction carries no Boussinesq linearization error; the residual modelling limit is the reduced Reynolds number.

Simulation setup

The geometry is kept in real metres (the committed binary STLs) and the grid is driven by a single knob, dx, the level-0 lattice spacing in metres. The domain size, the STL placement (transformation scale and translation), the burner source region and every probe plane are all derived from dx and the fixed physical box with !math, so changing dx once (e.g. 0.04 m -> 0.03 m) rescales the whole case. geometry/lattice_mapping.py is the readable source of truth for the physical-to-lattice mapping (run it with --dx to print the resolved numbers).

Resolution is layered with static multiblock refinement: the level-0 grid is coarse (dx), the room interior is refined to level 1 (dx/2) and the room-shell walls to level 2 (dx/4). At the default dx = 0.04 m that is a 4 cm / 2 cm / 1 cm ladder. The run is a single statistically-steady simulation with the plume turbulence carried by an LES Smagorinsky model.

Parameter

Value

Resolution knob

dx = 0.04 m (level 0); room interior -> level 1 (2 cm), walls -> level 2 (1 cm)

Compartment

room 2.8 x 2.8 x 2.18 m; domain 112 x 144 x 72 at dx = 0.04 m (about 2 m ambient plenum in -y)

Doorway

0.74 x 1.83 m, centred in the front wall (faces -y); opening x in [-0.37, 0.37] m, z in [0, 1.83] m

Burner footprint

burner-stand footprint 0.42 x 0.48 m at the floor centre, volumetric energy source

Velocity set / operator

D3Q27 / RRBGK (D3Q27 is required by models.low_mach)

Relaxation time tau

0.53 (nu = 0.01 lattice)

Turbulence model

LES Smagorinsky, Cs = 0.1

Thermal closure

variable-density low-Mach (models.low_mach): EOS rho = P / (r T), r = 1, P_thermo = 1, T_ref = 1, rho_inf = 1 (EOS-consistent)

Thermal diffusivity alpha

0.01408 (= nu / Pr, Pr = 0.71)

Buoyancy

exact (rho - rho_inf) * g, gravity [0, 0, -1.0e-4] (sized for Q*_H ~ 0.012 at Ma < 0.1)

Heat source

volumetric region on the burner-stand footprint, floor cell layer only, constant energy.source_regions rate mapped from the 62.9 kW heat release

Reduced-pressure stabilization

pressure_filter = 0.1 (3-D stable range [0, 0.1667])

Fluid boundary conditions

floor (B) no-slip ground; top / plenum end / sides / back (F, S, W, E, N) Neumann outlet; room walls voxelized RegularizedHWBB

Energy wall BCs

floor (B) TempDirichlet T_w = 1 (cold ground sink); open faces (F/S/N/W/E) adiabatic ghost fallback; room shell convective heat loss (TempRobin, see Prerequisites)

Initial fields

quiescent, ambient T = T_ref = 1 everywhere

The burner rate and the lattice gravity are the calibration knobs: they are set together so the dimensionless heat-release rate matches Q*_H ~ 0.012 and the emergent hot-layer ratio reaches the experimental T_hot / T_inf ~ 2, read off the centreline / doorway plane_series, with the door jet kept at Ma < 0.1. At the default dx = 0.04 m the case is about 10.2 M lattice nodes (around 0.8 GB GPU, single precision); the level-2 near-wall shell dominates the cost, so coarsening it (or raising dx) is the main lever for a lighter run.

Reference and acceptance

The reference is the full-width-door, centred-fire reference burn (test 16, 62.9 kW) of Steckler et al.[1]. The documented experimental setup is tabulated in reference/steckler_test16_setup.csv; the doorway profiles and neutral-plane height are digitised into reference/doorway_profiles.csv (see reference/REFERENCES.md for provenance and the digitisation status).

A passing result reproduces, at steady state:

  • the doorway through-door velocity profile shape (inflow low, outflow high, single sign change),

  • the doorway temperature profile shape (cold lower layer, warm upper layer with a stratified interface),

  • the neutral-plane height fraction z_n / H_door within tolerance of the experimental value,

with the through-door mass balance closing (inflow ~ outflow) at steady state. All comparisons are non-dimensional, per the scope note above.

Prerequisites

Beyond the variable-density low-Mach closure, the case depends on:

  • A temperature wall BC on voxelized solid bodies. The convective wall heat loss on the room shell is a Robin (TempRobin) energy-field condition. The energy-field wall BCs apply to the six cardinal domain faces; the room shell is a voxelized STL body, so the case needs a temperature wall BC attachable to a voxelized body. Without it the shell is treated as adiabatic.

  • An EOS-consistent open boundary. The doorway and plenum use open Neumann-outlet faces. Under the closure the density is slaved to the EOS rho = P / (r T), so the open faces need a pressure boundary consistent with that identity rather than a fixed-density outlet.

  • A calibrated heat-release source. The 62.9 kW burner heat release maps to the finite-difference energy-equation source rate in lattice units, set together with the lattice gravity to reach Q*_H ~ 0.012 at Ma < 0.1.

Results

Note

The quantitative comparison notebook (doorway velocity / temperature profiles and the neutral-plane height against Steckler et al.[1]) is added once the Prerequisites are met and a GPU validation run is committed.