Interface ImpulseProvider

All Known Implementing Classes:
AbstractInPlaneImpulseProvider, CircularizingImpulseProvider, MeanSmaChangeImpulseProvider, OsculatingSmaChangeImpulseProvider

public interface ImpulseProvider
Interface providing velocity increment vectors to impulsive maneuvers.
Since:
13.0
Author:
Romain Serra
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    finish(SpacecraftState finalState)
    Method called at end of propagation.
    getImpulse(SpacecraftState state, boolean isForward)
    Method returning the impulse to be applied.
    default void
    init(SpacecraftState initialState, AbsoluteDate targetDate)
    Method called at start of propagation.
    of(Vector3D forwardImpulse)
    Get a provider returning a given vector for forward propagation and its opposite for backward.
  • Method Details

    • getImpulse

      Vector3D getImpulse(SpacecraftState state, boolean isForward)
      Method returning the impulse to be applied.
      Parameters:
      state - state before the maneuver is applied if isForward is true, after otherwise
      isForward - flag on propagation direction
      Returns:
      impulse in satellite's frame
    • init

      default void init(SpacecraftState initialState, AbsoluteDate targetDate)
      Method called at start of propagation.
      Parameters:
      initialState - state at start of propagation
      targetDate - target end date
    • finish

      default void finish(SpacecraftState finalState)
      Method called at end of propagation.
      Parameters:
      finalState - state at end of propagation
    • of

      static ImpulseProvider of(Vector3D forwardImpulse)
      Get a provider returning a given vector for forward propagation and its opposite for backward. The attitude comes from the state directly.
      Parameters:
      forwardImpulse - forward impulse vector
      Returns:
      constant provider