GillFieldIntegrator (Apache Commons Math 3.6.1 API)

org.apache.commons.math3.ode.nonstiff

## Class GillFieldIntegrator<T extends RealFieldElement<T>>

- java.lang.Object
- - org.apache.commons.math3.ode.AbstractFieldIntegrator<T>
  - - org.apache.commons.math3.ode.nonstiff.RungeKuttaFieldIntegrator<T>
    - - org.apache.commons.math3.ode.nonstiff.GillFieldIntegrator<T>

- Type Parameters:
    `T` - the type of the field elements
  All Implemented Interfaces:
    FirstOrderFieldIntegrator<T>, FieldButcherArrayProvider<T>

      public class GillFieldIntegrator<T extends RealFieldElement<T>>
      extends RungeKuttaFieldIntegrator<T>

  This class implements the Gill fourth order Runge-Kutta integrator for Ordinary Differential Equations .

  This method is an explicit Runge-Kutta method, its Butcher-array is the following one :

          0  |    0        0       0      0
         1/2 |   1/2       0       0      0
         1/2 | (q-1)/2  (2-q)/2    0      0
          1  |    0       -q/2  (2+q)/2   0
             |-------------------------------
             |   1/6    (2-q)/6 (2+q)/6  1/6

  where q = sqrt(2)
  Since:
    3.6
  See Also:
    `EulerFieldIntegrator`, `ClassicalRungeKuttaFieldIntegrator`, `MidpointFieldIntegrator`, `ThreeEighthesFieldIntegrator`, `LutherFieldIntegrator`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `GillFieldIntegrator(Field<T> field, T step)` Simple constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected org.apache.commons.math3.ode.nonstiff.GillFieldStepInterpolator<T>` | `createInterpolator(boolean forward, T[][] yDotK, FieldODEStateAndDerivative<T> globalPreviousState, FieldODEStateAndDerivative<T> globalCurrentState, FieldEquationsMapper<T> mapper)` Create an interpolator.
    `T[][]` | `getA()` Get the internal weights from Butcher array (without the first empty row).
    `T[]` | `getB()` Get the external weights for the high order method from Butcher array.
    `T[]` | `getC()` Get the time steps from Butcher array (without the first zero).

    - ### Methods inherited from class org.apache.commons.math3.ode.nonstiff.RungeKuttaFieldIntegrator

      `fraction, integrate, singleStep`

    - ### Methods inherited from class org.apache.commons.math3.ode.AbstractFieldIntegrator

      `acceptStep, addEventHandler, addEventHandler, addStepHandler, clearEventHandlers, clearStepHandlers, computeDerivatives, getCurrentSignedStepsize, getCurrentStepStart, getEquations, getEvaluations, getEvaluationsCounter, getEventHandlers, getField, getMaxEvaluations, getName, getStepHandlers, getStepSize, getStepStart, initIntegration, isLastStep, resetOccurred, sanityChecks, setIsLastStep, setMaxEvaluations, setStateInitialized, setStepSize, setStepStart`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### GillFieldIntegrator

          public GillFieldIntegrator(Field<T> field,
                             T step)

      Simple constructor. Build a fourth-order Gill integrator with the given step.
      Parameters:
        `field` - field to which the time and state vector elements belong
        `step` - integration step

  - ### Method Detail

    - #### getC

          public T[] getC()

      Get the time steps from Butcher array (without the first zero).
      Returns:
        time steps from Butcher array (without the first zero

    - #### getA

          public T[][] getA()

      Get the internal weights from Butcher array (without the first empty row).
      Returns:
        internal weights from Butcher array (without the first empty row)

    - #### getB

          public T[] getB()

      Get the external weights for the high order method from Butcher array.
      Returns:
        external weights for the high order method from Butcher array

    - #### createInterpolator

          protected org.apache.commons.math3.ode.nonstiff.GillFieldStepInterpolator<T> createInterpolator(boolean forward,
                                                                                              T[][] yDotK,
                                                                                              FieldODEStateAndDerivative<T> globalPreviousState,
                                                                                              FieldODEStateAndDerivative<T> globalCurrentState,
                                                                                              FieldEquationsMapper<T> mapper)

      Create an interpolator.
      Specified by:
        `createInterpolator` in class `RungeKuttaFieldIntegrator<T extends RealFieldElement<T>>`
      Parameters:
        `forward` - integration direction indicator
        `yDotK` - slopes at the intermediate points
        `globalPreviousState` - start of the global step
        `globalCurrentState` - end of the global step
        `mapper` - equations mapper for the all equations
      Returns:
        external weights for the high order method from Butcher array

Copyright © 2003–2016 The Apache Software Foundation. All rights reserved.