我试着用基本的例子来比较numba和纯python,我得到了奇怪的结果。这是numba示例:from numpy import arange# jit decorator tellsNumba to compile this function.
# The argument types will be inferred by Numba when functio
我尝试使用以下代码(在iPython中,用于计时):import numba as nb
def nb_len(seq): return len(seq)
t = np.random.rand(1000)
%timeit py_len(t)137 ns ± 0.964 ns per loop (mean ± std. dev. of
我最初的模型是基于scipy/solve_ivp的,它工作得很好,只是有点慢,即使提供了雅可比矩阵。再也想不出其他方法来优化可调用的派生函数了,所以我开始寻找其他的选择,比如NumbaLSODA。同样,这个模型工作得很好,并且比scipy/solve_ivp版本快得多,所以非常有前途!
这里有一个问题。导数函数中的ydot数组可能非常长且复杂。它可能比直接提供ydot数组慢一点,但极大地改善了用户体验。type of <class 'builtin_function_or_method&