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

Functions

 _python_physics (monkeypatch)
 runner ()
 test_exit_pressure_is_ceas_shifting_equilibrium (runner)
 test_ambient_matched_expansion_ratio (runner)
 test_runner_exit_state_is_on_the_thrust_basis (runner)
 test_rayleigh_loss_matches_ceas_finite_area_combustor (CR, ceas)
 test_demand_uses_the_nozzle_stagnation_pressure ()
 test_cache_ambient_coefficient_uses_the_ambient_it_is_given (runner)
 test_cache_flags_what_it_clamps (runner)
 test_geometry_fallback_sizes_the_throat_on_the_delivered_basis (runner)

Variables

 ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 CFG = os.path.join(ROOT, "configs", "ethalox_6500N.yaml")
float PSI = 6894.757293168361
float P_TANK = 584.27 * PSI

Detailed Description

Nozzle exit state, ambient Cf and the finite-area combustor, on CEA's own basis.

CN-4: the exit pressure came from an isentrope at the chamber's equilibrium gamma and landed
      above both CEA bounds (94.0 kPa where CEA gives 87.2 equilibrium / 78.7 frozen).
CN-6: the injector-end pressure was used as the nozzle's stagnation pressure at every
      contraction ratio (no Rayleigh loss), so a skinny chamber cost nothing.
CN-8: CEACache.eval ignored the Pa it was given (Cf_ideal was always the 14.7 psia value) and
      clamped out-of-table inputs without a word.

Reference values are NASA CEA (rocketcea 1.2.3), LOX/ethanol, quoted here:
  * O/F 1.5013, Pc 433.65 psia, eps 5.5985, shifting equilibrium: Pc/Pe = 34.2806
    (Pe = 87.22 kPa); the eps whose Pe is 94069.7 Pa is 5.2995.
  * finite-area combustor ("fac", CR = 2 / 3 / 5): CEA's printed Pinj/Pinf 1.051824 / 1.022720
    / 1.008126 at gamma_s 1.1375.
  * Pc 433.97 psia, O/F 1.49930, eps 5.59852: get_PambCf at Pamb 13.6437 psia -> 1.50134.

Function Documentation

◆ _python_physics()

test_nozzle_cea_basis._python_physics ( monkeypatch)
protected

Definition at line 36 of file test_nozzle_cea_basis.py.

◆ runner()

test_nozzle_cea_basis.runner ( )

Definition at line 41 of file test_nozzle_cea_basis.py.

◆ test_ambient_matched_expansion_ratio()

test_nozzle_cea_basis.test_ambient_matched_expansion_ratio ( runner)

Definition at line 50 of file test_nozzle_cea_basis.py.

◆ test_cache_ambient_coefficient_uses_the_ambient_it_is_given()

test_nozzle_cea_basis.test_cache_ambient_coefficient_uses_the_ambient_it_is_given ( runner)

Definition at line 88 of file test_nozzle_cea_basis.py.

◆ test_cache_flags_what_it_clamps()

test_nozzle_cea_basis.test_cache_flags_what_it_clamps ( runner)

Definition at line 97 of file test_nozzle_cea_basis.py.

◆ test_demand_uses_the_nozzle_stagnation_pressure()

test_nozzle_cea_basis.test_demand_uses_the_nozzle_stagnation_pressure ( )
At CR = 2 the throat sees Pc/1.0518: mdot c*_actual / At = Pc / kappa (was = Pc).

Definition at line 76 of file test_nozzle_cea_basis.py.

◆ test_exit_pressure_is_ceas_shifting_equilibrium()

test_nozzle_cea_basis.test_exit_pressure_is_ceas_shifting_equilibrium ( runner)

Definition at line 45 of file test_nozzle_cea_basis.py.

◆ test_geometry_fallback_sizes_the_throat_on_the_delivered_basis()

test_nozzle_cea_basis.test_geometry_fallback_sizes_the_throat_on_the_delivered_basis ( runner)
F = zeta Cf_vac P0 At - Pa Ae is what the runner delivers, so the sizing must depend on Pa
(it did not: vacuum and sea level gave the same throat).

Definition at line 104 of file test_nozzle_cea_basis.py.

◆ test_rayleigh_loss_matches_ceas_finite_area_combustor()

test_nozzle_cea_basis.test_rayleigh_loss_matches_ceas_finite_area_combustor ( CR,
ceas )

Definition at line 71 of file test_nozzle_cea_basis.py.

◆ test_runner_exit_state_is_on_the_thrust_basis()

test_nozzle_cea_basis.test_runner_exit_state_is_on_the_thrust_basis ( runner)
The reported Pe is the CEA expansion of the nozzle stagnation pressure the thrust uses.

Definition at line 56 of file test_nozzle_cea_basis.py.

Variable Documentation

◆ CFG

test_nozzle_cea_basis.CFG = os.path.join(ROOT, "configs", "ethalox_6500N.yaml")

Definition at line 30 of file test_nozzle_cea_basis.py.

◆ P_TANK

float test_nozzle_cea_basis.P_TANK = 584.27 * PSI

Definition at line 32 of file test_nozzle_cea_basis.py.

◆ PSI

float test_nozzle_cea_basis.PSI = 6894.757293168361

Definition at line 31 of file test_nozzle_cea_basis.py.

◆ ROOT

test_nozzle_cea_basis.ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

Definition at line 29 of file test_nozzle_cea_basis.py.