Propagator Components
A propagator component comprises a numerical integrator and a set of propagator functions. The numerical integrator defines the algorithm used to integrate the accelerations of the spacecraft and the constants that control the step size and accuracy of the propagation. Propagator functions define the external forces that will influence the spacecraft's trajectory.
Propagator Functions
Defining the central body
Click next to the Central Body field to select the central body of the propagator from the Select CentralBody dialog box.
If you change the central body of a propagator, Astrogator will adjust the propagator functions. It will try to correct functions that are incompatible with the new central body. If a function cannot be compatible with the new central body, Astrogator will remove it.
Selecting propagator functions
You can apply five types of propagator functions to your propagator: atmospheric models, gravity models, plugins, SRP models, and third bodies. Click to select components from the Propagator Functions folder or any of its subfolders. A propagator can have as many third-body components as you want, but it can only have one component of each of the other types. You can right-click a selected component or use the toolbar buttons to cut, copy, paste, or delete it.
When you add a function to a propagator model, Astrogator embeds a copy of the component in that model. If you edit the function within the propagator model, the original component remains unchanged. If you edit the original component, the copy that you have embedded in the propagator model will remain unchanged. You will need to remove the function component and replace it if you want to use the new version.
To save a propagator function embedded in a propagator model as a new component, select it in the list and then click .
Numerical integrators
You can use the Numerical Integrator tab to select the type of integrator for the propagator to use and to define the integrator's parameters. Click to select integrator components from the Numerical Integrator List. You can right-click a selected component or use the toolbar buttons to cut, copy, paste, or delete it. You can add as many integrators to the tab list as are available in the New Function Numerical Integrator List. This tab list becomes the available integrator list for that particular propagator at any place in Astrogator where you select propagator/integrator pairs.
Astrogator provides eight numerical integrators, which are briefly described in the table below. Click the name of an integrator in this table to skip to the section of this topic that provides a full description of it.
Integrator | Description |
---|---|
Bulirsch-Stoer | An integrator based on Richardson extrapolation with automatic step-size control |
Gauss-Jackson | A twelfth-order Gauss-Jackson integrator for second-order ODEs; does not use error control, meaning that it uses a fixed step size |
RK2nd3rd | A second-order Runge-Kutta integrator with third-order error control, using Bogacki and Shampine coefficients |
RK4th | A fourth-order Runge-Kutta integrator that does not use error control |
RK4th5th | A fourth-order Runge-Kutta integrator with fifth-order error control, using Cash-Karp coefficients |
RK4thAdapt | A fourth-order Runge-Kutta integrator that adapts step size by comparing one full step to two half steps; can be slow compared to the other algorithms, but is very common and can be used for comparison |
RKF7th8th | A seventh-order Runge-Kutta-Fehlberg integrator with eighth-order error control; the default integrator used in the HPOP propagator |
RKV8th9th | A ninth-order Runge-Kutta-Verner integrator with eighth-order error control The RKV8th9thEfficient integration method utilizes Jim Verner's coefficients, available at https://www.sfu.ca/~jverner. |
If you don't know which integrator to choose, select the RKF7th8th integrator. It works for all situations, and the parameter default values are precise for low-Earth orbits.
Bulirsch-Stoer
Parameter | Description |
---|---|
Use VOP | Select this option to use a variation of parameters in universal variables formulation of the equations of motion. |
Initial Step | This is the time interval from the initial point to the first point that the integrator evaluates. |
Use fixed step | Select this option to force the step size to remain constant throughout the integration of the orbit. Error control is not employed and the related parameter fields are disabled. Using a large fixed step size can cause the integrator to produce inaccurate results. |
Maximum Step | Select this option to specify a maximum time interval between two subsequent evaluations. |
Minimum Step | Select this option to specify a minimum time interval between two subsequent evaluations. This can cause the integrator to produce inaccurate results because the error control cannot adjust the step size below this value, regardless of whether it exceeds the error tolerance. |
Maximum Relative Error | This is the error tolerance for an individual integration step. If the calculated error exceeds the tolerance, the integrator will reduce the step size. If the calculated error is less than the tolerance, the integrator will increase the step size. |
Maximum Sequences | This is the maximum number of sequences to be taken for an individual step when attempting to meet the error tolerance. |
Maximum Iterations | This is the maximum number of trial steps to be taken when searching for a step size that meets the error tolerance. |
First Safety Coefficient | This is a coefficient that scales the decrease in step size that will be applied when the calculated error is too high. The algorithm uses it to control the magnitude of step size changes. |
Second Safety Coefficient | This is a coefficient that scales the increase in step size that will be applied when the calculated error is within the error tolerance. The algorithm uses it to control the magnitude of step size changes. |
Use (Regularized Time) |
Select this option to integrate the trajectory with respect to regularized time. The relationship between regularized and normal time is given by the following equation: where n is a user-provided exponent, defined by the Exponent field. |
Exponent | This is the exponent for the regularized time equation. |
Steps per Orbit | This is the step size in regularized time. |
The Bulirsch-Stoer integrator does not function efficiently with the Maximum Relative Error tolerance set to 1.0e-16 or below. This is because the tolerance is of the same order as the truncation error. The result is extremely long run times.
Gauss-Jackson
Gauss-Jackson Starting-Stopping Integrator
When you select Gauss-Jackson as the numerical integrator, the Propagator dialog box presents a section called Starting/Stopping Integrator. This integrator is a single-step integrator that Astrogator uses when starting the Gauss-Jackson integrator and when searching for stopping conditions. You can select any of the other numerical integrators to define the starting and stopping integrator.
The RK2nd3rd integrator cannot function as the starting integrator. If you select it, it will function as the stopping integrator while using the (default) RK7th8th integrator as the starting integrator.
Variable-step Runge-Kutta integrators
Parameter | Description |
---|---|
Use VOP | Select this option to use a variation of parameters in universal variables formulation of the equations of motion. |
Initial Step | Enter the time interval from the initial point to the first point that the integrator evaluates. |
Coefficients | For the RKV8th9th integrator, select Efficient to use the most recent and efficient coefficients or SIAM 1978 to use the original 1978 coefficients. |
Use fixed step | Select this option to force the step size to remain constant throughout the integration of the orbit. Error control is not employed and the related parameter fields are disabled. Using a large fixed step size can cause the integrator to produce inaccurate results. |
Maximum Step | Select this option to specify a maximum time interval between two subsequent evaluations. |
Minimum Step | Select this option to specify a minimum time interval between two subsequent evaluations. This can cause the integrator to produce inaccurate results because the error control cannot adjust the step size below this value, regardless of whether it exceeds the error tolerance. |
Error Control | Select an option from the menu to define the error control that you want to apply for the integrator:
|
Maximum Absolute Error | Defines the error tolerance for an individual integration step in absolute terms. If the calculated error exceeds the absolute tolerance, the step will fail and the integrator will attempt the step again with a reduced size. It will fail regardless of whether the relative tolerance (if applicable) has been exceeded or not. If the calculated error is less than both the absolute tolerance and relative tolerance (if applicable), the integrator will increase the step size. |
Maximum Relative Error | Defines the error tolerance for an individual integration step in relative terms. If the calculated error exceeds the tolerance, the integrator will reduce the step size. If the calculated error is less than the tolerance, the integrator will increase the step size. |
Maximum Iterations | Enter the maximum number of trial steps the integrator will take when searching for a step size that meets the error tolerance. |
High Safety Coefficient | Enter a coefficient that scales the decrease in step size that will be applied when the calculated error is too high. The integrator uses it to control the magnitude of step size changes. |
Low Safety Coefficient | Enter a coefficient that scales the increase in step size that will be applied when the calculated error is within the error tolerance. The integrator uses it to control the magnitude of step size changes. |
Use (Regularized Time) |
Select this option to integrate the trajectory with respect to regularized time. The relationship between regularized and normal time is given by the following equation: where n is a user provided exponent, defined by the Exponent field. |
Exponent | Enter the exponent for the regularized time equation. |
Steps per Orbit | Enter the step size in regularized time. |
RK4th
Parameter | Description |
---|---|
Use VOP | Select this option to use a variation of parameters in universal variables formulation of the equations of motion. |
Step Size | Enter the time interval of the integration step. |
Use (Regularized Time) |
Select this option to integrate the trajectory with respect to regularized time. The relationship between regularized and normal time is given by the following equation: where n is a user provided exponent, defined by the Exponent field. |
Exponent | Enter the exponent for the regularized time equation. |
Steps per Orbit | Enter the step size in regularized time. |
Integration comparison tests
To contrast the integrators that you can choose from, AGI performed a set of integration comparison tests. The tests evaluated integrator and equation of motion combinations applied to several force model configurations. For each force model configuration, the software generated a reference trajectory with a 10 second time step. The baseline was the Runge-Kutta-Fehlberg 7/8 integrator with relative error control set at 1.0e-13. This was compared to trajectories generated with other integrator and equation of motion combinations to the reference trajectories. The results are tabulated in the sample file. All differences are the maximum positional differences during the integration time span. The unit is meters. These tables are not a definitive guide to integrator selection, but may help you with that decision.