5. Simulator Set-UpΒΆ
One of the core elements of the Tudat libraries is its simulator framework. The goal of this page is discuss the implementation of such framework as well as the numerous options available. The top-level framework of the simulator is shown below:
The top-element in such framework is the DynamicsSimulator
, which is in charge of propagating the equations of motion using the environment and acceleration models discussed in Environment Set-up and Acceleration Set-Up, respectively. The orbit propation is done according to the specified IntegratorSettings
and the PropagatorSettings
, which are discussed in detail in Integrator Settings and Propagator Settings: Basics.
As shown in the figure above, there are various types of IntegratorSettings
and PropagatorSettings
depending on the particularities of the application at hand. The different types are implemented by means of derived classes, as discussed below:
- Integrator Settings
IntegratorSettings
- This is the default derived class which is used whenever a fixed-step size integrator is used.
RungeKuttaVariableStepSizeSettings
- This is a special derived class which takes additional arguments and is used whenever a Runge-Kutta variable step-size integrator is used.
- Propagator Settings
TranslationalStatePropagatorSettings
- This derived class defines the settings to propagate the translational dynamics.
MassPropagationSettings
- This derived class defines the settings to propagate the mass of a body.
CustomStatePropagationSettings
- This derived class allows the propagation of user-defined dynamics.
MultiTypeProgationSettings
- This derived class allows to propagate simultaneously the various propagator classes defined above.
The reader is referred to the following sections to examine in detail how to create the dynamics simulator: