5.1. Integrator Settings¶
As the name suggests, the integrator settings tell the dynamics simulator how to integrate numerically the equations of motion that govern the orbital mechanics to simulate. The IntegratorSettings
are defined using two derived classes, depending on whether the integrator to be used is a fixed step-size integrator or a variable step-size integrator.
-
class
IntegratorSettings
¶ This class is used to define the settings for fixed step-size integration. The constructor for this base class is:
IntegratorSettings( integratorType, simulationStartEpoch, fixedStepSize )
where:
integratorType
AvailableIntegrators
which defines the fixed step-size integrator type to be used. Currently the only options available areeuler
andrungeKutta4
.simulationStartEpoch
double
that defines the simulation’s start epoch.fixedStepSize
double
that defines the fixed step-size to be used either by theeuler
or therungeKutta4
numerical integrator.
-
class
RungeKuttaVariableStepSizeSettings
¶ This class is used to define the settings for variable step-size integration. The constructor for this derived class is:
RungeKuttaVariableStepSizeSettings( integratorType, initialTime, initialTimeStep, coefficientSet, minimumStepSize, maximumStepSize )
where:
integratorType
AvailableIntegrators
which defines the fixed step-size integrator type to be used. The only option available isrungeKuttaVariableStepSize
.initialTime
double
that defines the simulation’s initial time. It must be adouble
variable-type.initialTimeStep
double
that defines the initial step-size to be used either by therungeKuttaVariableStepSize
numerical integrator. It must be adouble
variable-type.coefficientSet
RungeKuttaCoefficients::CoefficientSets
that defines the coefficient set to be used by therungeKuttaVariableStepSize
numerical integrator. The list of available coefficient sets is given in Integrators.minimumStepSize
double
that defines the minimum step-size that therungeKuttaVariableStepSize
numerical integrator can take.maximumStepSize
double
that defines the maximum step-size that therungeKuttaVariableStepSize
numerical integrator can take.
Note
Aside from the arguments listed in this page, the IntegratorSettings
class and derived classes described here offer a number of optional arguments. The reader is advised to examine the Doxygen documentation included in the code for further details.
Warning
Make sure that a compatible integratorType
is selected, otherwise a runtime exception will be thrown.