ph-math/src/main/java/com/helger/numbercruncher/mathutils/RungeKuttaDiffEqSolver.java
@Override
  public DataPoint nextPoint (final float h)
  {
    final float k1 = m_aEquation.at (m_fX, m_fY);
    final float k2 = m_aEquation.at (m_fX + h / 2, m_fY + k1 * h / 2);
    final float k3 = m_aEquation.at (m_fX + h / 2, m_fY + k2 * h / 2);
    final float k4 = m_aEquation.at (m_fX + h, m_fY + k3 * h);

    m_fY += (k1 + 2 * (k2 + k3) + k4) * h / 6;
    m_fX += h;

    return new DataPoint (m_fX, m_fY);
  }
@Override
  public DataPoint nextPoint (final float h)
  {
    final float k1 = m_aEquation.at (m_fX, m_fY);
    final float k2 = m_aEquation.at (m_fX + h / 2, m_fY + k1 * h / 2);
    final float k3 = m_aEquation.at (m_fX + h / 2, m_fY + k2 * h / 2);
    final float k4 = m_aEquation.at (m_fX + h, m_fY + k3 * h);

    m_fY += (k1 + 2 * (k2 + k3) + k4) * h / 6;
    m_fX += h;

    return new DataPoint (m_fX, m_fY);
  }
Return the next data point in the approximation of the solution.

@param h
the width of the interval