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

Functions

 config ()
 rocketpy_le4 (config)
 test_no_air_constant_thrust_is_tsiolkovsky ()
 test_inline_matches_rocketpy_through_the_burn (config, rocketpy_le4)
 test_rocketpys_drag_is_read_linearly_across_the_burnout_step ()
 test_inline_is_a_drop_in_for_the_flown_schedule (config)
 test_held_on_the_pad_reads_exactly_one_g (config)
 test_stepped_one_sample_at_a_time_is_the_same (config)
 test_the_model_block_lists_its_inputs (config)
 test_bad_input_is_refused (config)

Variables

float G0 = 9.80665

Detailed Description

The inline 1-DOF ascent (D5-C): the specific force a burn pass can read at each twin step
without flying the whole burn first.

Checked against a closed form (Tsiolkovsky with gravity, no air), against RocketPy on LE4's saved
delivered curve (AUDIT 9.3 5: 0.002 %), and on the pad (exactly one g0 while the vehicle is held).

Function Documentation

◆ config()

test_layerx_flight_inline.config ( void )

Definition at line 22 of file test_layerx_flight_inline.py.

◆ rocketpy_le4()

test_layerx_flight_inline.rocketpy_le4 ( config)
LE4's curve flown in RocketPy with the config's own COPV: the reference.

Definition at line 27 of file test_layerx_flight_inline.py.

◆ test_bad_input_is_refused()

test_layerx_flight_inline.test_bad_input_is_refused ( config)

Definition at line 158 of file test_layerx_flight_inline.py.

◆ test_held_on_the_pad_reads_exactly_one_g()

test_layerx_flight_inline.test_held_on_the_pad_reads_exactly_one_g ( config)
Before Fire (zero thrust) and while thrust is below the weight the stand carries the vehicle:
it does not move and its columns feel exactly g0, the pad's ``Setup.body_acceleration``. The
first sample whose thrust beats the weight releases it.

Definition at line 118 of file test_layerx_flight_inline.py.

◆ test_inline_is_a_drop_in_for_the_flown_schedule()

test_layerx_flight_inline.test_inline_is_a_drop_in_for_the_flown_schedule ( config)
``{t, accel_m_s2}`` on the burn's clock, as ``fly``'s schedule: the outer loop's own measure
of change between them is far inside its tolerance.

Definition at line 104 of file test_layerx_flight_inline.py.

◆ test_inline_matches_rocketpy_through_the_burn()

test_layerx_flight_inline.test_inline_matches_rocketpy_through_the_burn ( config,
rocketpy_le4 )
LE4's saved delivered curve, the same vehicle (mass, drag, nozzle, pad): the inline ascent's
specific force against RocketPy's at every firing sample while RocketPy's motor burns.

Definition at line 58 of file test_layerx_flight_inline.py.

◆ test_no_air_constant_thrust_is_tsiolkovsky()

test_layerx_flight_inline.test_no_air_constant_thrust_is_tsiolkovsky ( )
No drag, no pressure thrust, constant F and mdot: the specific force is F/m(t) exactly, and
v = c ln(m0/m) - g0 t, z = c [t - (m/mdot) ln(m0/m)] - g0 t^2/2 with c = F/mdot (Sutton &
Biblarz, Rocket Propulsion Elements, 9th ed., ch. 4, vertical flight without drag).

Definition at line 36 of file test_layerx_flight_inline.py.

◆ test_rocketpys_drag_is_read_linearly_across_the_burnout_step()

test_layerx_flight_inline.test_rocketpys_drag_is_read_linearly_across_the_burnout_step ( )
RocketPy's ``Flight.R3`` is a cubic spline over its solution nodes, and the drag steps at
burnout (power-on to power-off Cd). Across the step the spline rings: on the LE4 helium flight it
read -423 N 36 ms before cutoff, between -646 N and -747 N while the speed rose, so RocketPy's
specific force jumped 3.4 % and the inline check (vs_rocketpy 0.0338 against 0.005) failed under
rocketpy 1.11.0 and 1.13.0 alike. Read linearly between its nodes, the drag is bounded by them.

Definition at line 79 of file test_layerx_flight_inline.py.

◆ test_stepped_one_sample_at_a_time_is_the_same()

test_layerx_flight_inline.test_stepped_one_sample_at_a_time_is_the_same ( config)
Causal: a burn pass that drives the ascent step by step gets what the batch call returns.

Definition at line 138 of file test_layerx_flight_inline.py.

◆ test_the_model_block_lists_its_inputs()

test_layerx_flight_inline.test_the_model_block_lists_its_inputs ( config)

Definition at line 148 of file test_layerx_flight_inline.py.

Variable Documentation

◆ G0

float test_layerx_flight_inline.G0 = 9.80665

Definition at line 18 of file test_layerx_flight_inline.py.