|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Classes | |
| class | TestEnvelope |
| class | TestContouredFace |
| class | TestChannels |
| class | TestHoleCd |
| class | TestInletShape |
| class | TestIgniter |
| class | TestOldFlatDesigns |
Functions | |
| _cfg (**plate) | |
| _hole_ld (cfg, ld, **discharge) | |
| _texts (out) | |
| _codes (out) | |
| test_band_table (case) | |
| test_6500N_band_is_what_it_declares () | |
| test_layer1_uses_the_resolver () | |
| test_ring_geometry_default_band_is_inert () | |
| test_default_constant_is_four () | |
| _hand_6500N (exit_land=EXIT_LAND_DEFAULT) | |
| test_plenum_back_face_positions () | |
| test_flat_face_drill_entry_is_flagged_as_off_square () | |
| test_degenerate_rings () | |
| _random_layouts (n=60, seed=7) | |
| _l1_kwargs (g) | |
| _hard_kwargs (g) | |
| test_centre_and_wall_clearance_flip_where_the_layout_says (path, contoured) | |
| test_channel_overlap_flips_where_the_layout_says () | |
| test_worker_path_reads_the_plate_settings () | |
| test_standoff_matches_the_physics_helper () | |
| test_frontend_fixture_is_current () | |
| test_an_undeclared_plate_draws_the_stands_plug_and_layer1_stays_as_it_was () | |
Variables | |
| ROOT = Path(__file__).resolve().parents[1] | |
| CASES = json.loads((ROOT / "tests/impingement_ld_band_cases.json").read_text())["cases"] | |
| str | C6500 = ROOT / "configs/ethalox_6500N.yaml" |
| math | T = lambda a.tan(math.radians(a)) |
| math | S = lambda a.sin(math.radians(a)) |
| math | C = lambda a.cos(math.radians(a)) |
| BEFORE | |
| AFTER | |
| REQS | |
| int | EPS = 1e-6 |
| str | FIXTURE = ROOT / "frontend/src/components/__fixtures__/layout_6500N.json" |
engine.core.injectors.layout -- the one place the injector's geometry is derived. Reference engine: configs/ethalox_6500N.yaml (24 doublets, 43/46 deg, contoured face, channels on the back, plug filling a 6.0 in sleeve bore). Every contoured-face and channel number below is recomputed in the test from plain trigonometry, not read back from the module, so a wrong formula in layout.py fails here rather than being agreed with.
|
protected |
Definition at line 30 of file test_injector_layout.py.
Referenced by test_injector_layout.TestInletShape._walls(), test_injector_layout.TestHoleCd.test_6500N_is_a_sharp_short_tube(), test_injector_layout.TestChannels.test_a_coned_floor_cannot_break_out_of_the_back(), test_injector_layout.TestHoleCd.test_a_drilled_plate_still_asks(), test_injector_layout.TestEnvelope.test_a_liner_that_does_not_fill_the_sleeve_is_called_out(), test_injector_layout.TestHoleCd.test_a_longer_hole_lowers_cd_under_lichtarowicz(), test_injector_layout.TestChannels.test_a_longer_passage_needs_a_thicker_plate(), test_injector_layout.TestIgniter.test_an_explicit_reservation_wins_and_is_called_oversized(), test_injector_layout.TestInletShape.test_an_inlet_too_big_for_the_channel_says_how_wide_to_go(), test_an_undeclared_plate_draws_the_stands_plug_and_layer1_stays_as_it_was(), test_injector_layout.TestHoleCd.test_channels_never_ask_to_couple_the_cd(), test_injector_layout.TestChannels.test_coned_floor_is_normal_to_the_passage(), test_injector_layout.TestIgniter.test_engagement_needs_the_centre_thicker(), test_flat_face_drill_entry_is_flagged_as_off_square(), test_injector_layout.TestContouredFace.test_flat_face_keeps_the_old_geometry(), test_injector_layout.TestChannels.test_flat_floor_leaves_an_acute_inlet_lip_and_no_short_wall_rule(), test_injector_layout.TestIgniter.test_half_inch_npt_keepout(), test_injector_layout.TestChannels.test_overlapping_channels_are_impossible(), test_plenum_back_face_positions(), test_injector_layout.TestEnvelope.test_the_plug_is_drawn_to_the_sleeve_bore(), test_injector_layout.TestHoleCd.test_the_reported_cd_is_the_solvers(), test_injector_layout.TestIgniter.test_the_section_says_why_the_port_is_red(), test_injector_layout.TestIgniter.test_the_thread_is_cut_into_the_plug_not_floating(), test_injector_layout.TestContouredFace.test_v_bottom_on_request(), and test_injector_layout.TestHoleCd.test_without_an_inlet_the_hole_length_does_not_enter_cd().
|
protected |
Definition at line 47 of file test_injector_layout.py.
Referenced by test_injector_layout.TestChannels.test_a_coned_floor_cannot_break_out_of_the_back(), test_injector_layout.TestHoleCd.test_a_drilled_plate_still_asks(), test_injector_layout.TestEnvelope.test_a_liner_that_does_not_fill_the_sleeve_is_called_out(), test_injector_layout.TestChannels.test_a_longer_passage_needs_a_thicker_plate(), test_injector_layout.TestIgniter.test_an_explicit_reservation_wins_and_is_called_oversized(), test_injector_layout.TestInletShape.test_an_inlet_too_big_for_the_channel_says_how_wide_to_go(), test_an_undeclared_plate_draws_the_stands_plug_and_layer1_stays_as_it_was(), test_injector_layout.TestChannels.test_channel_flow_area_is_reported_against_the_orifices(), test_channel_overlap_flips_where_the_layout_says(), test_injector_layout.TestHoleCd.test_channels_never_ask_to_couple_the_cd(), test_injector_layout.TestChannels.test_coned_floor_is_normal_to_the_passage(), test_injector_layout.TestIgniter.test_engagement_needs_the_centre_thicker(), test_flat_face_drill_entry_is_flagged_as_off_square(), test_injector_layout.TestChannels.test_flat_floor_leaves_an_acute_inlet_lip_and_no_short_wall_rule(), test_injector_layout.TestChannels.test_overlapping_channels_are_impossible(), and test_injector_layout.TestEnvelope.test_sleeve_from_the_requirements().
|
protected |
Definition at line 113 of file test_injector_layout.py.
Referenced by test_plenum_back_face_positions().
|
protected |
Definition at line 576 of file test_injector_layout.py.
References _l1_kwargs().
Referenced by test_centre_and_wall_clearance_flip_where_the_layout_says().
|
protected |
Both propellants' hole L/d (discharge.<side>.orifice_l_over_d), and any other discharge keys.
Definition at line 36 of file test_injector_layout.py.
Referenced by test_injector_layout.TestInletShape._walls(), test_injector_layout.TestChannels.test_a_coned_floor_cannot_break_out_of_the_back(), test_injector_layout.TestHoleCd.test_a_longer_hole_lowers_cd_under_lichtarowicz(), test_injector_layout.TestChannels.test_a_longer_passage_needs_a_thicker_plate(), test_injector_layout.TestInletShape.test_an_inlet_too_big_for_the_channel_says_how_wide_to_go(), test_injector_layout.TestHoleCd.test_channels_never_ask_to_couple_the_cd(), test_injector_layout.TestHoleCd.test_the_reported_cd_is_the_solvers(), and test_injector_layout.TestHoleCd.test_without_an_inlet_the_hole_length_does_not_enter_cd().
|
protected |
Definition at line 566 of file test_injector_layout.py.
Referenced by _hard_kwargs(), test_centre_and_wall_clearance_flip_where_the_layout_says(), and test_channel_overlap_flips_where_the_layout_says().
|
protected |
Definition at line 550 of file test_injector_layout.py.
References max.
Referenced by test_centre_and_wall_clearance_flip_where_the_layout_says(), test_channel_overlap_flips_where_the_layout_says(), and test_standoff_matches_the_physics_helper().
|
protected |
Definition at line 43 of file test_injector_layout.py.
Referenced by test_injector_layout.TestOldFlatDesigns.test_calls_out_the_thin_lox_web(), test_degenerate_rings(), test_injector_layout.TestOldFlatDesigns.test_leaves_no_room_at_the_axis(), test_injector_layout.TestOldFlatDesigns.test_needs_a_counterbore_to_be_drillable(), and test_injector_layout.TestOldFlatDesigns.test_sp8089_included_angle().
| test_injector_layout.test_6500N_band_is_what_it_declares | ( | ) |
Definition at line 60 of file test_injector_layout.py.
| test_injector_layout.test_an_undeclared_plate_draws_the_stands_plug_and_layer1_stays_as_it_was | ( | ) |
No injector.plate: the drawing is the contoured, channelled plug (what the stand machines) and says so; Layer 1 keeps the flat-face, plenum constraints it always had until declared.
Definition at line 691 of file test_injector_layout.py.
| test_injector_layout.test_band_table | ( | case | ) |
Definition at line 56 of file test_injector_layout.py.
| test_injector_layout.test_centre_and_wall_clearance_flip_where_the_layout_says | ( | path, | |
| contoured ) |
Definition at line 591 of file test_injector_layout.py.
References _hard_kwargs(), _l1_kwargs(), and _random_layouts().
| test_injector_layout.test_channel_overlap_flips_where_the_layout_says | ( | ) |
Widen both channels until they meet: Layer 1's channel term turns on exactly where the layout starts calling them crossed.
Definition at line 616 of file test_injector_layout.py.
References _codes(), _l1_kwargs(), and _random_layouts().
| test_injector_layout.test_default_constant_is_four | ( | ) |
Definition at line 79 of file test_injector_layout.py.
| test_injector_layout.test_degenerate_rings | ( | ) |
Definition at line 534 of file test_injector_layout.py.
References _texts().
| test_injector_layout.test_flat_face_drill_entry_is_flagged_as_off_square | ( | ) |
Definition at line 315 of file test_injector_layout.py.
| test_injector_layout.test_frontend_fixture_is_current | ( | ) |
Regenerate: python3 scripts/injector_layout.py --no-flows configs/ethalox_6500N.yaml > <fixture>
Definition at line 669 of file test_injector_layout.py.
| test_injector_layout.test_layer1_uses_the_resolver | ( | ) |
Definition at line 65 of file test_injector_layout.py.
| test_injector_layout.test_plenum_back_face_positions | ( | ) |
Definition at line 306 of file test_injector_layout.py.
References _cfg(), _hand_6500N(), and T.
| test_injector_layout.test_ring_geometry_default_band_is_inert | ( | ) |
Definition at line 71 of file test_injector_layout.py.
| test_injector_layout.test_standoff_matches_the_physics_helper | ( | ) |
Definition at line 652 of file test_injector_layout.py.
References _random_layouts().
| test_injector_layout.test_worker_path_reads_the_plate_settings | ( | ) |
Definition at line 643 of file test_injector_layout.py.
| test_injector_layout.AFTER |
Definition at line 498 of file test_injector_layout.py.
| test_injector_layout.BEFORE |
Definition at line 493 of file test_injector_layout.py.
| math test_injector_layout.C = lambda a.cos(math.radians(a)) |
Definition at line 27 of file test_injector_layout.py.
Referenced by _hand_6500N(), test_injector_layout.TestContouredFace.test_flat_face_keeps_the_old_geometry(), and test_injector_layout.TestChannels.test_passage_runs_its_L_over_d_to_the_channel_floor().
| str test_injector_layout.C6500 = ROOT / "configs/ethalox_6500N.yaml" |
Definition at line 24 of file test_injector_layout.py.
| test_injector_layout.CASES = json.loads((ROOT / "tests/impingement_ld_band_cases.json").read_text())["cases"] |
Definition at line 23 of file test_injector_layout.py.
| int test_injector_layout.EPS = 1e-6 |
Definition at line 586 of file test_injector_layout.py.
| str test_injector_layout.FIXTURE = ROOT / "frontend/src/components/__fixtures__/layout_6500N.json" |
Definition at line 666 of file test_injector_layout.py.
| test_injector_layout.REQS |
Definition at line 503 of file test_injector_layout.py.
| test_injector_layout.ROOT = Path(__file__).resolve().parents[1] |
Definition at line 22 of file test_injector_layout.py.
| math test_injector_layout.S = lambda a.sin(math.radians(a)) |
Definition at line 26 of file test_injector_layout.py.
Referenced by _hand_6500N(), test_injector_layout.TestContouredFace.test_groove_edges_and_depth(), and test_injector_layout.TestChannels.test_passage_runs_its_L_over_d_to_the_channel_floor().
| math test_injector_layout.T = lambda a.tan(math.radians(a)) |
Definition at line 25 of file test_injector_layout.py.
Referenced by _hand_6500N(), test_injector_layout.TestChannels.test_coned_floor_is_normal_to_the_passage(), test_injector_layout.TestContouredFace.test_each_exit_is_square_on_its_flank(), test_injector_layout.TestContouredFace.test_groove_edges_and_depth(), and test_plenum_back_face_positions().