org.apache.commons.math3.ode

## Class FieldEquationsMapper<T extends RealFieldElement<T>>

- java.lang.Object
- - org.apache.commons.math3.ode.FieldEquationsMapper<T>

- Type Parameters:
    `T` - the type of the field elements
  All Implemented Interfaces:
    Serializable

      public class FieldEquationsMapper<T extends RealFieldElement<T>>
      extends Object
      implements Serializable

  Class mapping the part of a complete state or derivative that pertains to a set of differential equations.

  Instances of this class are guaranteed to be immutable.

  Since:
    3.6
  See Also:
    `FieldExpandableODE`, Serialized Form

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `T[]` | `extractEquationData(int index, T[] complete)` Extract equation data from a complete state or derivative array.
    `int` | `getNumberOfEquations()` Get the number of equations mapped.
    `int` | `getTotalDimension()` Return the dimension of the complete set of equations.
    `void` | `insertEquationData(int index, T[] equationData, T[] complete)` Insert equation data into a complete state or derivative array.
    `T[]` | `mapDerivative(FieldODEStateAndDerivative<T> state)` Map a state derivative to a complete flat array.
    `T[]` | `mapState(FieldODEState<T> state)` Map a state to a complete flat array.
    `FieldODEStateAndDerivative<T>` | `mapStateAndDerivative(T t, T[] y, T[] yDot)` Map flat arrays to a state and derivative.

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

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

- - ### Method Detail

    - #### getNumberOfEquations

          public int getNumberOfEquations()

      Get the number of equations mapped.
      Returns:
        number of equations mapped

    - #### getTotalDimension

          public int getTotalDimension()

      Return the dimension of the complete set of equations.

      The complete set of equations correspond to the primary set plus all secondary sets.

      Returns:
        dimension of the complete set of equations

    - #### mapState

          public T[] mapState(FieldODEState<T> state)

      Map a state to a complete flat array.
      Parameters:
        `state` - state to map
      Returns:
        flat array containing the mapped state, including primary and secondary components

    - #### mapDerivative

          public T[] mapDerivative(FieldODEStateAndDerivative<T> state)

      Map a state derivative to a complete flat array.
      Parameters:
        `state` - state to map
      Returns:
        flat array containing the mapped state derivative, including primary and secondary components

    - #### mapStateAndDerivative

          public FieldODEStateAndDerivative<T> mapStateAndDerivative(T t,
                                                            T[] y,
                                                            T[] yDot)
                                                                                          throws DimensionMismatchException

      Map flat arrays to a state and derivative.
      Parameters:
        `t` - time
        `y` - state array to map, including primary and secondary components
        `yDot` - state derivative array to map, including primary and secondary components
      Returns:
        mapped state
      Throws:
        `DimensionMismatchException` - if an array does not match total dimension

    - #### extractEquationData

          public T[] extractEquationData(int index,
                                T[] complete)
                                                              throws MathIllegalArgumentException,
                                                                     DimensionMismatchException

      Extract equation data from a complete state or derivative array.
      Parameters:
        `index` - index of the equation, must be between 0 included and `getNumberOfEquations()` (excluded)
        `complete` - complete state or derivative array from which equation data should be retrieved
      Returns:
        equation data
      Throws:
        `MathIllegalArgumentException` - if index is out of range
        `DimensionMismatchException` - if complete state has not enough elements

    - #### insertEquationData

          public void insertEquationData(int index,
                                T[] equationData,
                                T[] complete)
                                  throws DimensionMismatchException

      Insert equation data into a complete state or derivative array.
      Parameters:
        `index` - index of the equation, must be between 0 included and `getNumberOfEquations()` (excluded)
        `equationData` - equation data to be inserted into the complete array
        `complete` - placeholder where to put equation data (only the part corresponding to the equation will be overwritten)
      Throws:
        `DimensionMismatchException` - if either array has not enough elements

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