![](/img/trans.png)
[英]What's the equivalent function in KissFFT for fftw_plan_dft_r2c_1d() from FFTW?
[英]Efficient plan r2c 1d in FFTW
我读到,FFTW计划需要花费几秒钟,因此最好一次调用它,然后在for循环中调用execute()
。 这是我的情况。 但是,当然,在每个循环中,输入数据都是不同的,但是大小是相同的,那么我该如何改善呢? 是否可以使用布尔变量更好地解决?
fftw_plan my_plan;
in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex)*N);
v = (double*) fftw_malloc(sizeof(double)*N);
out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex)*N);
my_plan =fftw_plan_dft_r2c_1d(N,v,out,FFTW_ESTIMATE);
fftw_execute(my_plan);
fftw_destroy_plan(my_plan);
另外,这个dft的r2c仅向前吗?
您可以为每个FFT重新使用相同的缓冲区(通常需要将数据复制到输入/输出缓冲区中,或者从输入/输出缓冲区中复制数据,或者无论如何都可以在整数和浮点数之间进行转换),也可以使用以下“多个” FFTW计划之一高级接口 ,例如使用fftw_plan_many_dft() 。
对于逆FFT,您可能希望使用上述两种方法之一进行C2R计划,并在创建计划时使用FFTW_BACKWARD
标志。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.