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
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
- This is the default derived class which is used whenever a fixed-step size integrator is used.
- 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
- This derived class defines the settings to propagate the translational dynamics.
- This derived class defines the settings to propagate the rotational dynamics.
- This derived class defines the settings to propagate the mass of a body.
- This derived class allows the propagation of user-defined dynamics.
- This derived class allows to propagate simultaneously the various propagator classes defined above.
- This derived class allows to propagate the dynamics for multiple arcs.
The reader is referred to the following sections to examine in detail how to create the dynamics simulator:
- 5.1. Integrator Settings
- 5.2. Propagator Settings: Basics
- 5.3. Propagator Settings: Termination Settings
- 5.4. Propagator Settings: Dependent Variables
- 5.5. Propagator Settings: Conventional vs. Propagated Coordinates
- 5.6. Create a Dynamics Simulator Object
- 5.7. Time and State Templates
- 5.8. Create a Variational Equations Solver Object