采取真正的fftw_complex *

时间:2013-01-25 09:45:44

标签: visual-c++ fftw

我正在使用VC ++ 2010运行fftw。

我的程序采用复杂高斯的2D傅里叶变换。

问题如下:

我的输入高斯是复杂的类型< double> *,我将它转换为fftw_complex *使用   in = reinterpret_cast< fftw_complex * GT(高斯)。

接下来,当我尝试采取实际部分时:
  g_real=real(in[nx+N*ny]);
  我得到错误:没有函数模板“std :: real”的实例与参数列表匹配。

我通过定义:

以一种繁琐的方式解决了这个问题

temp_in = (complex< double>*)in;

然后取得temp_in的真实部分。

然后我发现我无法删除程序末尾的temp_in *。   我试过了:

1)using delete [] temp_in

2)free(temp_in)

3)reinterpret_cast< fftw_complex*>(temp_in);fftw_free(temp_in);

以上都不起作用。

任何人都可以建议如何在没有definig temp_g和/或如何删除temp_g的情况下采取真实的部分吗?

非常感谢。

0 个答案:

没有答案