Class GillFieldIntegrator<T extends CalculusFieldElement<T>>

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

public class GillFieldIntegrator<T extends CalculusFieldElement<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)

See Also:
  • Field Details

  • Constructor Details

    • 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 Details

    • 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.hipparchus.ode.nonstiff.GillFieldStateInterpolator<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 CalculusFieldElement<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