title: Using numba.jit with scipy.integrate.ode
body: <p>Using <a href="http://numba.pydata.org/" rel="noreferrer"><code>numba.jit</code></a> to speed up right-hand-side calculations for <code>odeint</code> from <a href="http://docs.scipy.org/doc/scipy/reference/integrate.html" rel="noreferrer"><code>scipy.integrate</code></a> works fine:</p>
  
  <pre class="lang-python prettyprint-override"><code>from scipy.integrate import ode, odeint
  from numba import jit
  
  @jit
  def rhs(t, X):
      return 1
  
  X = odeint(rhs, 0, np.linspace(0, 1, 11))
  </code></pre>
  
  <p>However using <code>integrate.ode</code> like this:</p>
  
  <pre class="lang-python prettyprint-override"><code>solver = ode(rhs)
  solver.set_initial_value(0, 0)
  while solver.successful() and solver.t &lt; 1:
      solver.integrate(solver.t + 0.1)
  </code></pre>
  
  <p>produces the following error with the decorator <code>@jit</code>:</p>
  
  <pre><code>capi_return is NULL
  Call-back cb_f_in_dvode__user__routines failed.
  Traceback (most recent call last):
    File "sandbox/numba_cubic.py", line 15, in &lt;module&gt;
      solver.integrate(solver.t + 0.1)
    File "/home/pgermann/Software/anaconda3/lib/python3.4/site-packages/scipy/integrate/_ode.py", line 393, in integrate
      self.f_params, self.jac_params)
    File "/home/pgermann/Software/anaconda3/lib/python3.4/site-packages/scipy/integrate/_ode.py", line 848, in run
      y1, t, istate = self.runner(*args)
  TypeError: not enough arguments: expected 2, got 1
  </code></pre>
  
  <p>Any ideas how to overcome this?</p>