embedded3 S2-6: the three closures default ON (oblique distance, transverse centroid correction, fine floor) — RTX_E3_WALL_DISTANCE=face RTX_E3_DIFFUSION_TRANSVERSE=0 RTX_E3_DISTANCE_FLOOR=coarse reproduce every earlier record digit for digit (checked: DFG 2D ny 62 host); DFG 2D D/h 30 c_D -0.19 % -> -0.01 %, 3D ny 124 6.1750 / 0.00844 / 0.1692 inside the bar on both routes
CI / Build (macos-latest) (push) Waiting to run
CI / Test (macos-latest) (push) Blocked by required conditions
CI / Test (ubuntu-latest) (push) Blocked by required conditions
CI / Python Bindings (maturin) (macos-latest) (push) Blocked by required conditions
CI / Python Bindings (maturin) (ubuntu-latest) (push) Blocked by required conditions
CI / WASM Build + Size Check (push) Blocked by required conditions
CI / Distributed Training Tests (push) Blocked by required conditions
CI / CI Success (push) Blocked by required conditions
CI / Build CPU-Only (Explicit) (push) Failing after 4s
Performance Benchmarks / Run Benchmarks (push) Failing after 4s
CI / Clippy Check (push) Failing after 5s
Documentation / Build User Guide (push) Successful in 6s
CI / Format Check (push) Failing after 10s
Documentation / Build API Documentation (push) Failing after 16s
CI / Build (ubuntu-latest) (push) Failing after 52s

Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
Omar Sobh
2026-09-18 19:05:51 -05:00
co-authored by Claude Fable 5.1
parent 9c3fac0755
commit dbc5dbaefb
@@ -100,7 +100,7 @@ pub struct Parameters {
/// α)|n_t|` (`n_t` the wall normal's part in the face plane) instead /// α)|n_t|` (`n_t` the wall normal's part in the face plane) instead
/// of `φ + ½h(1 α)`, which over-reads the distance on oblique walls /// of `φ + ½h(1 α)`, which over-reads the distance on oblique walls
/// by `½h(1 α)(1 |n_t|)` at every h (S2-5). `Parameters::default()` /// by `½h(1 α)(1 |n_t|)` at every h (S2-5). `Parameters::default()`
/// reads `RTX_E3_WALL_DISTANCE=oblique` (default: the recorded form). /// is ON since S2-6 (`RTX_E3_WALL_DISTANCE=face` restores the recorded form).
pub wall_distance_oblique: bool, pub wall_distance_oblique: bool,
/// The transverse part of the centroid diffusion (S2-6): two neighbour /// The transverse part of the centroid diffusion (S2-6): two neighbour
/// faces with different apertures have open-part centroids offset /// faces with different apertures have open-part centroids offset
@@ -108,11 +108,11 @@ pub struct Parameters {
/// carries `∇u · Δs_⊥` — a first-order wall position on oblique walls /// carries `∇u · Δs_⊥` — a first-order wall position on oblique walls
/// (≈ 0.1 h inside the body). Removed with the faces' own wall-normal /// (≈ 0.1 h inside the body). Removed with the faces' own wall-normal
/// gradients `(u U_b)/d_f`, in the cross AND the own direction. /// gradients `(u U_b)/d_f`, in the cross AND the own direction.
/// Needs `diffusion_centroid`. `RTX_E3_DIFFUSION_TRANSVERSE=1`. /// Needs `diffusion_centroid`. ON since S2-6 (`RTX_E3_DIFFUSION_TRANSVERSE=0`).
pub diffusion_transverse: bool, pub diffusion_transverse: bool,
/// The wall-distance floor at 0.01 of the smallest spacing instead of /// The wall-distance floor at 0.01 of the smallest spacing instead of
/// 0.05: the coarse floor doubles the distance of faces with α < 0.1 /// 0.05: the coarse floor doubles the distance of faces with α < 0.1
/// (the flat wall's θ 0.95 excess, S2-6). `RTX_E3_DISTANCE_FLOOR=fine`. /// (the flat wall's θ 0.95 excess). ON since S2-6 (`RTX_E3_DISTANCE_FLOOR=coarse`).
pub distance_floor_fine: bool, pub distance_floor_fine: bool,
/// The diffusive exchange of a fluid face with a SOLID neighbour face /// The diffusive exchange of a fluid face with a SOLID neighbour face
/// over the axis distance to the wall, `δ = min(h, d_f/|n_d|)`, and /// over the axis distance to the wall, `δ = min(h, d_f/|n_d|)`, and
@@ -155,11 +155,15 @@ impl Default for Parameters {
.ok() .ok()
.and_then(|v| v.parse().ok()) .and_then(|v| v.parse().ok())
.unwrap_or(1), .unwrap_or(1),
// The three S2-6 closures are ON by default; `RTX_E3_WALL_DISTANCE=face`,
// `RTX_E3_DIFFUSION_TRANSVERSE=0` and `RTX_E3_DISTANCE_FLOOR=coarse`
// together reproduce every record before S2-6 digit for digit.
wall_distance_oblique: std::env::var("RTX_E3_WALL_DISTANCE") wall_distance_oblique: std::env::var("RTX_E3_WALL_DISTANCE")
.is_ok_and(|v| v == "oblique"), .map_or(true, |v| v != "face"),
diffusion_transverse: std::env::var("RTX_E3_DIFFUSION_TRANSVERSE") diffusion_transverse: std::env::var("RTX_E3_DIFFUSION_TRANSVERSE")
.is_ok_and(|v| v == "1"), .map_or(true, |v| v != "0"),
distance_floor_fine: std::env::var("RTX_E3_DISTANCE_FLOOR").is_ok_and(|v| v == "fine"), distance_floor_fine: std::env::var("RTX_E3_DISTANCE_FLOOR")
.map_or(true, |v| v != "coarse"),
wall_exchange_axis: std::env::var("RTX_E3_WALL_EXCHANGE").is_ok_and(|v| v == "axis"), wall_exchange_axis: std::env::var("RTX_E3_WALL_EXCHANGE").is_ok_and(|v| v == "axis"),
pressure_centroid: std::env::var("RTX_E3_PRESSURE_CENTROID").is_ok_and(|v| v == "1"), pressure_centroid: std::env::var("RTX_E3_PRESSURE_CENTROID").is_ok_and(|v| v == "1"),
// ON by default since S2-5 (`=0` reproduces the records before it). // ON by default since S2-5 (`=0` reproduces the records before it).