test_PrescribedMotionStateEffector
- test_PrescribedMotionStateEffector.PrescribedMotionTestFunction(show_plots, rotTest, thetaInit, theta_Ref, posInit, posRef, accuracy)[source]
Call this routine directly to run the unit test.
- test_PrescribedMotionStateEffector.test_PrescribedMotionTestFunction(show_plots, rotTest, thetaInit, theta_Ref, posInit, posRef, accuracy)[source]
Validation Test Description
The unit test for this module is an integrated test with two flight software profiler modules. This is required because the dynamics module must be connected to a flight software profiler module to define the states of the prescribed secondary body that is connected to the rigid spacecraft hub. The integrated test for this module has two simple scenarios it is testing. The first scenario prescribes a 1 DOF rotation for the prescribed body using the Module: prescribedRotation1DOF flight software module. The second scenario prescribes linear translation for the prescribed body using the Module: prescribedLinearTranslation flight software module.
This unit test ensures that the profiled 1 DOF rotational attitude maneuver is properly computed for a series of initial and reference PRV angles and maximum angular accelerations. The final prescribed attitude and angular velocity magnitude are compared with the reference values. This unit test also ensures that the profiled translational maneuver is properly computed for a series of initial and reference positions and maximum accelerations. The final prescribed position and velocity magnitudes are compared with the reference values. Additionally for each scenario, the conservation quantities of orbital angular momentum, rotational angular momentum, and orbital energy are checked to validate the module dynamics.
Test Parameters
- Parameters:
rotTest (bool) – (True) Runs the rotational motion test. (False) Runs the translational motion test.
thetaInit (float) – [rad] Initial PRV angle of the F frame with respect to the M frame
theta_Ref (float) – [rad] Reference PRV angle of the F frame with respect to the M frame
thetaDDotMax (float) – [rad/s^2] Maximum angular acceleration for the attitude maneuver
scalarPosInit (float) – [m] Initial scalar position of the F frame with respect to the M frame
scalarPosRef (float) – [m] Reference scalar position of the F frame with respect to the M frame
scalarAccelMax (float) – [m/s^2] Maximum acceleration for the translational maneuver
accuracy (float) – absolute accuracy value used in the validation tests
Description of Variables Being Tested
This unit test ensures that the profiled 1 DOF rotational attitude maneuver is properly computed for a series of initial and reference PRV angles and maximum angular accelerations. The final prescribed angle
theta_FM_Final
and angular velocity magnitudethetaDot_Final
are compared with the reference valuestheta_Ref
andthetaDot_Ref
, respectively. This unit test also ensures that the profiled translational maneuver is properly computed for a series of initial and reference positions and maximum accelerations. The final prescribed position magnituder_FM_M_Final
and velocity magnituderPrime_FM_M_Final
are compared with the reference valuesr_FM_M_Ref
andrPrime_FM_M_Ref
, respectively. Additionally for each scenario, the conservation quantities of orbital angular momentum, rotational angular momentum, and orbital energy are checked to validate the module dynamics.