Class AbstractJacobiansMapper

    • Field Detail

      • STATE_DIMENSION

        public static final int STATE_DIMENSION
        State dimension, fixed to 6.
        Since:
        9.0
        See Also:
        Constant Field Values
    • Constructor Detail

      • AbstractJacobiansMapper

        protected AbstractJacobiansMapper​(String name,
                                          ParameterDriversList parameters)
        Simple constructor.
        Parameters:
        name - name of the Jacobians
        parameters - selected parameters for Jacobian computation
    • Method Detail

      • getName

        public String getName()
        Get the name of the partial Jacobians.
        Returns:
        name of the Jacobians
      • getParameters

        public int getParameters()
        Get the number of parameters.
        Returns:
        number of parameters
      • getAdditionalStateDimension

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

        @Deprecated
        public void analyticalDerivatives​(SpacecraftState s)
        Deprecated.
        as of 11.1, not used anymore
        Not used anymore.
        Parameters:
        s - spacecraft state
      • setReferenceState

        public 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.

        Specified by:
        setReferenceState in interface MatricesHarvester
        Parameters:
        reference - reference state to set
      • getStateTransitionMatrix

        public RealMatrix getStateTransitionMatrix​(SpacecraftState s)
        Extract state transition matrix from state.
        Specified by:
        getStateTransitionMatrix in interface MatricesHarvester
        Parameters:
        s - spacecraft state
        Returns:
        state transition matrix, with semantics consistent with propagation, or null if no state transition matrix is available orbit type.
      • getParametersJacobian

        public RealMatrix getParametersJacobian​(SpacecraftState s)
        Get the Jacobian with respect to propagation parameters.
        Specified by:
        getParametersJacobian in interface MatricesHarvester
        Parameters:
        s - spacecraft state
        Returns:
        Jacobian with respect to propagation parameters, or null if there are no parameters
      • getJacobiansColumnsNames

        public List<String> getJacobiansColumnsNames()
        Get the names of the parameters in the matrix returned by 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

        Specified by:
        getJacobiansColumnsNames in interface MatricesHarvester
        Returns:
        names of the parameters (i.e. columns) of the Jacobian matrix
      • setInitialJacobians

        public 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.
        Parameters:
        state - spacecraft state
        dY1dY0 - 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:
        getStateJacobian(SpacecraftState, double[][])
      • getStateJacobian

        public abstract 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 the dYdY0 array.

        Parameters:
        state - spacecraft state
        dYdY0 - placeholder where to put the Jacobian with respect to state
        See Also:
        getParametersJacobian(SpacecraftState, double[][])
      • getParametersJacobian

        public abstract 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 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
        See Also:
        getStateJacobian(SpacecraftState, double[][])