STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
test_layer1_injector_terms Namespace Reference

Functions

 test_geometry_fit_does_not_reward_closing_the_ring_gap ()
 test_geometry_fit_charges_no_vaporization_length ()
 _tilt_kw ()
 test_tilt_sign_follows_the_pitch_circles_not_the_ring_order_flag ()
 test_tilt_and_breakeven_agree_on_which_ring_is_inboard ()
 test_closure_plate_coefficients_are_roarks ()
 test_closure_mass_uses_the_support_and_the_plug_radius ()
 test_plate_support_reads_a_declared_field_and_defaults_simply_supported ()
 _python_physics ()
 _load (Path tmp_path, edit=None)
 solved (_python_physics)
 test_igniter_thread_engagement_gate (tmp_path)
 _q_hand (area, mdot, rho, dp, inlets)
 test_manifold_gate_fails_one_port_and_passes_four (tmp_path, solved)
 test_manifold_search_term_is_the_area_shortfall (tmp_path, solved)

Variables

 ROOT = Path(__file__).resolve().parents[1]
str Y6500 = ROOT / "configs/ethalox_6500N_doublet_2026-09-26.yaml"
float PSI = 6894.757
float IN = 0.0254

Detailed Description

Layer 1 injector terms: ring co-location, vaporization budget, tilt sign, igniter thread,
closure-plate support, manifold velocity head.

Each expectation is hand arithmetic or an outside number (ASME B1.20.1 L2, Roark Table 11.2,
NASA TN D-5467 via layout.channel_velocity_head), not a replay of the optimizer.

Function Documentation

◆ _load()

test_layer1_injector_terms._load ( Path tmp_path,
edit = None )
protected

◆ _python_physics()

test_layer1_injector_terms._python_physics ( )
protected

Definition at line 140 of file test_layer1_injector_terms.py.

◆ _q_hand()

test_layer1_injector_terms._q_hand ( area,
mdot,
rho,
dp,
inlets )
protected

◆ _tilt_kw()

test_layer1_injector_terms._tilt_kw ( )
protected

◆ solved()

test_layer1_injector_terms.solved ( _python_physics)

Definition at line 162 of file test_layer1_injector_terms.py.

◆ test_closure_mass_uses_the_support_and_the_plug_radius()

test_layer1_injector_terms.test_closure_mass_uses_the_support_and_the_plug_radius ( )

Definition at line 111 of file test_layer1_injector_terms.py.

◆ test_closure_plate_coefficients_are_roarks()

test_layer1_injector_terms.test_closure_plate_coefficients_are_roarks ( )
Roark Table 11.2, uniform load: simply supported k = 3(3+nu)/8 (centre), fixed k = 3/4
(edge), sigma_max = k p a^2 / t^2.

Definition at line 100 of file test_layer1_injector_terms.py.

◆ test_geometry_fit_charges_no_vaporization_length()

test_layer1_injector_terms.test_geometry_fit_charges_no_vaporization_length ( )
x* came from a second, cruder evaporation model and double-counted eta_vap (~142 points
on the 6500N). A spray three chamber lengths long now costs nothing here.

Definition at line 44 of file test_layer1_injector_terms.py.

◆ test_geometry_fit_does_not_reward_closing_the_ring_gap()

test_layer1_injector_terms.test_geometry_fit_does_not_reward_closing_the_ring_gap ( )
The co-location term charged (|D_pitch_O - D_pitch_F| / bore)^2, driving the ring gap --
and the impingement standoff dr / (tan th_O + tan th_F) -- to zero.

Definition at line 31 of file test_layer1_injector_terms.py.

◆ test_igniter_thread_engagement_gate()

test_layer1_injector_terms.test_igniter_thread_engagement_gate ( tmp_path)
1/2 NPT: L2 = 0.5337 in = 13.56 mm (ASME B1.20.1) against a 0.500 in (12.70 mm) plate.

Definition at line 169 of file test_layer1_injector_terms.py.

References _load().

◆ test_manifold_gate_fails_one_port_and_passes_four()

test_layer1_injector_terms.test_manifold_gate_fails_one_port_and_passes_four ( tmp_path,
solved )

Definition at line 188 of file test_layer1_injector_terms.py.

References _load(), and _q_hand().

◆ test_manifold_search_term_is_the_area_shortfall()

test_layer1_injector_terms.test_manifold_search_term_is_the_area_shortfall ( tmp_path,
solved )

Definition at line 214 of file test_layer1_injector_terms.py.

References _load(), and max.

◆ test_plate_support_reads_a_declared_field_and_defaults_simply_supported()

test_layer1_injector_terms.test_plate_support_reads_a_declared_field_and_defaults_simply_supported ( )

Definition at line 125 of file test_layer1_injector_terms.py.

◆ test_tilt_and_breakeven_agree_on_which_ring_is_inboard()

test_layer1_injector_terms.test_tilt_and_breakeven_agree_on_which_ring_is_inboard ( )
Break-even takes theta of the inner ring (smaller D_pitch); the tilt's sign must use the
same ring. Swapping the spacings swaps both.

Definition at line 77 of file test_layer1_injector_terms.py.

References _tilt_kw(), and min.

◆ test_tilt_sign_follows_the_pitch_circles_not_the_ring_order_flag()

test_layer1_injector_terms.test_tilt_sign_follows_the_pitch_circles_not_the_ring_order_flag ( )
LOX outboard (s_O > s_F) travels INWARD to the collision, so a LOX-heavy pair leans
inward -- whatever layer1_ring_order_fuel_outboard requested.

Definition at line 63 of file test_layer1_injector_terms.py.

References _tilt_kw().

Variable Documentation

◆ IN

float test_layer1_injector_terms.IN = 0.0254

Definition at line 24 of file test_layer1_injector_terms.py.

◆ PSI

float test_layer1_injector_terms.PSI = 6894.757

Definition at line 23 of file test_layer1_injector_terms.py.

◆ ROOT

test_layer1_injector_terms.ROOT = Path(__file__).resolve().parents[1]

Definition at line 19 of file test_layer1_injector_terms.py.

◆ Y6500

str test_layer1_injector_terms.Y6500 = ROOT / "configs/ethalox_6500N_doublet_2026-09-26.yaml"

Definition at line 22 of file test_layer1_injector_terms.py.