(從用Cython用戶跨張貼)鑄造fftw_complex指針(又名雙[2]),以用Cython複雜memoryview
我試圖使用FFTW一些用Cython代碼。我想一個指針轉換爲一個fftw_complex當運行到的問題(一個typedef加倍[2])到複雜的memoryview,即(小例子)
cdef extern from "fftw3.h":
ctypedef double fftw_complex[2]
fftw_complex* fftw_alloc_complex(int N)
cdef foo(complex[::1] input):
complex_ny = fftw_alloc_complex(input.size)
(<complex[:self.ny]>complex_ny)[:] = input
# actual call to FFTW follows
未能在投:「hmm.pyx: 8:34:指針基類型與cython.array基類型不匹配「(也許Cython不能指望它知道double [2]可以轉換爲複雜但是...我還能做什麼?)
PS:如果有人有經驗直接從Cython使用pyFFTW包裝,我也很感興趣。
在此先感謝。