[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orekit Users] ConstantThrustManeuver with DSSTPropagator?



Good morning,

I agree with Luc that numerical averaging could be applied.

I would like to note also that modeling electric propulsion maneuvers was one of the very first applications of the algorithms that later evolved to be the DSST. See the work by Ted Edelbaum, Harvey Malcow, and Les Sackett in the '70s at the Draper Lab on orbit raising. The context was 'orbit raising' from LEO to GEO.

Electric propulsion and DSST are a natural mix when long duration (many revs) electric propulsion maneuvers are considered.

Also, one of the contributors to the DSST, Wayne McClain, worked the issue of finite burn maneuvers.

I will try to dig out these two refs later today.

regards,

Paul


--
Dr. Paul J. Cefola
Consultant in Aerospace Systems, Spaceflight Mechanics, & Astrodynamics
Adjunct Faculty, Dept. of Mechanical and Aerospace Engineering, University at Buffalo (SUNY)

4 Moonstone Way
Vineyard Haven, MA 02568
USA

508-696-1884 (phone on Martha's Vineyard)
978-201-1393 (cell)

paulcefo@buffalo.edu
paul.cefola@gmail.com

On 03/24/2016 4:36 am, MAISONOBE Luc wrote:
Joseph Huwaldt <joseph.huwaldt@dynetics.com> a écrit :

Greetings.

Hi Joseph,


Is there a way to use a ConstantThrustManeuver with a DSSTPropagator?

We have a low thrust propulsion system that we would like to run out for months at a time. Without the propulsion, the DSSTPropagator works well for
us in this scenario, but as far as I can tell, I have to switch to a
NumericalPropagator to use a thrust model (either impulsive or constant
thrust).  Is that correct?

Impulsive maneuver should work with all propagator, including DSST. It
mainly works by resetting the state at maneuver time during propagation,
inserting conversions from/to Cartesian orbit if needed.

I thought I had already added an intermediate case between impulsive and continuous maneuvers, something that should have been called SplitManeuver or something like that. However, I cannot find it any more :-(, it was probably
a dream ... Anyway, this would be simple to do, the idea was to split a
long maneuver in several smaller impulses. This would work well for classical maneuvers like for exemple apogee firing during geostationary LEOP, but I am
not sure it could scale up to months durations efficiently.

However, there is something that may be worth trying!
When we implemented short period terms in DSST, we added a feature that
allows DSSTPropagator to reuse some force models really implemented
for NumericalPropagator, i.e. models that only compute an acceleration.
You can look for example at AbstractGaussianContribution, which implements DSSTForceModel and therefore can be fully handled by DSSTPropagator. This
class delegates acceleration computation to any ForceModel passed at
construction. So you *could* create a DSSTContinuousManeuver class
that would extend AbstractGaussianContribution and delegate to
ConstantThrustManeuver! With this setting, you would have a maneuver
modeled by DSST, and both mean and short periodic terms would be computed
(they are estimated thanks to Gaussian quadratures).

Well, this solution would be highly experimental! I do not think it would be really accurate if thrust is high, but for electric propulsion, it may
be worth trying.

Incidentally, the SOCIS 2016 program by ESA has just started and they
ask for mentor to propose subjects. Adding this maneuver model for DSST
in Orekit would be a great subject for a student this summer, and a great
paper subject after that.

What do you think?

best regards,
Luc


Thanks!

Joseph Huwaldt
Dynetics, Inc.
Huntsville, AL
USA