Class NordsieckStepInterpolator

    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Serializable version identifier
        See Also:
        Constant Field Values
      • stateVariation

        protected double[] stateVariation
        State variation.
      • scalingH

        private double scalingH
        Step size used in the first scaled derivative and Nordsieck vector.
      • referenceTime

        private double referenceTime
        Reference time for all arrays.

        Sometimes, the reference time is the same as previousTime, sometimes it is the same as currentTime, so we use a separate field to avoid any confusion.

      • scaled

        private double[] scaled
        First scaled derivative.
    • Method Detail

      • reinitialize

        public void reinitialize​(double[] y,
                                 boolean forward,
                                 EquationsMapper primaryMapper,
                                 EquationsMapper[] secondaryMappers)
        Reinitialize the instance.

        Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.

        Overrides:
        reinitialize in class AbstractStepInterpolator
        Parameters:
        y - reference to the integrator array holding the state at the end of the step
        forward - integration direction indicator
        primaryMapper - equations mapper for the primary equations set
        secondaryMappers - equations mappers for the secondary equations sets
      • reinitialize

        public void reinitialize​(double time,
                                 double stepSize,
                                 double[] scaledDerivative,
                                 Array2DRowRealMatrix nordsieckVector)
        Reinitialize the instance.

        Beware that all arrays must be references to integrator arrays, in order to ensure proper update without copy.

        Parameters:
        time - time at which all arrays are defined
        stepSize - step size used in the scaled and Nordsieck arrays
        scaledDerivative - reference to the integrator array holding the first scaled derivative
        nordsieckVector - reference to the integrator matrix holding the Nordsieck vector
      • rescale

        public void rescale​(double stepSize)
        Rescale the instance.

        Since the scaled and Nordsieck arrays are shared with the caller, this method has the side effect of rescaling this arrays in the caller too.

        Parameters:
        stepSize - new step size to use in the scaled and Nordsieck arrays
      • computeInterpolatedStateAndDerivatives

        protected void computeInterpolatedStateAndDerivatives​(double theta,
                                                              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 AbstractStepInterpolator
        Parameters:
        theta - normalized interpolation abscissa within the step (theta is zero at the previous time step and one at the current time step)
        oneMinusThetaH - time gap between the interpolated time and the current time
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Specified by:
        writeExternal in class AbstractStepInterpolator
        Throws:
        java.io.IOException
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Specified by:
        readExternal in class AbstractStepInterpolator
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException