Hi, I am a total newbie to Orekit, and I only tried very simple things, like simulating a very simple orbit maneuver. Something like:
... final NumericalPropagator propagator = new NumericalPropagator(integrator); ... final PropulsionModel propulsionModel = new BasicConstantThrustPropulsionModel(thrust, isp, Vector3D.PLUS_I, "apogee-engine"); // build maneuver and add it to the propagator as a new force model propagator.addForceModel(new Maneuver(attitudeOverride, triggers, propulsionModel)); ... propagator.propagate(...)
which does something. However, I am now trying to extend the propulsion model and the simulation with a more realistic one (having in mind e.g. an electric thrust with a battery model, which it discharges by some amount when turned on at a maneuver). Here I am stuck and were unable to find anything understandable online (even in orekit tutorials). My understanding (or that’s how I imagine it) is that I need to “extend” the propulsionModel with a battery state/capacity (which decreases at each burn) which should then be automatically computed by propagator when calling “propagate()”.
I noticed that in the BasicConstantThrustPropulsionModel some methods take additional input parameters, e.g.,
getThrustVector(double parameters) and I have a feeling that these parameters should be related to some “user-defined models” which impact the propulsion (maybe I am completely wrong). Also, I found the class “AdditionalDerivativesProvider” which says that it is used “to integrate some problem-specific equations along with classical spacecraft equations of motion” and it feels that that should be relevant to my issue as well. Here, I don’t understand how you extend this class with own “equations” such that it would be understood by the propagator.
So my question is, am I on the right track? Is there maybe somewhere a simple example which shows how to extend a spacecraft state by something which evolves and changes during propagation? (further extension, like the battery charges again when the spacecraft is rotated towards the sun is way to far at the moment for me:)).
Thank you a lot.