Position tolerance, min/max step

Hi all,

which are the general rules to choose position tolerance, min/max steps when using a numerical propagator?

I add another question. I see in a lot of examples the use of DormandPrinceIntegrator853, why? How I choose the integrator to use?

We now tend to use position tolerance at 0.001m. min and max step are mostly safety limits that should never be exceeded, so we use often something like 0.001s for min (but 1s would probably be sufficient) and 300s for max. Note that the integration error is:

  1. estimated by the propagator, so it is not really known (otherwise the integrator would know how to compensate it)
  2. applicable to one step, not the full integration

This means that a tolerance of 0.001m is not the accuracy for the complete trajectory ; the real error will be several order of magnitude higher than that.

If you really want to tune these parameters, you will have to do some testing, mainly depending on the amount of perturbing forces, altitude and eccentricity. You can use very tight parameters to hope achieving the “true” orbit, and then look how the parameters lead to different orbits.

Dormand-Prince 8(5,3) is known to be a very good and very efficient integrator, so we use it. Lower level integrators would most probably need shorter time steps, so in the end they would call the force models more often than Dormand-Prince 8(5,3). Perhaps this is not true for propagation with very rough force models (and hence smoother dynamics), but operationally, we often prefer to be as accurate as possible.