Class PythonFieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>

    • Constructor Detail

      • PythonFieldAdditionalDerivativesProvider

        public PythonFieldAdditionalDerivativesProvider()
    • Method Detail

      • pythonExtension

        public void pythonExtension​(long pythonObject)
        Part of JCC Python interface to object
      • pythonExtension

        public long pythonExtension()
        Part of JCC Python interface to object
      • pythonDecRef

        public void pythonDecRef()
        Part of JCC Python interface to object
      • getName

        public String getName()
        Get the name of the additional derivatives (which will become state once integrated).
        Specified by:
        getName in interface FieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
        Returns:
        name of the additional state (names containing "orekit" with any case are reserved for the library internal use)
      • yield_

        public boolean yield_​(FieldSpacecraftState<T> state)
        Check if this provider should yield so another provider has an opportunity to add missing parts.

        Decision to yield is often based on an additional state being already available in the provided state (but it could theoretically also depend on an additional state derivative being already available, or any other criterion). If for example a provider needs the state transition matrix, it could implement this method as:

        
         public boolean yield(final FieldSpacecraftState<T> state) {
             return !state.getAdditionalStates().containsKey("STM");
         }
         

        The default implementation returns false, meaning that derivative data can be computed immediately.

        Parameters:
        state - state to handle
        Returns:
        true if this provider should yield so another provider has an opportunity to add missing parts as the state is incrementally built up
      • yield

        public boolean yield​(FieldSpacecraftState<T> state)
        Description copied from interface: FieldAdditionalDerivativesProvider
        Check if this provider should yield so another provider has an opportunity to add missing parts.

        Decision to yield is often based on an additional state being already available in the provided state (but it could theoretically also depend on an additional state derivative being already available, or any other criterion). If for example a provider needs the state transition matrix, it could implement this method as:

        
         public boolean yield(final FieldSpacecraftState<T> state) {
             return !state.getAdditionalStates().containsKey("STM");
         }
         

        The default implementation returns false, meaning that derivative data can be computed immediately.

        Specified by:
        yield in interface FieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
        Parameters:
        state - state to handle
        Returns:
        true if this provider should yield so another provider has an opportunity to add missing parts as the state is incrementally built up
      • combinedDerivatives

        public FieldCombinedDerivatives<T> combinedDerivatives​(FieldSpacecraftState<T> s)
        Compute the derivatives related to the additional state (and optionally main state increments).

        As of 11.2, there is a default implementation that calls the deprecated derivatives(FieldSpacecraftState) method. This has been done for backward compatibility only and will be removed in 12.0.

        Specified by:
        combinedDerivatives in interface FieldAdditionalDerivativesProvider<T extends CalculusFieldElement<T>>
        Parameters:
        s - current state information: date, kinematics, attitude, and additional states this equations depend on (according to the yield method)
        Returns:
        computed combined derivatives, which may include some incremental coupling effect to add to main state derivatives
        Since:
        11.2