fr.cnes.sirius.patrius.stela.propagation
Class StelaPartialDerivativesEquations

java.lang.Object
  extended by fr.cnes.sirius.patrius.stela.propagation.StelaPartialDerivativesEquations
All Implemented Interfaces:
StelaAdditionalEquations

public class StelaPartialDerivativesEquations
extends Object
implements StelaAdditionalEquations

This class represents a set of additional equations computing the partial derivatives of the state (orbit) with respect to initial state.

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

Constructor Summary
StelaPartialDerivativesEquations(List<AbstractStelaGaussContribution> forcesG, List<AbstractStelaLagrangeContribution> forcesL, int recomputeStepIn, StelaGTOPropagator inStelaPropagator)
          Simple constructor.
 
Method Summary
 SpacecraftState addInitialAdditionalState(SpacecraftState state)
           
 void computeDerivatives(StelaEquinoctialOrbit orbit, double[] p, double[] pDot)
          Compute the derivatives related to the additional state parameters.
 Map<StelaForceModel,double[][]> getDerivatives()
          Returns derivatives map .
 int getEquationsDimension()
           
 double[][] getMeanMotion()
          Returns mean motion from state transition matrix.
 String getName()
          Get the name of the additional state.
 void updateStepCounter()
          update step counter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StelaPartialDerivativesEquations

public StelaPartialDerivativesEquations(List<AbstractStelaGaussContribution> forcesG,
                                        List<AbstractStelaLagrangeContribution> forcesL,
                                        int recomputeStepIn,
                                        StelaGTOPropagator inStelaPropagator)
Simple constructor.

Parameters:
forcesG - the list of Gauss forces associated to the propagator
forcesL - the list of Lagrange forces associated to the propagator
recomputeStepIn - recompute every recomputeStepIn steps
inStelaPropagator - Stela propagator
Method Detail

getEquationsDimension

public int getEquationsDimension()
Specified by:
getEquationsDimension in interface StelaAdditionalEquations
Returns:
the additional equations dimension

getName

public String getName()
Description copied from interface: StelaAdditionalEquations
Get the name of the additional state.

Specified by:
getName in interface StelaAdditionalEquations
Returns:
name of the additional state

computeDerivatives

public void computeDerivatives(StelaEquinoctialOrbit orbit,
                               double[] p,
                               double[] pDot)
                        throws OrekitException
Description copied from interface: StelaAdditionalEquations
Compute the derivatives related to the additional state parameters.

Specified by:
computeDerivatives in interface StelaAdditionalEquations
Parameters:
orbit - current orbit information: date, kinematics
p - current value of the additional parameters
pDot - placeholder where the derivatives of the additional parameters should be put
Throws:
OrekitException - if some specific error occurs

getDerivatives

public Map<StelaForceModel,double[][]> getDerivatives()
Returns derivatives map .

Returns:
derivatives map

getMeanMotion

public double[][] getMeanMotion()
Returns mean motion from state transition matrix.

Returns:
mean motion from state transition matrix

updateStepCounter

public void updateStepCounter()
update step counter


addInitialAdditionalState

public SpacecraftState addInitialAdditionalState(SpacecraftState state)
                                          throws OrekitException
Specified by:
addInitialAdditionalState in interface StelaAdditionalEquations
Parameters:
state - before adding additional state
Returns:
the initial additional state
Throws:
OrekitException - should not happen


Copyright © 2017 CNES. All Rights Reserved.