|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Functions | |
| _model (bool engine=False) | |
| None | test_gauge_from_psia_round_trips_exactly () |
| None | test_burn_setup_is_the_study_numerics () |
| None | test_a_model_assembles_without_an_artifact_store () |
| None | test_prime_by_mass_loads_exactly_that_mass () |
| None | test_prime_without_loads_fills_by_volume () |
| None | test_prime_refuses_a_load_that_does_not_fit_or_has_no_tank () |
| None | test_probes_are_found_on_the_drawing () |
| None | test_a_short_burn_records_and_conserves_propellant () |
| None | test_a_model_runs_under_one_session_only () |
| float | _impulse (trace, plan) |
| None | test_ending_on_depletion_is_continuous_in_the_load () |
Variables | |
| STAR = Path(__file__).resolve().parents[3] | |
| str | STAND = STAR / "feed-twin" / "backend" / "diagrams" / "ethalox_stand.json" |
| str | TABLES = STAR / "feed-twin" / "backend" / "statemachines" |
| str | ENGINE = STAR / "EngineDesign" / "configs" / "ethalox_doublet_7000N.yaml" |
| str | CEA = STAR / "EngineDesign" / "output" / "cache" / "cea_cache_LOX_Ethanol_3D.npz" |
| needs_stand | |
| needs_engine | |
The marching session as library code, and a burn as one call. The session's physics is covered where it was written (feed-twin's ``tests/test_session.py``, which now runs against this package through the app's re-exports) and by ``scripts/physics_benchmark.py``. What is new here is the surface a second caller uses: assembling without the app's artifact store, priming a fixed propellant load by mass, and a burn that records its probes.
|
protected |
Thrust times each step's own length, over the firing steps.
Definition at line 189 of file test_session_burn.py.
Referenced by test_ending_on_depletion_is_continuous_in_the_load().
|
protected |
Definition at line 42 of file test_session_burn.py.
Referenced by test_a_model_assembles_without_an_artifact_store(), test_a_model_runs_under_one_session_only(), test_a_short_burn_records_and_conserves_propellant(), test_ending_on_depletion_is_continuous_in_the_load(), test_prime_by_mass_loads_exactly_that_mass(), test_prime_refuses_a_load_that_does_not_fit_or_has_no_tank(), test_prime_without_loads_fills_by_volume(), and test_probes_are_found_on_the_drawing().
| None test_session_burn.test_a_model_assembles_without_an_artifact_store | ( | ) |
Definition at line 77 of file test_session_burn.py.
References _model().
| None test_session_burn.test_a_model_runs_under_one_session_only | ( | ) |
A session writes its run into the model's network; a second session on the same model would start from the first one's end state. open_session refuses it.
Definition at line 178 of file test_session_burn.py.
References _model().
| None test_session_burn.test_a_short_burn_records_and_conserves_propellant | ( | ) |
Fire for a third of a second and check the bookkeeping holds. Conservation is the check worth having here: the propellant that left the tanks has to be the propellant the chamber says it burned, integrated over the same steps. It is independent of every correlation in the model.
Definition at line 135 of file test_session_burn.py.
References _model().
| None test_session_burn.test_burn_setup_is_the_study_numerics | ( | ) |
Definition at line 66 of file test_session_burn.py.
| None test_session_burn.test_ending_on_depletion_is_continuous_in_the_load | ( | ) |
With ``end_on_depletion`` the last step lands the first tank on ``dry_kg``, so the impulse grows smoothly with the load. On whole steps it moves in jumps of a step's worth as the depletion crosses a step boundary; that is the default, and the study keeps it.
Definition at line 201 of file test_session_burn.py.
References _impulse(), _model(), max, and min.
| None test_session_burn.test_gauge_from_psia_round_trips_exactly | ( | ) |
A caller that knows psia converts through the gauge zero without error.
Definition at line 59 of file test_session_burn.py.
| None test_session_burn.test_prime_by_mass_loads_exactly_that_mass | ( | ) |
Definition at line 87 of file test_session_burn.py.
References _model().
| None test_session_burn.test_prime_refuses_a_load_that_does_not_fit_or_has_no_tank | ( | ) |
Definition at line 111 of file test_session_burn.py.
References _model().
| None test_session_burn.test_prime_without_loads_fills_by_volume | ( | ) |
Without ``loads`` every tank holds ``fill_fraction`` of its volume as liquid, by hand from the volume and the density: the behaviour before ``loads`` existed.
Definition at line 99 of file test_session_burn.py.
References _model().
| None test_session_burn.test_probes_are_found_on_the_drawing | ( | ) |
Definition at line 120 of file test_session_burn.py.
References _model().
| str test_session_burn.CEA = STAR / "EngineDesign" / "output" / "cache" / "cea_cache_LOX_Ethanol_3D.npz" |
Definition at line 32 of file test_session_burn.py.
| str test_session_burn.ENGINE = STAR / "EngineDesign" / "configs" / "ethalox_doublet_7000N.yaml" |
Definition at line 31 of file test_session_burn.py.
| test_session_burn.needs_engine |
Definition at line 37 of file test_session_burn.py.
| test_session_burn.needs_stand |
Definition at line 34 of file test_session_burn.py.
| str test_session_burn.STAND = STAR / "feed-twin" / "backend" / "diagrams" / "ethalox_stand.json" |
Definition at line 29 of file test_session_burn.py.
| test_session_burn.STAR = Path(__file__).resolve().parents[3] |
Definition at line 28 of file test_session_burn.py.
| str test_session_burn.TABLES = STAR / "feed-twin" / "backend" / "statemachines" |
Definition at line 30 of file test_session_burn.py.