C言語によるFFTの記述
このアーカイブを解凍して適当なディレクトリにコピーした後、FftFloat.slnをダブルクリックします(Visual Studio 2008 Standard Editionを使用しますが、お持ちでない場合はDebugディレクトリのEXEファイルを実行してください)。


するとMicrosoft Visual Studioがスタートします。


左ウインドウの「ソリューション」タブを選択し、FftFloatView.cppをダブルクリックして開きます。


FftCal関数を探しましょう。iW[i]には入力波形が、tW[i]には三角関数が入ります。「ビット逆順ソート」に関しては専門書を参考にしてください。


入力波形と三角関数との積和が行われ、それらは3重ループ(”I"が最外周、”J”がその中、”K”が最内周)に挟まれています(「バタフライ演算」のメカニズムに関しても専門書に譲る)。ここで大事なのは乗算や加算がすべて浮動小数点(double)で行われていることです。


Back


Top Page