smooth_fft



機能:
フーリエ変換による平滑化(振幅比p%以下のスペクトル成分を削除)

書式:
smooth_fft(p%,[i],[o])

解説:
入力数値組[i]に対し、まず高速フーリエ正変換を行い、周波数領域で最大スペクトル振幅比がp%以下のスペクトル成分を削除します。その後、高速フーリエ逆変換を施し、結果を数値組[o]に出力します。
平滑の度合は、引数p%の調整で簡単に制御できます。引数p%を大きくするにつれ、削除されるスペクトル成分が多くなり、平滑効果が上がります。平滑出力結果を参考にしながら、引数p%の値を調整していくと良いです。引数p%の値は、0%〜30%の範囲内が適当のようです。
本関数は、filter()関数を平滑化に応用して使いやすくしたもので、smooth()に比べると、より効果的な平滑結果を得ています。
なお、関数smooth_fft1()の場合は、全スペクトルの中で先頭部の保留部分の比率の指定により平滑の度合を制御しています。

     p% ・・・・・・・・・・・・・・・ パーセント入力で削除し始める最大スペクトル振幅比を指定

     [i] ・・・・・・・・・・・・・・・ 入力数値組

     [o] ・・・・・・・・・・・・・・・ 出力数値組

例:smooth_fft(1.5,[1],[7]);


return