public class OceanTides extends AbstractParameterizable implements ForceModel
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_POINTS
Default number of points tides field sampling.
|
static double |
DEFAULT_STEP
Default step for tides field sampling (seconds).
|
Constructor and Description |
---|
OceanTides(Frame centralBodyFrame,
double ae,
double mu,
boolean poleTide,
double step,
int nbPoints,
int degree,
int order,
IERSConventions conventions,
UT1Scale ut1)
Simple constructor.
|
OceanTides(Frame centralBodyFrame,
double ae,
double mu,
int degree,
int order,
IERSConventions conventions,
UT1Scale ut1)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
FieldVector3D<DerivativeStructure> |
accelerationDerivatives(AbsoluteDate date,
Frame frame,
FieldVector3D<DerivativeStructure> position,
FieldVector3D<DerivativeStructure> velocity,
FieldRotation<DerivativeStructure> rotation,
DerivativeStructure mass)
Compute acceleration derivatives with respect to state parameters.
|
FieldVector3D<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 force model to the perturbing
acceleration.
|
EventDetector[] |
getEventsDetectors()
Get the discrete events related to the model.
|
double |
getParameter(String name) |
void |
setParameter(String name,
double value) |
complainIfNotSupported, getParametersNames, isSupported
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParametersNames, isSupported
public static final double DEFAULT_STEP
public static final int DEFAULT_POINTS
public OceanTides(Frame centralBodyFrame, double ae, double mu, int degree, int order, IERSConventions conventions, UT1Scale ut1) throws OrekitException
This constructor uses pole tides, the default step
and default
number of points
for the tides field interpolation.
centralBodyFrame
- rotating body frameae
- central body reference radiusmu
- central body attraction coefficientdegree
- degree of the tide model to loadorder
- order of the tide model to loadconventions
- IERS conventions used for loading ocean pole tideut1
- UT1 time scaleOrekitException
- if the ocean tides model cannot be read or the
model does not support requested degree or orderDEFAULT_STEP
,
DEFAULT_POINTS
,
OceanTides(Frame, double, double, boolean, double, int, int, int, IERSConventions, UT1Scale)
,
GravityFieldFactory.getOceanTidesWaves(int, int)
public OceanTides(Frame centralBodyFrame, double ae, double mu, boolean poleTide, double step, int nbPoints, int degree, int order, IERSConventions conventions, UT1Scale ut1) throws OrekitException
centralBodyFrame
- rotating body frameae
- central body reference radiusmu
- central body attraction coefficientpoleTide
- if true, pole tide is computedstep
- time step between sample points for interpolationnbPoints
- number of points to use for interpolation, if less than 2
then no interpolation is performed (thus greatly increasing computation cost)degree
- degree of the tide model to loadorder
- order of the tide model to loadconventions
- IERS conventions used for loading ocean pole tideut1
- UT1 time scaleOrekitException
- if the ocean tides model cannot be read or the
model does not support requested degree or orderGravityFieldFactory.getOceanTidesWaves(int, int)
public double getParameter(String name) throws UnknownParameterException
getParameter
in interface ParameterizedODE
UnknownParameterException
public void setParameter(String name, double value) throws UnknownParameterException
setParameter
in interface ParameterizedODE
UnknownParameterException
public void addContribution(SpacecraftState s, TimeDerivativesEquations adder) throws OrekitException
addContribution
in interface ForceModel
s
- current state information: date, kinematics, attitudeadder
- object where the contribution should be addedOrekitException
- if some specific error occurspublic FieldVector3D<DerivativeStructure> accelerationDerivatives(AbsoluteDate date, Frame frame, FieldVector3D<DerivativeStructure> position, FieldVector3D<DerivativeStructure> velocity, FieldRotation<DerivativeStructure> rotation, 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 ForceModel
date
- 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 FieldVector3D<DerivativeStructure> accelerationDerivatives(SpacecraftState s, String paramName) throws OrekitException
accelerationDerivatives
in interface ForceModel
s
- spacecraft stateparamName
- name of the parameter with respect to which derivatives are requiredOrekitException
- if derivatives cannot be computedpublic EventDetector[] getEventsDetectors()
getEventsDetectors
in interface ForceModel
Copyright © 2002-2015 CS Systèmes d'information. All rights reserved.