Mathematica の関数 Fourier[] は、 c=Fourier[f] とすると、 数値のリスト f に対して
を並べたリスト c を返す (これが Mathematica の離散 Fourier 変換の定義)。 逆変換は InverseFourier[c] で行なう。
可能な場合は高速 Fourier 変換を使って計算されるので、 効率が良くなる (効率をあげたいときは の値に注意すべきである)。
この講義の離散 Fourier 変換の定義に一致する結果を得るには、 次のようなオプションを指定する。
Fourier[f,FourierParameters->{-1,-1}] |
逆離散Fourier変換するための関数 InverseFourier[] がある。 この関数でも同じオプション FourierParameters->{-1,-1}] が有効である。
t2=InverseFourier[Fourier[t]] とすると、 t と t2 は等しくなるはずだが、 実際には丸め誤差が発生する。 そのため、t が実数値であっても、t2 は実数値とは限らない。 ListPlay[] は虚数データを再生出来ないので2
t2=Re[InverseFourier[Fourier[t]]] |
桂田 祐史