Matlab功率谱密度(PSD)实现方程
Posted
技术标签:
【中文标题】Matlab功率谱密度(PSD)实现方程【英文标题】:Matlab power spectrum density(PSD) implement equation 【发布时间】:2017-09-06 01:13:09 【问题描述】:伙计们,我正在学习如何使用 matlab 计算信号的 PSD。我知道函数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
作为参数。
【问题讨论】:
【参考方案1】:(1/(Fs*N))
是一个归一化因子,以确保数值算法符合Parseval's Theorem。
【讨论】:
现在我明白为什么我们需要1/N
。但是1/Fs
来自哪里?
@SihaoSun 1/Fs
从“power in bin”转换为“power per bin”,因此得到的psdx
是每个频率间隔的功率,而不是该频率附近的功率。
我完全理解你的意思。还有一个关于bin的小问题,bin是X-Y坐标轴上的一条线还是一个区域?
@SihaoSun 在此上下文中的“bin”是频率区间。严格来说,它不对应 X-Y 坐标平面中的任何东西,但我想如果你愿意的话,我想你可以把它想象成 X 轴上的一条线。以上是关于Matlab功率谱密度(PSD)实现方程的主要内容,如果未能解决你的问题,请参考以下文章