test_extPulsedTorque

Validate pulse timing independently of dynamics evaluation order and integrator stages.

test_extPulsedTorque.configured_pulse(off_count=3)[source]

Create a pulse with exactly representable transition times.

test_extPulsedTorque.pulse_simulation(effector, priority=None, step=0.03125)[source]

Attach a pulse to a spacecraft; step is the task interval in seconds.

test_extPulsedTorque.test_decimal_pulse_intervals_select_the_new_segment_at_boundaries(interval)[source]

Decimal interval roundoff must not delay a transition by one dynamics evaluation.

test_extPulsedTorque.test_integrator_stages_and_task_order_do_not_shorten_pulses(integrator_name, priority, step)[source]

A spacecraft receives the full torque throughout a pulse regardless of stage count or scheduling.

test_extPulsedTorque.test_invalid_pulse_configuration(field, value, path)[source]

Every dynamics initialization path rejects invalid pulse parameters.

test_extPulsedTorque.test_invalid_pulse_evaluation_time(time)[source]

Evaluation time must be finite and non-negative.

test_extPulsedTorque.test_long_off_period_does_not_advance_initial_pulse_transitions(off_count, interval)[source]

A future off period must not enlarge the roundoff window around either initial pulse edge.

test_extPulsedTorque.test_pulse_defaults_and_disabling_clear_loads()[source]

Default configuration is inert, and disabling an active pulse clears its contributions.

test_extPulsedTorque.test_pulse_large_counts_do_not_overflow_integer_arithmetic()[source]

The cycle count can exceed the range of an individual count’s integer type.

test_extPulsedTorque.test_pulse_repeated_and_reversed_evaluations_preserve_phase()[source]

Repeated evaluations, adaptive retries, and resets do not advance or rewind the pulse phase.

test_extPulsedTorque.test_pulse_sequence(off_count)[source]

Counts specify fixed-duration positive, negative, and off intervals over repeated cycles.

test_extPulsedTorque.test_pulse_transition_boundaries(time, sign)[source]

Each transition selects the new pulse segment without an evaluation counter.