Class PolynomialAccelerationModel

java.lang.Object
org.orekit.forces.empirical.PolynomialAccelerationModel
All Implemented Interfaces:
AccelerationModel, ParameterDriversProvider

public class PolynomialAccelerationModel extends Object implements AccelerationModel
Polynomial acceleration model.
Since:
10.3
Author:
Luc Maisonobe, Bryan Cazabonne
  • Constructor Details

    • PolynomialAccelerationModel

      public PolynomialAccelerationModel(String prefix, AbsoluteDate referenceDate, int degree)
      Simple constructor.
      Parameters:
      prefix - prefix to use for parameter drivers
      referenceDate - reference date for computing polynomials, if null the reference date will be automatically set at propagation start
      degree - polynomial degree (i.e. a value of 0 corresponds to a constant acceleration)
  • Method Details

    • init

      public void init(SpacecraftState initialState, AbsoluteDate target)
      Initialize the acceleration model at the start of the propagation.

      The default implementation of this method does nothing

      Specified by:
      init in interface AccelerationModel
      Parameters:
      initialState - spacecraft state at the start of propagation.
      target - date of propagation. Not equal to initialState.getDate().
    • signedAmplitude

      public double signedAmplitude(SpacecraftState state, double[] parameters)
      Compute the signed amplitude of the acceleration.

      The acceleration is the direction multiplied by the signed amplitude. So if signed amplitude is negative, the acceleratin is towards the opposite of the direction specified at construction.

      Specified by:
      signedAmplitude in interface AccelerationModel
      Parameters:
      state - current state information: date, kinematics, attitude
      parameters - values of the force model parameters
      Returns:
      norm of the acceleration
    • signedAmplitude

      public <T extends CalculusFieldElement<T>> T signedAmplitude(FieldSpacecraftState<T> state, T[] parameters)
      Compute the signed amplitude of the acceleration.

      The acceleration is the direction multiplied by the signed amplitude. So if signed amplitude is negative, the acceleratin is towards the opposite of the direction specified at construction.

      Specified by:
      signedAmplitude in interface AccelerationModel
      Type Parameters:
      T - type of the elements
      Parameters:
      state - current state information: date, kinematics, attitude
      parameters - values of the force model parameters
      Returns:
      norm of the acceleration
    • getParametersDrivers

      public List<ParameterDriver> getParametersDrivers()
      Get the drivers for parameters.
      Specified by:
      getParametersDrivers in interface ParameterDriversProvider
      Returns:
      drivers for parameters