fr.cnes.sirius.patrius.stela.forces.drag
Class StelaAtmosphericDrag

java.lang.Object
  extended by fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
      extended by fr.cnes.sirius.patrius.stela.forces.drag.StelaAtmosphericDrag
All Implemented Interfaces:
StelaForceModel

public class StelaAtmosphericDrag
extends AbstractStelaGaussContribution

Class representing the atmospheric drag for the Stela GTO extrapolator.

Since:
1.3
Version:
$Id: StelaAtmosphericDrag.java 17584 2017-05-10 13:26:39Z bignon $
Author:
Tiziana Sabatini
See Also:
StelaAeroModel
Concurrency :
not thread-safe
Concurrency comment :
not thread-safe due to use of mutable attributes

Field Summary
 
Fields inherited from class fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
dPert
 
Constructor Summary
StelaAtmosphericDrag(DragSensitive inSpacecraft, Atmosphere inAtmosphere, int inSquaringPoints, double inEarthRadius, double inAtmoThreshold, int inDragRecomputeStep)
          Constructor.
 
Method Summary
 double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit)
          Compute the partial derivatives for a given spacecraft state.
 double[] computePerturbation(StelaEquinoctialOrbit orbit, OrbitNatureConverter converter)
          Compute the dE/dt force derivatives for a given spacecraft state.
 double[] computeShortPeriods(StelaEquinoctialOrbit orbit)
          Compute the short periodic variations for a given spacecraft state.
 int getDragRecomputeStep()
           
 void setTransMatComputationFlag(boolean inTransMatFlag)
          Setter for the switch indicating whether the drag term of the transition matrix has to be computed.
 
Methods inherited from class fr.cnes.sirius.patrius.stela.forces.AbstractStelaGaussContribution
computeGaussDerivativeEquations, computeGaussEquations, getdPert, getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StelaAtmosphericDrag

public StelaAtmosphericDrag(DragSensitive inSpacecraft,
                            Atmosphere inAtmosphere,
                            int inSquaringPoints,
                            double inEarthRadius,
                            double inAtmoThreshold,
                            int inDragRecomputeStep)
Constructor.

Parameters:
inSpacecraft - the drag sensitive spacecraft.
inAtmosphere - the atmospheric model.
inSquaringPoints - number of points for Simpson' Squaring.
inEarthRadius - the Earth radius.
inAtmoThreshold - the altitude of the upper atmospheric boundary.
inDragRecomputeStep - drag will be re-computed every inDragRecomputeStep steps (if value is 0, computed every substep)
Method Detail

getDragRecomputeStep

public int getDragRecomputeStep()
Returns:
the dragRecomputeStep

computePerturbation

public double[] computePerturbation(StelaEquinoctialOrbit orbit,
                                    OrbitNatureConverter converter)
                             throws OrekitException
Description copied from class: AbstractStelaGaussContribution
Compute the dE/dt force derivatives for a given spacecraft state.

Specified by:
computePerturbation in class AbstractStelaGaussContribution
Parameters:
orbit - current orbit information: date, kinematics
converter - mean / osculating parameters converter
Returns:
the perturbation dE/dt for the current force
Throws:
OrekitException - if perturbation computation fails

computeShortPeriods

public double[] computeShortPeriods(StelaEquinoctialOrbit orbit)
                             throws OrekitException
Description copied from interface: StelaForceModel
Compute the short periodic variations for a given spacecraft state.

Parameters:
orbit - current orbit information: date, kinematics
Returns:
the short periodic variations of the current force
Throws:
OrekitException - if short periods computation fails

computePartialDerivatives

public double[][] computePartialDerivatives(StelaEquinoctialOrbit orbit)
                                     throws OrekitException
Description copied from interface: StelaForceModel
Compute the partial derivatives for a given spacecraft state.

Parameters:
orbit - current orbit information: date, kinematics
Returns:
the partial derivatives of the current force
Throws:
OrekitException - if partial derivatives computation fails

setTransMatComputationFlag

public void setTransMatComputationFlag(boolean inTransMatFlag)
Setter for the switch indicating whether the drag term of the transition matrix has to be computed.

Parameters:
inTransMatFlag - flag to set


Copyright © 2017 CNES. All Rights Reserved.