Уравнение реализации плотности спектра мощности (PSD) в Matlab

Ребята, я учусь вычислять PSD сигнала с помощью Matlab. Я знаю, что функция Periodogram() работает хорошо, но я хочу напрямую использовать метод fft. Когда я хочу узнать подробности, я нахожу этот веб-сайт очень полезным:

https://www.mathworks.com/help/signal/ug/power-spectral-density-estimates-using-fft.html

Однако у меня есть проблема в первом примере. меня немного смущает это утверждение

psdx = (1/(Fs*N)) * abs(xdft).^2;

Я не знаю, зачем использовать Fs и N в качестве параметра.


person Sihao Sun    schedule 06.09.2017    source источник


Ответы (1)


(1/(Fs*N)) – это коэффициент нормализации, гарантирующий соответствие численного алгоритма теореме Парсеваля.

person Josh Karpel    schedule 06.09.2017
comment
Теперь я понимаю, зачем нам нужен 1/N. Но откуда 1/Fs? - person Sihao Sun; 06.09.2017
comment
@SihaoSun 1/Fs преобразует мощность in в мощность на ячейку, так что результирующее psdx представляет собой мощность на частотный интервал, а не мощность близко к этой частоте. - person Josh Karpel; 06.09.2017
comment
Я полностью понимаю вашу точку зрения. Еще один небольшой вопрос о бине, бин это линия или область по оси координат X-Y? - person Sihao Sun; 06.09.2017
comment
@SihaoSun Корзина в этом контексте представляет собой частотный интервал. Строго говоря, он ничему не соответствует в координатной плоскости X-Y, но я полагаю, вы могли бы представить его как линию на оси x, если хотите. - person Josh Karpel; 06.09.2017