I am currently trying to implement Orekit’s Taylor Algebra functionality into a reentry propagating tool. This tool, in it’s current (non-Taylor Algebra) version, uses a DormandPrince853Integrator, which is generally a good choice for a variable stepsize method. I have successfully used this integrator (or rather its “field” version) for Taylor Algebra-based propagations in the past, but never for reentry.
The problem comes when propagating until an AltitudeDetector (Alt = 0.) event, where the derivatives in the DerivativeStructure variables become null (real order-zero value is still kept). I have made several observations about this:
- If the AltitudeDetector is set to a considerably higher altitude (e.g. 10 km), derivatives are still there, suggesting that numerics are not stable when the orbit becomes too vertical.
- Every other variable stepsize method integrator available in Hipparchus suffers the same problem
- If, however, a fixed stepsize method is chosen instead (RungeKutta in any of its variations), propagation can take place until Alt = 0 and derivatives are kept. This obviously lacks all the benefits of a variable stepsize integrator.
For context, I use a FieldNumericalPropagator with a Holmes-Featherstone attraction model, Sun and Moon as 3rd bodies, solar radiation pressure and an implementation of IsotropicDrag that let’s me input a DerivativeStructure as drag coefficient. Minimum and maximum stepsize for the DormandPrince integrator are respectively [1e-20 s, 3e02 s] and position tolerance is set to 1e-8 m.
Is there any chance my config is wrong here? If not, I would really appreciate suggestions to avoid or improve the fixed-step method usage.
Thank you and cheers,