I noticed there is a constructor in FieldSpacecraftState to build it from a Field and a SpacecraftState (with all elements constant basically). Internally that thing can create a FieldOrbit from an Orbit. However FieldOrbit inheritors themselves do not have such constructors. I think it’d be beneficial to create such constructors (and call them in FieldSpacecraftState). Any reason why that hasn’t been done before? Any objections?
I’ve opened issue #1194 for that and assigned myself
I think I will also create a separate issue to add a method returning a “copy” of the (Field)Orbit without the non Keplerian terms. It’s for performance as methods like getPVCoordinates are slower if derivatives are present.
Other thought:
I would like to introduce a public method isElliptical for (Field)Orbit that would basically return getA() > 0 by default. This is to avoid duplicated code. For inheritors incompatible with hyperbolic status like EquinoctialOrbit, it would return true.
What do you think?