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

Classes

class  _Net

Functions

 api (tmp_path, monkeypatch)
None _saved (session, str run_id, str kind, result=None)
 test_saved_trade_studies_stay_listed_and_readable_as_legacy (api)
 test_the_trade_endpoints_and_module_are_gone (api)
 test_drills_come_from_the_reconcile_table_and_rows_need_provenance (tmp_path)
 test_trim_orifice_K_by_hand ()
 _he_payload ()
 _prep (payload)
 _hw_stand (calls=None)
 le4 ()
 _hardware (config, payload, **req)
 test_hardware_picks_the_drill_that_brings_of_home_and_re_solves_the_set_point (le4)
 test_a_trim_orifice_is_sized_from_the_baseline_and_listed_for_pid_designer (le4)
 test_a_valve_from_the_catalogue_carries_its_row_into_the_change_list (le4)
 test_the_drawn_bottle_row_does_not_call_its_estimates_measured ()
 test_a_better_objective_that_breaks_a_limit_is_not_an_improvement (le4)
 test_hardware_refuses_an_objective_it_cannot_score_and_a_segmented_line (le4)
 test_hardware_refuses_what_the_drawing_lacks (le4)
 test_a_reconcile_result_reads_as_a_change_list_and_keeps_its_keys ()
 test_the_hardware_route_refuses_before_a_slot_is_taken (api)
 test_setpoint_and_hardware_routes_start_their_jobs (api, monkeypatch)

Variables

 D_O0
 D_F0

Detailed Description

Optimize rebuilt (docs/layerx/AUDIT.md D6, 9.10): the trade study's removal, Hardware mode, the
catalogues it draws from, and the one change-list format Optimize and Injector holes share.

Set point has its own file (tests/test_layerx_setpoint.py). Nothing here burns: the burn is the
function every mode is handed, and the tests hand it a closed-form stand.

Function Documentation

◆ _hardware()

◆ _he_payload()

◆ _hw_stand()

test_layerx_optimize_modes._hw_stand ( calls = None)
protected
O/F = 1.5212 (dO/dO0)^2 (dF0/dF)^2 / sqrt(1 + 0.03 dK_lox); mean thrust 7013 + 10.1 (L - 578);
spread 6.4 - 0.3 (Cv_lox_press - 1.7) %.

Definition at line 148 of file test_layerx_optimize_modes.py.

Referenced by _hardware(), test_a_better_objective_that_breaks_a_limit_is_not_an_improvement(), and test_hardware_refuses_an_objective_it_cannot_score_and_a_segmented_line().

◆ _prep()

◆ _saved()

None test_layerx_optimize_modes._saved ( session,
str run_id,
str kind,
result = None )
protected

◆ api()

test_layerx_optimize_modes.api ( tmp_path,
monkeypatch )

Definition at line 26 of file test_layerx_optimize_modes.py.

◆ le4()

test_layerx_optimize_modes.le4 ( )

Definition at line 176 of file test_layerx_optimize_modes.py.

◆ test_a_better_objective_that_breaks_a_limit_is_not_an_improvement()

test_layerx_optimize_modes.test_a_better_objective_that_breaks_a_limit_is_not_an_improvement ( le4)
Every candidate breaks a limit the drawn hardware keeps (the stand marks it). #52 still ranks
first among them on O/F, but it is not reported as an improvement.

Definition at line 279 of file test_layerx_optimize_modes.py.

References _he_payload(), _hw_stand(), and _prep().

◆ test_a_reconcile_result_reads_as_a_change_list_and_keeps_its_keys()

test_layerx_optimize_modes.test_a_reconcile_result_reads_as_a_change_list_and_keeps_its_keys ( )
A saved reconcile's numbers (AUDIT 9.10 5: 1.6318 -> 1.6633 mm LOX, 1.4715 -> 1.5112 mm fuel; #51/#53
gave O/F 1.5501, the 1.65/1.50 mm pair 1.4982 against 1.5).

Definition at line 346 of file test_layerx_optimize_modes.py.

◆ test_a_trim_orifice_is_sized_from_the_baseline_and_listed_for_pid_designer()

test_layerx_optimize_modes.test_a_trim_orifice_is_sized_from_the_baseline_and_listed_for_pid_designer ( le4)
Baseline: O/F 1.5212, lockup 578, Pc 398.82 psia. A trim taking O/F to 1.5 at a fixed drop
needs (1 - (1.5/1.5212)^2) x 179.18 psi = 4.959 psi of permanent loss in l_ox1.

Definition at line 217 of file test_layerx_optimize_modes.py.

