Interface J2SquaredModel

All Known Implementing Classes:
ZeisModel

public interface J2SquaredModel
Semi-analytical J2-squared model.

This interface is implemented by models providing J2-squared second-order terms in equinoctial elements. These terms are used in the computation of the closed-form J2-squared perturbation in semi-analytical satellite theory.

Since:
12.0
Author:
Bryan Cazabonne
See Also:
  • Method Details

    • computeMeanEquinoctialSecondOrderTerms

      double[] computeMeanEquinoctialSecondOrderTerms(DSSTJ2SquaredClosedFormContext context)
      Compute the J2-squared second-order terms in equinoctial elements.
      Parameters:
      context - model context
      Returns:
      the J2-squared second-order terms in equinoctial elements. Order must follow: [A, K, H, Q, P, M]
    • computeMeanEquinoctialSecondOrderTerms

      <T extends CalculusFieldElement<T>> T[] computeMeanEquinoctialSecondOrderTerms(FieldDSSTJ2SquaredClosedFormContext<T> context)
      Compute the J2-squared second-order terms in equinoctial elements.
      Type Parameters:
      T - type of the elements
      Parameters:
      context - model context
      Returns:
      the J2-squared second-order terms in equinoctial elements. Order must follow: [A, K, H, Q, P, M]
    • initializeShortPeriodTerms

      default List<ShortPeriodTerms> initializeShortPeriodTerms(AuxiliaryElements auxiliaryElements, PropagationType type, double[] parameters)
      Performs initialization of J2-squared short period terms prior to propagation.
      Parameters:
      auxiliaryElements - auxiliary elements
      type - type of the elements used (MEAN or OSCULATING)
      parameters - force model parameters
      Returns:
      a list containing the initialized short period terms
      Since:
      12.2
    • initializeShortPeriodTerms

      default <T extends CalculusFieldElement<T>> List<FieldShortPeriodTerms<T>> initializeShortPeriodTerms(FieldAuxiliaryElements<T> auxiliaryElements, PropagationType type, T[] parameters)
      Performs initialization of J2-squared short period terms prior to propagation.
      Type Parameters:
      T - type of the field elements
      Parameters:
      auxiliaryElements - auxiliary elements
      type - type of the orbital elements used (MEAN or OSCULATING)
      parameters - force model parameters
      Returns:
      a list containing the initialized short period terms
      Since:
      12.2
    • updateShortPeriodTerms

      default void updateShortPeriodTerms(double[] parameters, SpacecraftState... meanStates)
      Update the J2-squared short period terms.

      The short period terms that will be updated are the ones that were returned during the call to initializeShortPeriodTerms(AuxiliaryElements, PropagationType, double[]).

      Parameters:
      parameters - force model parameters
      meanStates - mean states information: date, kinematics, attitude
      Since:
      12.2
    • updateShortPeriodTerms

      default <T extends CalculusFieldElement<T>> void updateShortPeriodTerms(T[] parameters, FieldSpacecraftState<T>... meanStates)
      Update the J2-squared short period terms.

      The short period terms that will be updated are the ones that were returned during the call to initializeShortPeriodTerms(AuxiliaryElements, PropagationType, double[]).

      Type Parameters:
      T - type of the field elements
      Parameters:
      parameters - force model parameters
      meanStates - mean states information: date, kinematics, attitude
      Since:
      12.2