Package org.orekit.forces.gravity
Class DeSitterRelativity
- java.lang.Object
-
- org.orekit.forces.gravity.DeSitterRelativity
-
- All Implemented Interfaces:
ForceModel
,EventDetectorsProvider
,ParameterDriversProvider
public class DeSitterRelativity extends Object implements ForceModel
De Sitter post-Newtonian correction force due to general relativity.De Sitter term causes a precession of the orbital plane at a rate of 19 mas per year.
- Since:
- 10.3
- Author:
- Bryan Cazabonne
- See Also:
- "Petit, G. and Luzum, B. (eds.), IERS Conventions (2010), Chapter 10, General relativistic models for space-time coordinates and equations of motion (2010)"
-
-
Field Summary
Fields Modifier and Type Field Description static String
ATTRACTION_COEFFICIENT_SUFFIX
Suffix for parameter name for attraction coefficient enabling Jacobian processing.-
Fields inherited from interface org.orekit.propagation.events.EventDetectorsProvider
DATATION_ACCURACY
-
-
Constructor Summary
Constructors Constructor Description DeSitterRelativity()
Constructor.DeSitterRelativity(CelestialBody earth, CelestialBody sun)
Simple constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
FieldVector3D<T>acceleration(FieldSpacecraftState<T> s, T[] parameters)
Compute acceleration.Vector3D
acceleration(SpacecraftState s, double[] parameters)
Compute acceleration.boolean
dependsOnPositionOnly()
Check if force model depends on position only at a given, fixed date.ExtendedPositionProvider
getEarth()
Get the Earth model used to compute De Sitter effect.List<ParameterDriver>
getParametersDrivers()
Get the drivers for parameters.CelestialBody
getSun()
Get the sun model used to compute De Sitter effect.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.events.EventDetectorsProvider
getDateDetector, getEventDetectors, getFieldDateDetector, getFieldEventDetectors
-
Methods inherited from interface org.orekit.forces.ForceModel
addContribution, addContribution, dependsOnAttitudeRate, getEventDetectors, getFieldEventDetectors, init, init
-
Methods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
-
-
-
-
Field Detail
-
ATTRACTION_COEFFICIENT_SUFFIX
public static final String ATTRACTION_COEFFICIENT_SUFFIX
Suffix for parameter name for attraction coefficient enabling Jacobian processing.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DeSitterRelativity
@DefaultDataContext public DeSitterRelativity()
Constructor.It uses the
DataContext.getDefault()
to initialize the celestial bodies.
-
DeSitterRelativity
public DeSitterRelativity(CelestialBody earth, CelestialBody sun)
Simple constructor.- Parameters:
earth
- the Earthsun
- the Sun
-
-
Method Detail
-
getSun
public CelestialBody getSun()
Get the sun model used to compute De Sitter effect.- Returns:
- the sun model
-
getEarth
public ExtendedPositionProvider getEarth()
Get the Earth model used to compute De Sitter effect.- Returns:
- the earth model
-
dependsOnPositionOnly
public boolean dependsOnPositionOnly()
Check if force model depends on position only at a given, fixed date.- Specified by:
dependsOnPositionOnly
in interfaceForceModel
- Returns:
- true if force model depends on position only, false if it depends on velocity, either directly or due to a dependency on attitude
-
acceleration
public Vector3D acceleration(SpacecraftState s, double[] parameters)
Compute acceleration.- Specified by:
acceleration
in interfaceForceModel
- Parameters:
s
- current state information: date, kinematics, attitudeparameters
- values of the force model parameters at state date, only 1 value for each parameterDriver- Returns:
- acceleration in same frame as state
-
acceleration
public <T extends CalculusFieldElement<T>> FieldVector3D<T> acceleration(FieldSpacecraftState<T> s, T[] parameters)
Compute acceleration.- Specified by:
acceleration
in interfaceForceModel
- Type Parameters:
T
- type of the elements- Parameters:
s
- current state information: date, kinematics, attitudeparameters
- values of the force model parameters at state date, only 1 value for each parameterDriver- Returns:
- acceleration in same frame as state
-
getParametersDrivers
public List<ParameterDriver> getParametersDrivers()
Get the drivers for parameters.- Specified by:
getParametersDrivers
in interfaceParameterDriversProvider
- Returns:
- drivers for parameters
-
-