kml_fft_mpi_plan_transpose
假设有一个n0×n1的数组,以行为主顺序,在n0维上分布块。将其转换为在n1维上块分布的n1×n0数组 。
接口定义
C interface:
kml_fft_plan kml_fft_mpi_plan_transpose (ptrdiff_t n0, ptrdiff_t n1, double *in, double *out, MPI_Comm comm, unsigned flags);
kml_fft_plan kml_fftf_mpi_plan_transpose(ptrdiff_t n0, ptrdiff_t n1, float *in, float *out, MPI_Comm comm, unsigned flags);
返回值
函数返回一个kml_fft(f)_plan类型的结构体指针。将该对象作为参数传入kml_fft(f/h)_execute函数中使用,将对当前提供的输入in和输出out执行FFT变换。
如果函数返回非空指针,则表示plan执行成功,否则表示执行失败。
参数
| 参数名 | 数据类型 | 描述 | 输入/输出 | 
|---|---|---|---|
| n0 | ptrdiff_t | 输入FFT序列第一维的大小,约束:n0 ≥ 1。 | 输入 | 
| n1 | ptrdiff_t | 输入FFT序列第二维的大小,约束:n1 ≥ 1。 | 输入 | 
| in | 
 | 输入待变换的数据。 | 输入 | 
| out | 
 | 输出快速傅里叶变换后的数据。 | 输出 | 
| comm | MPI_Comm | MPI通信器的句柄。 | 输入 | 
| flags | unsigned int | 对于转置plan,这些标志所指示的分别是输出和/或输入被局部转置。 | 输入 | 
依赖
C: "kfft-mpi.h"
父主题: MPI transposition