pwelch函数采用已经校正因子由于窗口吗?

14日视图(30天)
pwelch函数采用了吗 校正因子 由于窗户吗?
当我们使用像汉明窗的校正因子振幅或能源是必要的。在我的例子中所需的能量校正因子也解释道 在这里 。它是可能pwelch已经修正,或者我应该使用校正由于我窗口类型。重叠影响能量吗?
我看过,我不是唯一一个问这个问题 在这里 ,但没有人回答。
谢谢

接受的答案

大卫Goodmanson
大卫Goodmanson 2021年7月30日
编辑:大卫Goodmanson 2021年8月2日
你好sy,
在这一点上我相信文档是误导,因为它似乎意味着权力/ unit_frequency但结果权力/弧度,小1/2pi倍(但片面的频谱)翻了一番。至少,这似乎是最有可能的可能性。pwelch似乎没有accessable代码,这里是一个例子,我构建了一个名为pwelch1看扩展的函数。
M = 10000;
兰德(1米)y = 2 * 1;
S = rms (y) ^ 2%平均功率
图(1);网格
情节(y)%不是很有趣
f [Z] = pwelch1 (y);
图(2);网格
semilogy (f、Z)
S2 = trapz (f、Z)%表示赞同
这里的规范化f从1/2到1/2。结合dS / df对所有频率应该给平均功率年代,它。两者都是1/3左右,理论价值。函数包含汉明函数校正因子U大约0.4,根据点的数量。
pwelch1总平均8 windows有50%的重叠和没有试图利用fft算法的长度2 ^ n以来我认为努力通常是浪费时间。
在Matlab代码中,w从0到π,它肯定看起来像normaliazed圆频率。代码只输出正频率和繁殖的频谱= 2来弥补。电力/弧度而不是权力/ unit_frequecy pwelch小于pwlech1倍/(2 *π)= 1 /π正如你所看到的情节。
z [w] = pwelch (y);
图(3);网格
semilogy (w、z)
S3 = trapz (w、z)%表示赞同
这将是有趣的听这toplic Mathworks可能会说什么。
函数f [Z] = pwelch1 (y)
% pwelch除了相似
%[1]输出行
% [2]normailzed频率数组从1/2到1/2
% Z数组并不是翻了一倍。Z也不是除以2π的因素。
%
%函数f [Z] = pwelch1 (y)
N =长度(y);
nwin =圆(N / 4.5);
h =汉明(nwin) ';%一个行向量
U = (1 / nwin) * trapz (h。^ 2);
indstart = 0 (1,8);
k = 1:4%设置窗口的起始点
indstart (2 * k - 1) = 1 + (k - 1) * nwin;
indstart (* 10 k) = N + 1 k * nwin;
结束
Z = 0 (1、nwin);
k = 1:8
印第安纳州= indstart (k) + (0: (nwin-1));
Z = Z + abs (fft (y(印第安纳州)。* h)) ^ 2;
结束
Z = fftshift (Z) / (nwin * 8 * U);
f =(装天花板(-nwin / 2):装天花板(nwin / 2) 1) / nwin;%为奇数或偶数
结束
3评论

登录置评。

更多的答案(0)

标签

s manbetx 845

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!