Interface MatricesHarvester

  • All Known Implementing Classes:
    AbstractAnalyticalMatricesHarvester, AbstractMatricesHarvester, DSSTHarvester

    public interface MatricesHarvester
    Interface for extracting State Transition Matrices and Jacobians matrices from spacecraft 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 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 by 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

        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