可以进行自定义3D(并行)FFTW转换吗?

时间:2017-08-28 23:01:48

标签: c++ c mpi fftw

我有一个真实数据的3D数组,我希望用一个轴上的DST或DCT和沿另外两个轴的普通DFT进行变换。结果应该是一个3D复杂数组,它保存了这个变换的系数。

你知道FFTW3软件包是否提供了这样的例行程序 - 可能是并行的 - 开箱即用? FFTW3为所有三个方向的简单3D DFT提供了这样的程序。

如果没有,你会想知道如何在C / C ++中实现它的最佳方式吗?

我天真的想法:装配DST / DCT,然后在一些包装程序中沿第一轴进行2D实对复变换。然后,人们可以想到一维分解来实现并行性。 2D会更好但更多的工作。

PS: 这种变换用于求解Navier-Stokes方程的谱方法。

1 个答案:

答案 0 :(得分:0)

你天真的想法是要走的路。个别维度可以独立转换。