smooth_fft1
例:smooth_fft1(3,[1],[7]);
- 機能:
- フーリエ変換による平滑化(先頭p%スペクトル成分を保留)
- 書式:
- smooth_fft1(p%,[i],[o])
- 解説:
- 入力数値組[i]に対し、高速フーリエ正変換を行い、全スペクトル成分の中で先頭部のp%をそのまま残してほかの成分を削除します。その後、高速フーリエ逆変換を施し、結果を数値組[o]に出力します。
平滑の度合は、引数p%の調整で簡単に制御できます。引数p%を大きくするにつれ、削除されるスペクトル成分が少なくなり、平滑効果が下がります。平滑出力結果を参考にしながら、引数p%の値を調整していくと良いです。引数p%の値は、0%〜30%の範囲内で間に合います。
本関数は、filter()関数を平滑化に応用して使いやすくしたもので、smooth()に比べると、より効果的な平滑結果を得ています。
なお、関数smooth_fft()の場合は、最大スペクトル振幅比率が指定値より小さいものの削除により平滑の度合を制御しています。
p% ・・・・・・・・・・・・・・・ パーセント入力で先頭保留部分のスペクトルの比率を指定
[i] ・・・・・・・・・・・・・・・ 入力数値組
[o] ・・・・・・・・・・・・・・・ 出力数値組
return |