Interface MatricesHarvester
-
- All Known Implementing Classes:
AbstractAnalyticalMatricesHarvester
,AbstractMatricesHarvester
,DSSTHarvester
public interface MatricesHarvester
Interface for extracting State Transition Matrices and Jacobians matrices fromspacecraft state
.The State Transition Matrix and Jacobians matrices with respect to propagation parameters are stored in the state as
additional states
. Each propagator and support classes have their own way to handle them. The interface leverages these differences which are implementation details and provides a higher level access to these matrices, regardless of how they were computed and stored.- Since:
- 11.1
- Author:
- Luc Maisonobe
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description List<String>
getJacobiansColumnsNames()
Get the names of the parameters in the matrix returned bygetParametersJacobian(org.orekit.propagation.SpacecraftState)
.OrbitType
getOrbitType()
Get the orbit type used for the matrix computation.RealMatrix
getParametersJacobian(SpacecraftState state)
Get the Jacobian with respect to propagation parameters.PositionAngleType
getPositionAngleType()
Get the position angle used for the matrix computation.RealMatrix
getStateTransitionMatrix(SpacecraftState state)
Extract state transition matrix from state.void
setReferenceState(SpacecraftState reference)
Set up reference state.
-
-
-
Method Detail
-
setReferenceState
void setReferenceState(SpacecraftState reference)
Set up reference state.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.
- Parameters:
reference
- reference state to set
-
getStateTransitionMatrix
RealMatrix getStateTransitionMatrix(SpacecraftState state)
Extract state transition matrix from state.- Parameters:
state
- spacecraft state- Returns:
- state transition matrix, with semantics consistent with propagation,
or null if no state transition matrix is available
orbit type
.
-
getParametersJacobian
RealMatrix getParametersJacobian(SpacecraftState state)
Get the Jacobian with respect to propagation parameters.- Parameters:
state
- spacecraft state- Returns:
- Jacobian with respect to propagation parameters, or null if there are no parameters
-
getJacobiansColumnsNames
List<String> getJacobiansColumnsNames()
Get the names of the parameters in the matrix returned bygetParametersJacobian(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
- Returns:
- names of the parameters (i.e. columns) of the Jacobian matrix
-
getOrbitType
OrbitType getOrbitType()
Get the orbit type used for the matrix computation.- Returns:
- the orbit type used for the matrix computation
-
getPositionAngleType
PositionAngleType getPositionAngleType()
Get the position angle used for the matrix computation.Irrelevant if
getOrbitType()
returnsOrbitType.CARTESIAN
.- Returns:
- the position angle used for the matrix computation
-
-