38 """Core: 7 d sqrt(rho_l/rho_g) (Chehroudi et al. 1985, low C). Lean: the momentum resultant
39 of the two jets, LOX inner and aiming outward (as scripts/design_handcheck.py)."""
42 rows =
_rows(spray_mixing_report(cfg, r, with_sensitivity=
False))
44 rho_g = d[
"rho_gas_breakup"]
45 assert rows[
"LOX intact core (low bound)"][
"value"] == pytest.approx(7.0 * math.sqrt(1140.0 / rho_g), rel=1e-12)
46 g = cfg.injector.geometry
47 vO = r[
"mdot_O"] / (1140.0 * 24 * math.pi * g.oxidizer.d_jet ** 2 / 4)
48 vF = r[
"mdot_F"] / (789.0 * 24 * math.pi * g.fuel.d_jet ** 2 / 4)
49 pO, pF = r[
"mdot_O"] * vO, r[
"mdot_F"] * vF
50 s35, s48 = math.radians(35.0), math.radians(48.0)
51 lean = math.degrees(math.atan2(pO * math.sin(s35) - pF * math.sin(s48), pO * math.cos(s35) + pF * math.cos(s48)))
52 assert rows[
"spray lean"][
"value"] == pytest.approx(lean, rel=1e-6)
53 assert rows[
"LOX jet velocity"][
"value"] == pytest.approx(vO, rel=1e-9)