Package org.orekit.forces.empirical
Class HarmonicAccelerationModel
- java.lang.Object
-
- org.orekit.forces.empirical.HarmonicAccelerationModel
-
- All Implemented Interfaces:
AccelerationModel
,ParameterDriversProvider
public class HarmonicAccelerationModel extends Object implements AccelerationModel
Harmonic acceleration model.- Since:
- 10.3
- Author:
- Luc Maisonobe, Bryan Cazabonne
-
-
Constructor Summary
Constructors Constructor Description HarmonicAccelerationModel(String prefix, AbsoluteDate referenceDate, double fundamentalPeriod, int harmonicMultiplier)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<ParameterDriver>
getParametersDrivers()
Get the drivers for parameters.void
init(SpacecraftState initialState, AbsoluteDate target)
Initialize the acceleration model at the start of the propagation.<T extends CalculusFieldElement<T>>
TsignedAmplitude(FieldSpacecraftState<T> state, T[] parameters)
Compute the signed amplitude of the acceleration.double
signedAmplitude(SpacecraftState state, double[] parameters)
Compute the signed amplitude of the acceleration.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
-
-
-
Constructor Detail
-
HarmonicAccelerationModel
public HarmonicAccelerationModel(String prefix, AbsoluteDate referenceDate, double fundamentalPeriod, int harmonicMultiplier)
Simple constructor.- Parameters:
prefix
- prefix to use for parameter driversreferenceDate
- reference date for computing polynomials, if null the reference date will be automatically set at propagation startfundamentalPeriod
- fundamental period (typically set to initial orbitKeplerian period
)harmonicMultiplier
- multiplier to compute harmonic period from fundamental period)
-
-
Method Detail
-
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 interfaceAccelerationModel
- Parameters:
initialState
- spacecraft state at the start of propagation.target
- date of propagation. Not equal toinitialState.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 interfaceAccelerationModel
- Parameters:
state
- current state information: date, kinematics, attitudeparameters
- 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 interfaceAccelerationModel
- Type Parameters:
T
- type of the elements- Parameters:
state
- current state information: date, kinematics, attitudeparameters
- 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 interfaceParameterDriversProvider
- Returns:
- drivers for parameters
-
-