Class JacobiansMapper
- java.lang.Object
-
- org.orekit.propagation.integration.AbstractJacobiansMapper
-
- org.orekit.propagation.numerical.JacobiansMapper
-
- All Implemented Interfaces:
MatricesHarvester
- Direct Known Subclasses:
AbsoluteJacobiansMapper
public class JacobiansMapper extends AbstractJacobiansMapper
Mapper between two-dimensional Jacobian matrices and one-dimensionaladditional 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:
NumericalPropagator
,SpacecraftState.getAdditionalState(String)
,AbstractPropagator
-
-
Field Summary
Fields Modifier and Type Field Description static int
STATE_DIMENSION
State dimension, fixed to 6.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double[][]
getConversionJacobian(SpacecraftState state)
Get the conversion Jacobian between state parameters and parameters used for derivatives.void
getParametersJacobian(SpacecraftState state, double[][] dYdP)
Get the Jacobian with respect to parameters from a one-dimensional additional state array.void
getStateJacobian(SpacecraftState state, double[][] dYdY0)
Get the Jacobian with respect to state from a one-dimensional additional state array.void
setInitialJacobians(SpacecraftState state, double[][] dY1dY0, double[][] dY1dP, double[] p)
Set the Jacobian with respect to state into a one-dimensional additional state array.-
Methods inherited from class org.orekit.propagation.integration.AbstractJacobiansMapper
analyticalDerivatives, getAdditionalStateDimension, getJacobiansColumnsNames, getName, getParameters, getParametersJacobian, getStateTransitionMatrix, setReferenceState
-
-
-
-
Field Detail
-
STATE_DIMENSION
public static final int STATE_DIMENSION
State dimension, fixed to 6.- Since:
- 9.0
- See Also:
- Constant Field Values
-
-
Method Detail
-
getConversionJacobian
protected double[][] getConversionJacobian(SpacecraftState state)
Get the conversion Jacobian between state parameters and parameters used for derivatives.For DSST and TLE propagators, state parameters and parameters used for derivatives are the same, so the Jacobian is simply the identity.
For Numerical propagator, parameters used for derivatives are cartesian and they can be different from state parameters because the numerical propagator can accept different type of orbits.
- Parameters:
state
- spacecraft state- Returns:
- conversion Jacobian
-
setInitialJacobians
public void setInitialJacobians(SpacecraftState state, double[][] dY1dY0, double[][] dY1dP, double[] p)
Set the Jacobian with respect to state into a one-dimensional additional state array.This method converts the Jacobians to Cartesian parameters and put the converted data in the one-dimensional
p
array.- Specified by:
setInitialJacobians
in classAbstractJacobiansMapper
- Parameters:
state
- spacecraft statedY1dY0
- Jacobian of current state at time t₁ with respect to state at some previous time t₀dY1dP
- Jacobian of current state at time t₁ with respect to parameters (may be null if there are no parameters)p
- placeholder where to put the one-dimensional additional state- See Also:
AbstractJacobiansMapper.getStateJacobian(SpacecraftState, double[][])
-
getStateJacobian
public void getStateJacobian(SpacecraftState state, double[][] dYdY0)
Get the Jacobian with respect to state from a one-dimensional additional state array.This method extract the data from the
state
and put it in thedYdY0
array.- Specified by:
getStateJacobian
in classAbstractJacobiansMapper
- Parameters:
state
- spacecraft statedYdY0
- placeholder where to put the Jacobian with respect to state- See Also:
AbstractJacobiansMapper.getParametersJacobian(SpacecraftState, double[][])
-
getParametersJacobian
public void getParametersJacobian(SpacecraftState state, double[][] dYdP)
Get the Jacobian with respect to parameters from a one-dimensional additional state array.This method extract the data from the
state
and put it in thedYdP
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.- Specified by:
getParametersJacobian
in classAbstractJacobiansMapper
- Parameters:
state
- spacecraft statedYdP
- placeholder where to put the Jacobian with respect to parameters- See Also:
AbstractJacobiansMapper.getStateJacobian(SpacecraftState, double[][])
-
-