Package org.orekit.forces.drag
Class IsotropicDrag
- java.lang.Object
-
- org.orekit.forces.drag.IsotropicDrag
-
- All Implemented Interfaces:
DragSensitive
public class IsotropicDrag extends Object implements DragSensitive
This class models isotropic drag effects.The model of this spacecraft is a simple spherical model, this means that all coefficients are constant and do not depend of the direction.
- Since:
- 7.1
- Author:
- Luc Maisonobe
- See Also:
BoxAndSolarArraySpacecraft
,IsotropicRadiationCNES95Convention
-
-
Field Summary
-
Fields inherited from interface org.orekit.forces.drag.DragSensitive
DRAG_COEFFICIENT, GLOBAL_DRAG_FACTOR, LIFT_RATIO
-
-
Constructor Summary
Constructors Constructor Description IsotropicDrag(double crossSection, double dragCoeff)
Constructor with drag coefficient min/max set to ±∞.IsotropicDrag(double crossSection, double dragCoeff, double dragCoeffMin, double dragCoeffMax)
Constructor with drag coefficient min/max set by user.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
FieldVector3D<T>dragAcceleration(FieldSpacecraftState<T> state, T density, FieldVector3D<T> relativeVelocity, T[] parameters)
Compute the acceleration due to drag.Vector3D
dragAcceleration(SpacecraftState state, double density, Vector3D relativeVelocity, double[] parameters)
Compute the acceleration due to drag.List<ParameterDriver>
getDragParametersDrivers()
Get the drivers for supported parameters.
-
-
-
Constructor Detail
-
IsotropicDrag
public IsotropicDrag(double crossSection, double dragCoeff)
Constructor with drag coefficient min/max set to ±∞.- Parameters:
crossSection
- Surface (m²)dragCoeff
- drag coefficient
-
IsotropicDrag
public IsotropicDrag(double crossSection, double dragCoeff, double dragCoeffMin, double dragCoeffMax)
Constructor with drag coefficient min/max set by user.- Parameters:
crossSection
- Surface (m²)dragCoeff
- drag coefficientdragCoeffMin
- Minimum value of drag coefficientdragCoeffMax
- Maximum value of drag coefficient
-
-
Method Detail
-
getDragParametersDrivers
public List<ParameterDriver> getDragParametersDrivers()
Get the drivers for supported parameters.- Specified by:
getDragParametersDrivers
in interfaceDragSensitive
- Returns:
- parameters drivers
-
dragAcceleration
public 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.
- Specified by:
dragAcceleration
in interfaceDragSensitive
- 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²)
-
dragAcceleration
public <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.
- Specified by:
dragAcceleration
in interfaceDragSensitive
- 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²)
-
-