Spectrum Scopeで表示され​る振幅値が、FFT点​数の変更で変化してし​まいます。

1 vue (au cours des 30 derniers jours)
MathWorks Support Team
MathWorks Support Team le 25 Oct 2013
Spectrum Scopeで表示される振幅値が、FFT点数の変更で変化してしまいます。

Réponse acceptée

MathWorks Support Team
MathWorks Support Team le 26 Oct 2013
Spectrum Scopeブロックの内部では、修正ピリオドグラムという手法を用いてパワースペクトル密度を計算しています。Spectrum Scopeを右クリックし「マスクブロックのモデル表示」を選択することで、Spectrum Scopeの内部を見ることが出来ます。
Spectrum Scopeの内部
修正ピリオドグラムはFFTの二乗を行い、窓関数を適用します。最後に窓関数の形に合わせた正規化を行います。Periodogramブロックの内部も同様に「マスクブロックのモデル表示」で表示できます。
Periodogramの内部
修正ピリオドグラムの振幅値は、FFT点数による正規化を行っておりません。したがってFFT点数の変更に伴って振幅値が変化してしまいますので、FFT点数に因らない結果を求めたい場合は Spectrum Scopeの前段にて、FFT点数の平方根で正規化を行ってください。
FFT点数に因らないパワースペクトル密度の計算例(複素信号)
複素信号と同じ振幅の実数信号を入力する場合は、複素信号と比較して電力が半分になり、折り返し成分も考慮しなければなりません。これらを考慮しますと正規化の値は sqrt(2*2/FFT点数) となりますので、下図のように正規化の値を変更してください。
FFT点数に因らないパワースペクトル密度の計算例(実数信号)

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!