public class DragForce extends org.apache.commons.math3.ode.AbstractParameterizable implements ForceModel
DragSensitive| Constructor and Description |
|---|
DragForce(Atmosphere atmosphere,
DragSensitive spacecraft)
Simple constructor.
|
| Modifier and Type | Method and Description |
|---|---|
org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> |
accelerationDerivatives(AbsoluteDate date,
Frame frame,
org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> position,
org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> velocity,
org.apache.commons.math3.geometry.euclidean.threed.FieldRotation<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> rotation,
org.apache.commons.math3.analysis.differentiation.DerivativeStructure mass)
Compute acceleration derivatives with respect to state parameters.
|
org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> |
accelerationDerivatives(SpacecraftState s,
String paramName)
Compute acceleration derivatives with respect to additional parameters.
|
void |
addContribution(SpacecraftState s,
TimeDerivativesEquations adder)
Compute the contribution of the drag to the perturbing acceleration.
|
EventDetector[] |
getEventsDetectors()
There are no discrete events for this model.
|
double |
getParameter(String name) |
void |
setParameter(String name,
double value) |
complainIfNotSupported, getParametersNames, isSupportedpublic DragForce(Atmosphere atmosphere, DragSensitive spacecraft)
atmosphere - atmospheric modelspacecraft - the object physical and geometrical informationpublic void addContribution(SpacecraftState s, TimeDerivativesEquations adder) throws OrekitException
addContribution in interface ForceModels - the current state information : date, kinematics, attitudeadder - object where the contribution should be addedOrekitException - if some specific error occurspublic EventDetector[] getEventsDetectors()
getEventsDetectors in interface ForceModelpublic double getParameter(String name) throws IllegalArgumentException
getParameter in interface org.apache.commons.math3.ode.ParameterizedODEIllegalArgumentExceptionpublic void setParameter(String name, double value) throws IllegalArgumentException
setParameter in interface org.apache.commons.math3.ode.ParameterizedODEIllegalArgumentExceptionpublic org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> accelerationDerivatives(AbsoluteDate date, Frame frame, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> position, org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> velocity, org.apache.commons.math3.geometry.euclidean.threed.FieldRotation<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> rotation, org.apache.commons.math3.analysis.differentiation.DerivativeStructure mass) throws OrekitException
The derivatives should be computed with respect to position, velocity and optionnaly mass. The input parameters already take into account the free parameters (6 or 7 depending on derivation with respect to mass being considered or not) and order (always 1). Free parameters at indices 0, 1 and 2 correspond to derivatives with respect to position. Free parameters at indices 3, 4 and 5 correspond to derivatives with respect to velocity. Free parameter at index 6 (if present) corresponds to to derivatives with respect to mass.
accelerationDerivatives in interface ForceModeldate - current dateframe - inertial reference frame for state (both orbit and attitude)position - position of spacecraft in reference framevelocity - velocity of spacecraft in reference framerotation - orientation (attitude) of the spacecraft with respect to reference framemass - spacecraft massOrekitException - if derivatives cannot be computedpublic org.apache.commons.math3.geometry.euclidean.threed.FieldVector3D<org.apache.commons.math3.analysis.differentiation.DerivativeStructure> accelerationDerivatives(SpacecraftState s, String paramName) throws OrekitException
accelerationDerivatives in interface ForceModels - spacecraft stateparamName - name of the parameter with respect to which derivatives are requiredOrekitException - if derivatives cannot be computedCopyright © 2002-2017 CS Systèmes d'information. All rights reserved.