LINUX.ORG.RU

Работа с вещественными числами в FFTW

 ,


0

2

Доброго времени суток.
Понадобилось применить ДПФ в программе на С++, для этого пытаюсь использовать FFTW3. Задача следующая: имеется массив вещественных чисел, необходимо произвести прямое преобразование фурье и сохранить как массив вещественных чисел.
Я понимаю что нужно копать в сторону fftw_plan_r2r но как им пользоваться я не понял, поэтому постарался сделать это через комплексные числа, по всей видимости не вышло.

 fftw_complex *in, *out;
    fftw_plan p;
    in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * 512);
    out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * 512);
    p = fftw_plan_dft_1d(512, in, out, FFTW_FORWARD, FFTW_ESTIMATE);



    i=0;
    while(i<512){
        in[i][0]=one[i];
        i++;
    }
    fftw_execute(p);


    i=0;
    while(i<512){
        two[i]=out[i][0];
        i++;
    }

Хотелось бы узнать как допилить мой велосипед, или как сделать по человечески через r2r.
Заранее спасибо за помощь :)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.