numbaの使い方を学びたいです。残念ながら、ドキュメントから numba を学ぶのは少し難しいと感じています。だから皆さんに聞いてみる必要があります。f
関数を引数としてコンストラクターに渡したい。しかし、私は試してみますが、あらゆる種類のエラーが発生します。私は何をすべきか?
これが私のコードです:
def f(x):
# return some mathematical expression
f_numba = jit(double(double))(f)
@autojit
class name:
def __init__(self, f)
self.f = f
@double(double)
def __call__(self, x)
return self.f(x)
funct = name(f_numba)
a = funct(5)
これが私が得ているエラーの一部です(インデントと改行が保持されていないことをお詫びします。いくつかの異なることを試しましたが、すべての場合、フォーマットが失われます)。コメントで頼まれたので載せます。しかし、私が得ているエラーの種類は、正確な実装によって異なります:
トレースバック (最新の呼び出しが最後): ファイル "/home/marius/dev/python/inf1100/test_ODE.py"、7 行目、DE インポートから * ファイル "/home/marius/dev/python/inf1100/DE.py "、3 行目、@autojit ファイル "/home/marius/anaconda/lib/python2.7/site-packages/numba/decorators.py"、183 行目、autojit nopython=nopython、locals=locals、**kwargs )(func) ファイル "/home/marius/anaconda/lib/python2.7/site-packages/numba/decorators.py"、165 行目、_autojit_decorator numba_func = wrapper(f, compilerimpl, cache) ファイル "/home/ marius/anaconda/lib/python2.7/site-packages/numba/exttypes/autojitclass.py"、360 行目、autojit_class_wrapper py_class = autojitmeta.create_unspecialized_cls(py_class, class_specializer) ファイル "/home/marius/anaconda/lib/python2 .7/site-packages/numba/exttypes/autojitmeta.py"、22 行目、create_unspecialized_cls クラス AutojitMeta(type(py_class)): TypeError: メタクラスの基本型 'classobj' を呼び出すときにエラーが発生しましたが、受け入れ可能な基本型ではありません