def _vode_banded_jac_wrapper(jacfunc, ml, jac_params):
 def jac_wrapper(t, y):
  jac = asarray(jacfunc(t, y, *jac_params))
  padded_jac = vstack((jac, zeros((ml, jac.shape[1]))))
  return padded_jac
 return jac_wrapper

def _vode_banded_jac_wrapper ( jacfunc , ml , jac_params ) : def jac_wrapper ( t , y ) : jac = asarray ( jacfunc ( t , y , * jac_params ) ) padded_jac = vstack ( ( jac , zeros ( ( ml , jac . shape [ 1 ] ) ) ) ) return padded_jac return jac_wrapper
wrap a banded jacobian function with a function that pads the jacobian with ml rows of zeros .