public abstract class AbstractJacobiansMapper extends Object implements MatricesHarvester
Modifier and Type | Field and Description |
---|---|
static int |
STATE_DIMENSION
State dimension, fixed to 6.
|
Modifier | Constructor and Description |
---|---|
protected |
AbstractJacobiansMapper(String name,
ParameterDriversList parameters)
Simple constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
analyticalDerivatives(SpacecraftState s)
Deprecated.
as of 11.1, not used anymore
|
int |
getAdditionalStateDimension()
Compute the length of the one-dimensional additional state array needed.
|
List<String> |
getJacobiansColumnsNames()
Get the names of the parameters in the matrix returned by
MatricesHarvester.getParametersJacobian(org.orekit.propagation.SpacecraftState) . |
String |
getName()
Get the name of the partial Jacobians.
|
int |
getParameters()
Get the number of parameters.
|
RealMatrix |
getParametersJacobian(SpacecraftState s)
Get the Jacobian with respect to propagation parameters.
|
abstract void |
getParametersJacobian(SpacecraftState state,
double[][] dYdP)
Get the Jacobian with respect to parameters from a one-dimensional additional state array.
|
abstract void |
getStateJacobian(SpacecraftState state,
double[][] dYdY0)
Get the Jacobian with respect to state from a one-dimensional additional state array.
|
RealMatrix |
getStateTransitionMatrix(SpacecraftState s)
Extract state transition matrix from state.
|
abstract void |
setInitialJacobians(SpacecraftState state,
double[][] dY1dY0,
double[][] dY1dP,
double[] p)
Set the Jacobian with respect to state into a one-dimensional additional state array.
|
void |
setReferenceState(SpacecraftState reference)
Set up reference state.
|
public static final int STATE_DIMENSION
protected AbstractJacobiansMapper(String name, ParameterDriversList parameters)
name
- name of the Jacobiansparameters
- selected parameters for Jacobian computationpublic String getName()
public int getParameters()
public int getAdditionalStateDimension()
@Deprecated public void analyticalDerivatives(SpacecraftState s)
s
- spacecraft statepublic void setReferenceState(SpacecraftState reference)
This method is called whenever the global propagation reference state changes. This corresponds to the start of propagation in batch least squares orbit determination or at prediction step for each measurement in Kalman filtering. Its goal is to allow the harvester to compute some internal data. Analytical models like TLE use it to compute analytical derivatives, semi-analytical models like DSST use it to compute short periodic terms, numerical models do not use it at all.
setReferenceState
in interface MatricesHarvester
reference
- reference state to setpublic RealMatrix getStateTransitionMatrix(SpacecraftState s)
getStateTransitionMatrix
in interface MatricesHarvester
s
- spacecraft stateorbit type
.public RealMatrix getParametersJacobian(SpacecraftState s)
getParametersJacobian
in interface MatricesHarvester
s
- spacecraft statepublic List<String> getJacobiansColumnsNames()
MatricesHarvester.getParametersJacobian(org.orekit.propagation.SpacecraftState)
.
Beware that the names of the parameters are fully known only once all force models have been set up and their parameters properly selected. Applications that retrieve the matrices harvester first and select the force model parameters to retrieve afterwards (but obviously before starting propagation) must take care to wait until the parameters have been set up before they call this method. Calling the method too early would return wrong results.
The names are returned in the Jacobians matrix columns order
getJacobiansColumnsNames
in interface MatricesHarvester
public abstract void setInitialJacobians(SpacecraftState state, double[][] dY1dY0, double[][] dY1dP, double[] p)
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 stategetStateJacobian(SpacecraftState, double[][])
public abstract void getStateJacobian(SpacecraftState state, double[][] dYdY0)
This method extract the data from the state
and put it in the
dYdY0
array.
state
- spacecraft statedYdY0
- placeholder where to put the Jacobian with respect to stategetParametersJacobian(SpacecraftState, double[][])
public abstract void getParametersJacobian(SpacecraftState state, double[][] dYdP)
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.
state
- spacecraft statedYdP
- placeholder where to put the Jacobian with respect to parametersgetStateJacobian(SpacecraftState, double[][])
Copyright © 2002-2022 CS GROUP. All rights reserved.