public class HarmonicAccelerationModel extends Object implements AccelerationModel
Constructor and Description |
---|
HarmonicAccelerationModel(String prefix,
AbsoluteDate referenceDate,
double fundamentalPeriod,
int harmonicMultiplier)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
List<ParameterDriver> |
getParametersDrivers()
Get the drivers for acceleration model parameters.
|
void |
init(SpacecraftState initialState,
AbsoluteDate target)
Initialize the acceleration model at the start of the propagation.
|
<T extends CalculusFieldElement<T>> |
signedAmplitude(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.
|
public HarmonicAccelerationModel(String prefix, AbsoluteDate referenceDate, double fundamentalPeriod, int harmonicMultiplier)
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 orbit
Keplerian period
)harmonicMultiplier
- multiplier to compute harmonic period from
fundamental period)public void init(SpacecraftState initialState, AbsoluteDate target)
The default implementation of this method does nothing
init
in interface AccelerationModel
initialState
- spacecraft state at the start of propagation.target
- date of propagation. Not equal to initialState.getDate()
.public double signedAmplitude(SpacecraftState state, double[] parameters)
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.
signedAmplitude
in interface AccelerationModel
state
- current state information: date, kinematics, attitudeparameters
- values of the force model parameterspublic <T extends CalculusFieldElement<T>> T signedAmplitude(FieldSpacecraftState<T> state, T[] parameters)
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.
signedAmplitude
in interface AccelerationModel
T
- type of the elementsstate
- current state information: date, kinematics, attitudeparameters
- values of the force model parameterspublic List<ParameterDriver> getParametersDrivers()
getParametersDrivers
in interface AccelerationModel
Copyright © 2002-2021 CS GROUP. All rights reserved.