ODE.java

/**
A generic interface to an ODE problem.
*/
public interface ODE
{
    /**
    Return state vector for the system of equations.
    Time should be the first element of the array.
    */
    public double[] getState();

    /**
    Compute and return (in <code>rate</code>) the time derivatives 
    of the system of equations whose state vector is represented by 
    <code>state</code>.  In general, <code>rate[i]</code> should be 
    the time derivative of <code>state[i]</code>; <code>rate[0]</code>
    should be 1.0 (the time derivative of time!).
    */
    public void getRate(double[] state,double[] rate);
}