Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
However, this page did not exist in the previous stable version.
fftw
fftwライブラリに基づく高速フーリエ変換
呼び出し手順
[y]=fftw(x) [y]=fftw(x,sign) [y]=fftw(x,sign,dim,incr) [y]=fftw(x,sign,[dim1 dim2 ...dimN],[incr1 incr2 ...incrN])
パラメータ
- y,x
実数/複素数データの行列/ベクトル. 変換される入出力データ.
- sign
整数. 1 または -1. 直接または間接変換を指定します.
- dim
整数. 変換の次元(長さ)を指定します.
- incr
整数. 変換の幅を設定します.
説明
この関数は, FFTWライブラリにより順方向/逆方向の離散フーリエ変換 (DFT) を行います.
この関数によりベクトル, 2次元, 多次元変換を計算できます.
fftw 構文の詳細については, fft scilab 関数を参照ください.
FFTWライブラリの詳細については,FFTW Web サイトを参照ください : http://www.fftw.org
注意: fftw 関数は,再利用するために 最新のパラメータを自動的にメモリに保存します.
これにより,連続的なコールを行った場合の 所要時間が大幅に改善されます.
例
//simple vector direct transform a = rand(50,1)+%i*rand(50,1); y = fftw(a); y = fftw(a,-1); //inverse transform b = fftw(y,1); //2D transform a = rand(512,512)+%i*rand(512,512); y = fftw(a); //M-D transform -old calling sequence- a = rand(120,1); y = a; dim=[5 6 4];incr=[1 5 30]; for i=1:3 y = fftw(y,-1,dim(i),incr(i)); end //M-D transform -new calling sequence- //More efficient than old y = fftw(a,-1,[5 6 4],[1 5 30]); b = fftw(y,1,[5 6 4],[1 5 30]);
参照
- fftw_flags — fftw関数の高速フーリエ変換の計算手法を設定する
- get_fftw_wisdom — fftw wisdomを返す
- set_fftw_wisdom — fftw wisdomを設定
- fftw_forget_wisdom — fftw wisdomをリセット
参考文献
Matteo Frigo and Steven G. Johnson, "FFTW Manual fo version 3.1.2" June 2006. Available : http://www.fftw.org
<< FFTW | FFTW | fftw_flags >> |