離散フーリエ変換・逆変換のc言語

信号解析でもっとも有名なフーリエ変換。できることは以下の二つ。

実験で得るデータはたいていデジタルで、とびとびの離散値であるので、フーリエ変換のなかでも離散フーリエ変換(Discrete Fourier Transform)を使う。Microsoft Excelでは高速フーリエ変換、通称FFT(Fast Fourier Transform)の処理ができるが、サンプル数が4096個までしか処理できないためあまり意味がない。高速フーリエ変換と離散フーリエ変換はやっていることはほぼ同じだが、計算速度が高速フーリエ変換の方が速い。FFTを理解しプログラムを組むのは時間がかかりそうだったので、離散フーリエ変換をc言語で書いてみた。みその計算物理学(http://www.geocities.jp/supermisosan/)を参考にしました。

Excelを使わずプログラムを作る利点

離散フーリエ変換→フィルタ→逆離散フーリエ変換するプログラムです。
DFT.c

記事を書いた日 2013年 5月

トップページへ inserted by FC2 system