Package org.orekit.forces.drag
Interface DragSensitive
- All Known Implementing Classes:
BoxAndSolarArraySpacecraft,IsotropicDrag
public interface DragSensitive
Interface for spacecraft that are sensitive to atmospheric drag forces.
- Author:
- Luc Maisonobe, Pascal Parraud
- See Also:
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault booleanCheck if model depends on attitude's rotation rate or acceleration at a given, fixed date.<T extends CalculusFieldElement<T>>
FieldVector3D<T> dragAcceleration(FieldSpacecraftState<T> state, T density, FieldVector3D<T> relativeVelocity, T[] parameters) Compute the acceleration due to drag.dragAcceleration(SpacecraftState state, double density, Vector3D relativeVelocity, double[] parameters) Compute the acceleration due to drag.Get the drivers for supported parameters.
-
Field Details
-
GLOBAL_DRAG_FACTOR
Parameter name for global multiplicative factor.- Since:
- 12.0
- See Also:
-
DRAG_COEFFICIENT
Parameter name for drag coefficient.- See Also:
-
LIFT_RATIO
Parameter name for lift ration enabling Jacobian processing.The lift ratio is the proportion of atmosphere modecules that will experience specular reflection when hitting spacecraft instead of experiencing diffuse reflection. The ratio is between 0 and 1, 0 meaning there are no specular reflection, only diffuse reflection, and hence no lift effect.
- Since:
- 9.0
- See Also:
-
-
Method Details
-
dependsOnAttitudeRate
default boolean dependsOnAttitudeRate()Check if model depends on attitude's rotation rate or acceleration at a given, fixed date. If false, it essentially means that at most the attitude's rotation is used when computing the acceleration vector. The default implementation returns false as common models for orbital mechanics do not.- Returns:
- true if force model depends on attitude derivatives
- Since:
- 12.1
-
getDragParametersDrivers
List<ParameterDriver> getDragParametersDrivers()Get the drivers for supported parameters.- Returns:
- parameters drivers
- Since:
- 8.0
-
dragAcceleration
Vector3D dragAcceleration(SpacecraftState state, double density, Vector3D relativeVelocity, double[] parameters) Compute the acceleration due to drag.The computation includes all spacecraft specific characteristics like shape, area and coefficients.
- Parameters:
state- current statedensity- atmospheric density at spacecraft positionrelativeVelocity- relative velocity of atmosphere with respect to spacecraft, in the same inertial frame as spacecraft orbit (m/s)parameters- values of the force model parameters- Returns:
- spacecraft acceleration in the same inertial frame as spacecraft orbit (m/s²)
- Since:
- 12.0
-
dragAcceleration
<T extends CalculusFieldElement<T>> FieldVector3D<T> dragAcceleration(FieldSpacecraftState<T> state, T density, FieldVector3D<T> relativeVelocity, T[] parameters) Compute the acceleration due to drag.The computation includes all spacecraft specific characteristics like shape, area and coefficients.
- Type Parameters:
T- instance of a CalculusFieldElement- Parameters:
state- current statedensity- atmospheric density at spacecraft positionrelativeVelocity- relative velocity of atmosphere with respect to spacecraft, in the same inertial frame as spacecraft orbit (m/s)parameters- values of the force model parameters- Returns:
- spacecraft acceleration in the same inertial frame as spacecraft orbit (m/s²)
- Since:
- 12.0
-