3

fftw_plan_dft以前は多次元フーリエ変換に使用していました。

fftw_plan fftw_plan_dft(int rank, const int *n, fftw_complex *in,
                        fftw_complex *out, int sign, unsigned flags);

64 ビット整数を fftw に渡したいのですが、fftw guru インターフェイスを使用する必要があるようです。

 fftw_plan fftw_plan_guru64_dft(
     int rank, const fftw_iodim64 *dims,
     int howmany_rank, const fftw_iodim64 *howmany_dims,
     fftw_complex *in, fftw_complex *out,
     int sign, unsigned flags);

howmany_rankしかし、私は何がhowmany_dims意味するのか理解していません。のマニュアルにfftw_plan_guru_dftは次のように書かれています。

これら 2 つの関数は、それぞれインターリーブ形式と分割形式の複合データの多次元 DFT を計画します。変換次元は、次元 (howmany_rank, howmany_dims) の多次元ベクトル (ループ) 上の (rank, dims) によって与えられます。dims と howmany_dims は、それぞれ長さが rank と howmany_rank の fftw_iodim 配列を指す必要があります。

「次元の多次元ベクトル(ループ)(howmany_rank、h​​owmany_dims)」の意味を知っています。例を挙げたり、この教祖インターフェースの使い方を説明したりできますか?

4

1 に答える 1