Class SingleBodyAbsoluteAttraction
- java.lang.Object
-
- org.orekit.forces.gravity.SingleBodyAbsoluteAttraction
-
- All Implemented Interfaces:
ForceModel
,EventDetectorsProvider
,ParameterDriversProvider
public class SingleBodyAbsoluteAttraction extends Object implements ForceModel
Body attraction force model computed as absolute acceleration towards a body.This force model represents the same physical principles as
NewtonianAttraction
, but has several major differences:- the attracting body can be away from the integration frame center,
- several instances of this force model can be added when several bodies are involved,
- this force model is never automatically added by the numerical propagator
The possibility for the attracting body to be away from the frame center allows to use this force model when integrating for example an interplanetary trajectory propagated in an Earth centered frame (in which case an instance of
InertialForces
must also be added to take into account the coupling effect of relative frames motion).The possibility to add several instances allows to use this in interplanetary trajectories or in trajectories about Lagrangian points
The fact this force model is never automatically added by the numerical propagator differs from
NewtonianAttraction
asNewtonianAttraction
may be added automatically when propagating a trajectory represented as anOrbit
, which must always refer to a central body, if user did not add theNewtonianAttraction
or set the central attraction coefficient by himself.- Author:
- Luc Maisonobe, Julio Hernanz
- See Also:
InertialForces
-
-
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 SingleBodyAbsoluteAttraction(CelestialBody body)
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 models depends on position only.List<ParameterDriver>
getParametersDrivers()
Get the drivers for parameters.-
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
getEventDetectors, getFieldEventDetectors
-
Methods inherited from interface org.orekit.forces.ForceModel
addContribution, addContribution, 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
-
SingleBodyAbsoluteAttraction
public SingleBodyAbsoluteAttraction(CelestialBody body)
Simple constructor.- Parameters:
body
- the body to consider (ex:CelestialBodies.getSun()
orCelestialBodies.getMoon()
)
-
-
Method Detail
-
dependsOnPositionOnly
public boolean dependsOnPositionOnly()
Check if force models depends on position only.- 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
-
-