|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Functions | |
| float | _arc_start_slope_deg (float theta_rad) |
| test_cone_meets_entrance_arc_tangentially (deg) | |
| test_old_hardcoded_arc_would_fail () | |
| test_contour_uses_the_requested_angle (deg) | |
| test_default_angle_is_45_degrees () | |
| test_default_call_matches_explicit_45 () | |
Variables | |
| PC | |
| THRUST | |
| D_EXIT | |
| list | ANGLES_DEG = [45.0, 40.0, 35.0, 30.0, 25.0] |
The convergent cone must meet the 1.5-Rt entrance arc tangentially at ANY angle. The entrance arc used to be hardcoded ``linspace(-135 deg, -90 deg)``. Its wall slope at parameter t is -cot(t), so -135 deg is tangency with a 45 deg cone and only a 45 deg cone. Any other convergent angle met the arc at a corner -- 15 deg of it at theta = 30 -- right where the gas accelerates hardest into the throat. ``layer1_contraction_half_angle_deg`` made that angle configurable in Layer 1's arithmetic while the built contour stayed at 45 deg, so the optimiser was scoring a chamber nobody would build. These tests pin both halves: the default is unchanged, and a non-default angle produces a tangent wall.
|
protected |
Wall angle of the entrance arc's first segment, in degrees (negative = converging).
Definition at line 31 of file test_convergent_angle_tangency.py.
Referenced by test_cone_meets_entrance_arc_tangentially(), and test_old_hardcoded_arc_would_fail().
| test_convergent_angle_tangency.test_cone_meets_entrance_arc_tangentially | ( | deg | ) |
No corner in the wall at the cone -> arc junction, for any convergent angle.
Definition at line 42 of file test_convergent_angle_tangency.py.
References _arc_start_slope_deg().
| test_convergent_angle_tangency.test_contour_uses_the_requested_angle | ( | deg | ) |
The straight convergent section is actually drawn at the requested half-angle.
Definition at line 62 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.test_default_angle_is_45_degrees | ( | ) |
theta_default is load-bearing: it is the value every existing config inherits.
Definition at line 79 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.test_default_call_matches_explicit_45 | ( | ) |
Omitting theta must be identical to passing 45 deg -- no silent behaviour change.
Definition at line 84 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.test_old_hardcoded_arc_would_fail | ( | ) |
Guard the guard: pinning the arc at 45 deg must reintroduce the corner. Without this, the tangency test above would still pass if someone re-hardcoded the arc and every caller happened to ask for 45 deg.
Definition at line 48 of file test_convergent_angle_tangency.py.
References _arc_start_slope_deg().
| list test_convergent_angle_tangency.ANGLES_DEG = [45.0, 40.0, 35.0, 30.0, 25.0] |
Definition at line 28 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.D_EXIT |
Definition at line 27 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.PC |
Definition at line 27 of file test_convergent_angle_tangency.py.
| test_convergent_angle_tangency.THRUST |
Definition at line 27 of file test_convergent_angle_tangency.py.