fftwf_plan_dft_1d (...) с FFTW не выполняется - PullRequest
2 голосов
/ 03 июля 2019

Строка fftwf_plan_dft_1d (...) следующей функции не работает в Ubuntu.Используется для выполнения БПФ на сложных векторах длиной около 4096 чисел.

Пожалуйста, помогите.TIA

Это код C, скомпилированный и запущенный в Ubuntu 18.04.Нет проблем компиляции.

extern void cpxfft(fftwf_plan plan, cpx_t *cpx, int n)
{
#ifdef FFTMTX
        mlock(hfftmtx);
#endif
    if (plan==NULL) {
        fftwf_plan_with_nthreads(NFFTTHREAD); /* fft execute in multi threads */
        plan=fftwf_plan_dft_1d(n,cpx,cpx,FFTW_FORWARD,FFTW_ESTIMATE);
        fftwf_execute_dft(plan,cpx,cpx); /* fft */
        fftwf_destroy_plan(plan);
    } else {
        fftwf_execute_dft(plan,cpx,cpx); /* fft */
    }
#ifdef FFTMTX
        unmlock(hfftmtx);
#endif
}

На консоли отображались следующие сообщения об ошибках:

free(): invalid next size (fast)
Aborted (core dumped)
...