我正在用C ++编写程序,使用MKL 2018.1 FFT功能进行二维FFT(秩= 2)。 MKL引用似乎没有明确说明DftiComputeForward
和DftiComputeBackward
的输出大小(真?)。
使用以下类型的描述符,Real-to-complex转发和Complex-to-Real计算所需的输出缓冲区大小是多少?
MKL_LONG status, l[2];
l[0] = 32; l[1] = 100;
status = DftiCreateDescriptor(&my_desc1_handle, DFTI_SINGLE,
DFTI_REAL, 2, l);
status = DftiCommitDescriptor(my_desc1_handle);
status = DftiSetValue(my_desc1_handle, DFTI_PLACEMENT, DFTI_NOT_INPLACE);