org.apache.commons.math.ode

## Class MultistepIntegrator.CountingDifferentialEquations

- java.lang.Object
- - org.apache.commons.math.ode.MultistepIntegrator.CountingDifferentialEquations

All Implemented Interfaces:
  ExtendedFirstOrderDifferentialEquations, FirstOrderDifferentialEquations

Enclosing class:
  MultistepIntegrator

    private class MultistepIntegrator.CountingDifferentialEquations
    extends Object
    implements ExtendedFirstOrderDifferentialEquations

Wrapper for differential equations, ensuring start evaluations are counted.

### Field Summary

Fields
`private int` `dimension` Dimension of the problem.

### Constructor Summary

Constructors
Constructor and Description
`MultistepIntegrator.CountingDifferentialEquations(int dimension)` Simple constructor.

### Method Summary

Methods
`void` `computeDerivatives(double t, double[] y, double[] dot)` Get the current time derivative of the state vector.
`int` `getDimension()` Get the dimension of the problem.
`int` `getMainSetDimension()` Return the dimension of the main set of equations.

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

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

### Field Detail

#### dimension

    private final int dimension

Dimension of the problem.

### Constructor Detail

#### MultistepIntegrator.CountingDifferentialEquations

    public MultistepIntegrator.CountingDifferentialEquations(int dimension)

Simple constructor.

Parameters:
  `dimension` - dimension of the problem

### Method Detail

#### computeDerivatives

    public void computeDerivatives(double t,
                          double[] y,
                          double[] dot)
                            throws DerivativeException

Get the current time derivative of the state vector.

Specified by:
  `computeDerivatives` in interface `FirstOrderDifferentialEquations`
Parameters:
  `t` - current value of the independent time variable
  `y` - array containing the current value of the state vector
  `dot` - placeholder array where to put the time derivative of the state vector
Throws:
  `DerivativeException` - this user-defined exception should be used if an error is is triggered by user code

#### getDimension

    public int getDimension()

Get the dimension of the problem.

Specified by:
  `getDimension` in interface `FirstOrderDifferentialEquations`
Returns:
  dimension of the problem

#### getMainSetDimension

    public int getMainSetDimension()

Return the dimension of the main set of equations.

The main set of equations represent the first part of an ODE state. The error estimations and adaptive step size computation should be done on this first part only, not on the final part of the state which represent an extension set of equations which are considered secondary.

Specified by:
  `getMainSetDimension` in interface `ExtendedFirstOrderDifferentialEquations`
Returns:
  dimension of the main set of equations, must be lesser than or equal to the `total dimension`