Class AdamsStateInterpolator

    • Constructor Detail

      • AdamsStateInterpolator

        public AdamsStateInterpolator​(double stepSize,
                                      ODEStateAndDerivative reference,
                                      double[] scaled,
                                      Array2DRowRealMatrix nordsieck,
                                      boolean isForward,
                                      ODEStateAndDerivative globalPreviousState,
                                      ODEStateAndDerivative globalCurrentState,
                                      EquationsMapper equationsMapper)
        Simple constructor.
        Parameters:
        stepSize - step size used in the scaled and Nordsieck arrays
        reference - reference state from which Taylor expansion are estimated
        scaled - first scaled derivative
        nordsieck - Nordsieck vector
        isForward - integration direction indicator
        globalPreviousState - start of the global step
        globalCurrentState - end of the global step
        equationsMapper - mapper for ODE equations primary and secondary components
    • Method Detail

      • getScaled

        public double[] getScaled()
        Get the first scaled derivative.
        Returns:
        first scaled derivative
      • getNordsieck

        public Array2DRowRealMatrix getNordsieck()
        Get the Nordsieck vector.
        Returns:
        Nordsieck vector
      • computeInterpolatedStateAndDerivatives

        protected ODEStateAndDerivative computeInterpolatedStateAndDerivatives​(EquationsMapper equationsMapper,
                                                                               double time,
                                                                               double theta,
                                                                               double thetaH,
                                                                               double oneMinusThetaH)
        Compute the state and derivatives at the interpolated time. This is the main processing method that should be implemented by the derived classes to perform the interpolation.
        Specified by:
        computeInterpolatedStateAndDerivatives in class AbstractODEStateInterpolator
        Parameters:
        equationsMapper - mapper for ODE equations primary and secondary components
        time - interpolation time
        theta - normalized interpolation abscissa within the step (theta is zero at the previous time step and one at the current time step)
        thetaH - time gap between the previous time and the interpolated time
        oneMinusThetaH - time gap between the interpolated time and the current time
        Returns:
        interpolated state and derivatives
      • taylor

        public static ODEStateAndDerivative taylor​(EquationsMapper equationsMapper,
                                                   ODEStateAndDerivative reference,
                                                   double time,
                                                   double stepSize,
                                                   double[] scaled,
                                                   Array2DRowRealMatrix nordsieck)
        Estimate state by applying Taylor formula.
        Parameters:
        equationsMapper - mapper for ODE equations primary and secondary components
        reference - reference state
        time - time at which state must be estimated
        stepSize - step size used in the scaled and Nordsieck arrays
        scaled - first scaled derivative
        nordsieck - Nordsieck vector
        Returns:
        estimated state