Add default constructor in DSSTAtmosphericDrag

At the moment, DSSTAtmosphericDrag builds either isotropic drag or either a drag for based on DragSensitive.

It can be a good enhancement to add a new constructor into DSSTAtmosphericDrag so that a custom DragForce can be set in case a custom DragForce is implemented (using spacecraft state for example).

I have just created this small issue in gitlab : https://gitlab.orekit.org/orekit/orekit/issues/634.
I am creating the patch to contribute.

Best regards,

Anne-Laure

Hi Anne-Laure,

Thank you for contributing to Orekit.

Does your custom DragForce consider a DragSensitive and an Atmosphere object ? I’m asking this question because in DSSTAtmosphericDrag you have to initialize these two objects in the constructor of the model.

Specifically, the DragSensitive object is used to access the estimated force model parameters (i.e. drag coefficient, lift ratio).

Kind regards,
Bryan

Hello Bryan,

Thank you for your reply!

Before suggesting the contribution, I wanted to be sure it complies our needs (and it does!).

For information, in our case, we need to compute an acceleration based on SpacecraftState. Orbit information are not included in API defined in DragSensitive, so we found that extending DragForce instead of DragSensitive will allow us to get SpacecraftState

With the help of @yannick, we wil contribute the new DSSTAtmosphericDrag constructor as defined above but if you think of a btter way to access to SpacecraftState while computing drag acceleleration ? I would be glad to here :smiley:.

Best regards,

Anne-Laure

A better way to access to SpacecraftState while computing the drag acceleration is to change the current signature of the method dragAcceleration in DragSensitive interface and put a SpacecraftState argument instead of some of the other arguments (Frame, AbsoluteDate, …).

However, this modification cannot be performed for the next release of Orekit (i.e. 10.1) because it is an important change for the current API. One needs to wait the next major release of Orekit.

I also did some minor remarks on the issues tracker #634

Kind regards,
Bryan