簡體   English   中英

Python:Scipy cimport 與 Cython

[英]Python:Scipy cimport with Cython

我看了很長時間,最后決定把這個問題放在這里,因為它似乎缺乏關於那個特定案例的信息。 這是我的問題:我的代碼有點慢,所以我轉向Cython來加速。 它使用了scipy.special jv函數,我發現有一個與 Cython 兼容的版本。 參考: https : //docs.scipy.org/doc/scipy/reference/special.cython_special.html

但是在嘗試使用該功能時我無法使其工作。 這是一個最小的代碼。

from scipy.special.cython_special cimport jv as jvCython

cdef complex128_t[:] A = jvCython(1,2)

我收到錯誤:融合類型的使用無效,類型不能被專門化

看起來 ctype 定義在某個時候有問題,但即使我使用鏈接中顯示的簽名,我也會遇到同樣的錯誤。

有人可以解釋一下什么是融合類型以及為什么它不起作用?

非常感謝

我認為在傳遞兩個int時很難猜測您是想要double版本還是double complex版本。 如果你這樣做,它可能會起作用

a = jv(1., 2.)

(即添加小數點,以便識別輸入是double )。 如果您想要復雜版本,則將第二個數字2. + 0.j

輸出是標量,而不是內存視圖,所以我不知道你為什么這樣輸入A ,但這是一個單獨的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM