擅长:python、mysql、java
<p>{a1}表示<em>一级函数对象可以是Numba cfunc编译函数、JIT编译函数和实现包装器地址协议</em>的对象</p>
<p>您可以传递JITted函数,如以下简化示例所示:</p>
<pre><code>@nb.njit
def cos(a):
return np.cos(a)
@nb.njit(parallel=True)
def tempFtemp(ftemp_pte, func_F, numPointsEval, pointsToEval):
for i in nb.prange(numPointsEval):
ftemp_pte[:, i] = func_F(pointsToEval[:, i])
return ftemp_pte
ftemp_pte = tempFtemp(ftemp_pte, np.cos, numPointsEval, pointsToEval) # Error
ftemp_pte = tempFtemp(ftemp_pte, cos, numPointsEval, pointsToEval) # Works
</code></pre>
<p>这解决了“非精确类型pyobject”的问题,但是我已经从示例中删除了<code>hstack</code>和<code>vstack</code>操作,因为它们产生了<a href="https://stackoverflow.com/q/51754268/2148416">their own problems and inefficiencies</a></p>