org.orekit.propagation.numerical
Class JacobiansMapper

java.lang.Object
  extended by org.orekit.propagation.numerical.JacobiansMapper
All Implemented Interfaces:
Serializable

public class JacobiansMapper
extends Object
implements Serializable

Mapper between two-dimensional Jacobian matrices and one-dimensional additional state arrays.

This class does not hold the states by itself. Instances of this class are guaranteed to be immutable.

Author:
Luc Maisonobe
See Also:
PartialDerivativesEquations, NumericalPropagator, AbstractPropagator, Serialized Form

Method Summary
 int getAdditionalStateDimension()
          Compute the length of the one-dimensional additional state array needed.
 String getName()
          Get the name of the partial Jacobians.
 int getParameters()
          Get the number of parameters.
 double[] getParametersJacobian(Parameter parameter, SpacecraftState state)
          Get the Jacobian with respect to provided parameter parameter.
 void getParametersJacobian(Parameter parameter, SpacecraftState state, double[] dYdP)
          Get the Jacobian with respect to provided parameter parameter.
 double[][] getParametersJacobian(SpacecraftState state)
          Get the Jacobian with respect to parameters.
 void getParametersJacobian(SpacecraftState state, double[][] dYdP)
          Get the Jacobian with respect to parameters.
 List<Parameter> getParametersList()
          Get parameters list.
 int getStateDimension()
          Get the state vector dimension.
 double[][] getStateJacobian(SpacecraftState state)
          Get the Jacobian with respect to state.
 void getStateJacobian(SpacecraftState state, double[][] dYdY0)
          Get the Jacobian with respect to state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getName

public String getName()
Get the name of the partial Jacobians.

Returns:
name of the Jacobians

getAdditionalStateDimension

public int getAdditionalStateDimension()
Compute the length of the one-dimensional additional state array needed.

Returns:
length of the one-dimensional additional state array

getStateDimension

public int getStateDimension()
Get the state vector dimension.

Returns:
state vector dimension

getParameters

public int getParameters()
Get the number of parameters.

Returns:
number of parameters

getParametersList

public List<Parameter> getParametersList()
Get parameters list.

Returns:
parameters list

getStateJacobian

public void getStateJacobian(SpacecraftState state,
                             double[][] dYdY0)
                      throws OrekitException
Get the Jacobian with respect to state.

This method extract the data from the state and put it in the dYdY0 array.

Parameters:
state - spacecraft state
dYdY0 - placeholder where to put the Jacobian with respect to state
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getParametersJacobian(SpacecraftState, double[][]), getParametersJacobian(Parameter, SpacecraftState, double[])

getStateJacobian

public double[][] getStateJacobian(SpacecraftState state)
                            throws OrekitException
Get the Jacobian with respect to state.

This method extract the data from the state.

Parameters:
state - spacecraft state
Returns:
Jacobian with respect to state
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getParametersJacobian(SpacecraftState), getParametersJacobian(Parameter, SpacecraftState)

getParametersJacobian

public void getParametersJacobian(SpacecraftState state,
                                  double[][] dYdP)
                           throws OrekitException
Get the Jacobian with respect to parameters.

This method extract the data from the state and put it in the dYdP array.

If no parameters have been set in the constructor, the method returns immediately and does not reference dYdP which can safely be null in this case.

Parameters:
state - spacecraft state
dYdP - placeholder where to put the Jacobian with respect to parameters
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getStateJacobian(SpacecraftState, double[][]), getParametersJacobian(Parameter, SpacecraftState, double[])

getParametersJacobian

public final double[][] getParametersJacobian(SpacecraftState state)
                                       throws OrekitException
Get the Jacobian with respect to parameters.

This method extract the data from the state.

Parameters:
state - spacecraft state
Returns:
Jacobian with respect to parameters
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getStateJacobian(SpacecraftState), getParametersJacobian(Parameter, SpacecraftState)

getParametersJacobian

public void getParametersJacobian(Parameter parameter,
                                  SpacecraftState state,
                                  double[] dYdP)
                           throws OrekitException
Get the Jacobian with respect to provided parameter parameter.

This method extract the data from the state.

Parameters:
parameter - parameter
state - spacecraft state
dYdP - placeholder where to put the Jacobian with respect to provided parameter
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getParametersJacobian(SpacecraftState, double[][])

getParametersJacobian

public double[] getParametersJacobian(Parameter parameter,
                                      SpacecraftState state)
                               throws OrekitException
Get the Jacobian with respect to provided parameter parameter.

This method extract the data from the state and put it in the dYdP array.

If the parameter is not present in the partial derivatives, the method returns immediately and does not reference dYdP which can safely be null in this case.

Parameters:
parameter - parameter
state - spacecraft state
Returns:
Jacobian with respect to provided parameter, null if parameter is not included in Jacobian matrix
Throws:
OrekitException - thrown if partial derivatives are not included in state
See Also:
getParametersJacobian(SpacecraftState)


Copyright © 2017 CNES. All Rights Reserved.