References _hardware(), and _he_payload().

◆ test_a_valve_from_the_catalogue_carries_its_row_into_the_change_list()

test_layerx_optimize_modes.test_a_valve_from_the_catalogue_carries_its_row_into_the_change_list ( le4)
SV_LOX_PRESS is 1.7 Cv; the catalogue's other solenoid rows are 1.2, 3.8 and 26.1. Spread
6.4 - 0.3 (Cv - 1.7): the 26.1 Cv ball valve flattens most (estimated, and said so).

Definition at line 246 of file test_layerx_optimize_modes.py.

References _hardware(), and _he_payload().

◆ test_drills_come_from_the_reconcile_table_and_rows_need_provenance()

test_layerx_optimize_modes.test_drills_come_from_the_reconcile_table_and_rows_need_provenance ( tmp_path)

Definition at line 77 of file test_layerx_optimize_modes.py.

◆ test_hardware_picks_the_drill_that_brings_of_home_and_re_solves_the_set_point()

test_layerx_optimize_modes.test_hardware_picks_the_drill_that_brings_of_home_and_re_solves_the_set_point ( le4)
LOX holes 1.6318 mm, O/F 1.5212 against 1.5. Neighbour drills and the stand's O/F by hand:
#52 1.6129 mm -> 1.4861 (0.93 % off); 1.60 -> 1.4624 (2.5 %); 1.65 -> 1.5552 (3.7 %);
1.70 -> 1.6509 (10 %); drawn 1.4 % off. #52 wins; a smaller hole is a new plate.

Definition at line 196 of file test_layerx_optimize_modes.py.

References _hardware(), and _he_payload().

◆ test_hardware_refuses_an_objective_it_cannot_score_and_a_segmented_line()

test_layerx_optimize_modes.test_hardware_refuses_an_objective_it_cannot_score_and_a_segmented_line ( le4)

Definition at line 304 of file test_layerx_optimize_modes.py.

References _he_payload(), _hw_stand(), and _prep().

◆ test_hardware_refuses_what_the_drawing_lacks()

test_layerx_optimize_modes.test_hardware_refuses_what_the_drawing_lacks ( le4)

Definition at line 325 of file test_layerx_optimize_modes.py.

References _he_payload(), and _prep().

◆ test_saved_trade_studies_stay_listed_and_readable_as_legacy()

test_layerx_optimize_modes.test_saved_trade_studies_stay_listed_and_readable_as_legacy ( api)

Definition at line 49 of file test_layerx_optimize_modes.py.

References _saved().

◆ test_setpoint_and_hardware_routes_start_their_jobs()

test_layerx_optimize_modes.test_setpoint_and_hardware_routes_start_their_jobs ( api,
monkeypatch )
The wiring only: preflight, the module's refusal check, the job's kind and its result. The
burns are stubbed (the modules' own tests burn closed-form stands).

Definition at line 403 of file test_layerx_optimize_modes.py.

References finish().

◆ test_the_drawn_bottle_row_does_not_call_its_estimates_measured()

test_layerx_optimize_modes.test_the_drawn_bottle_row_does_not_call_its_estimates_measured ( )
KB1 on the drawings: volume measured, service pressure manufacturer, wall mass and MAWP
estimated. The catalogue row carries each, and a wrong per-parameter tag is refused.

Definition at line 267 of file test_layerx_optimize_modes.py.

◆ test_the_hardware_route_refuses_before_a_slot_is_taken()

test_layerx_optimize_modes.test_the_hardware_route_refuses_before_a_slot_is_taken ( api)

Definition at line 391 of file test_layerx_optimize_modes.py.

◆ test_the_trade_endpoints_and_module_are_gone()

test_layerx_optimize_modes.test_the_trade_endpoints_and_module_are_gone ( api)

Definition at line 63 of file test_layerx_optimize_modes.py.

◆ test_trim_orifice_K_by_hand()

test_layerx_optimize_modes.test_trim_orifice_K_by_hand ( )
D 10.92 mm (l_ox1), Do 9.70 mm, C 0.6: beta 0.888278, beta^4 0.622582;
K = [sqrt(1 - 0.622582 x 0.64) / (0.6 x 0.789038) - 1]^2 = 0.407389 (ISO 5167-2 permanent loss).

Definition at line 108 of file test_layerx_optimize_modes.py.

Variable Documentation

◆ D_F0

test_layerx_optimize_modes.D_F0

Definition at line 145 of file test_layerx_optimize_modes.py.

◆ D_O0

test_layerx_optimize_modes.D_O0

Definition at line 145 of file test_layerx_optimize_modes.py.