Hi, I use the FFTW lib to do a FFT and a IFFT of real data. So I declare int len = 32; out1 = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * len); in1 = (double*) malloc(sizeof(double) * len); I initialize the in1 field with 0,1,2,3...len-1 I do the FFT due to the documentation: p_for = fftw_plan_dft_r2c_1d(len, in1, out1, FFTW_FORWARD); fftw_execute(p_for); And now the Inverse FFT after the IFFT: p_back = fftw_plan_dft_c2r_1d(len, out1, in1, FFTW_BACKWARD); fftw_execute(p_back); The problem is, that values in in1 are all zero now. But there must be the values 0...len-1 again. Thanks in advance, Michael
FFTW: FFT and IFFT of real data - wrong data after IFFT
Started by ●November 16, 2005
Reply by ●November 16, 20052005-11-16
Micha80 wrote:> The problem is, that values in in1 are all zero now. But there must be the > values 0...len-1 again.FFTW FAQ, Q3.16.
Reply by ●November 16, 20052005-11-16
Hi, just another silly question: You reserve memory with in = fftw_malloc(sizeof(fftw_complex) * N); out = fftw_malloc(sizeof(fftw_complex) * N); So, how to access each single element there? One single Element is declared as typedef double fftw_complex[2]; I have no idea how to read this structure out of the allocated memory. Thanks in advance, Michael
Reply by ●November 17, 20052005-11-17