pwelch

韦尔奇的功率谱密度估计

描述

pxx= pwelch (X返回功率谱密度(PSD)估计,pxx中,输入信号的,X,发现用韦尔奇的重叠部分的平均估计。什么时候X是一个向量,它被视为一个通道。什么时候?X是一个矩阵,所述PSD被独立地计算每个列和存储在相应的列pxx。如果X实值,pxx是单侧PSD估计。如果X是复数,pxx是双面PSD估计。默认,X划分为最长的可能段,以获得接近但不超过8个段,且重叠率为50%。每个片段都有一个汉明窗口。对修正的周期图求平均,得到PSD估计。如果不能分割长度X恰好与50%的重叠段的整数,X相应地截断。

pxx= pwelch (X窗口使用输入向量或整数,窗口,划分信号成段。如果窗口是一个矢量,pwelch将信号分成段的长度等于长度窗口。修改后的周期图是使用信号段乘以该向量来计算,窗口。如果窗口是一个整数,该信号被分成长度的段窗口。修改后的周期图是使用长度的汉明窗计算窗口

pxx= pwelch (X窗口noverlap使用noverlap重叠的样品由段到段。noverlap必须是小于的正整数窗口如果窗口是一个整数。noverlap必须是正整数小于的长度窗口如果窗口是一个矢量。如果没有指定noverlap,或指定noverlap当为空时,默认的重叠样本数量为窗口长度的50%。

pxx= pwelch (X窗口noverlapNFFT指定在PSD估计中使用的离散傅里叶变换(DFT)点的数目。默认的NFFT比256大或2的下一次方大于段的长度。

[pxxw ^] = pwelch(___返回归一化的频率向量,w ^。如果pxx是单面PSD估计,w ^跨越间隔[0,π]如果NFFT均匀,[0,π)如果NFFT是奇数。如果pxx是双面PSD估计,w ^跨越时间间隔[0,2个实例)。

[pxxF] = pwelch(___FS返回频率向量,F,在每单位时间的周期。采样率,FS为单位时间内采样的个数。如果时间单位是秒,那么F在周期/秒(Hz)的。对于实值信号,F跨度区间[0,FS/ 2)当NFFT均匀,[0,FS/ 2)NFFT是奇数。对于复值信号,F跨度区间[0,FS)。FS必须是第五个输入pwelch。输入采样率并且仍然使用的前述的可选参数的默认值,如空指定这些参数,[]

[pxxw ^] = pwelch(X窗口noverlapw ^返回双面韦尔奇PSD估计在矢量指定的归一化频率,w ^。矢量w ^必须包含至少两个元素,否则函数将其解释为NFFT

[pxxF] = pwelch(X窗口noverlapFFS返回双面韦尔奇PSD估计在矢量中指定频率,F。矢量F必须包含至少两个元素,否则函数将其解释为NFFT. 频率F是在每单位时间的周期。采样率,FS为单位时间内采样的个数。如果时间单位是秒,那么F在周期/秒(Hz)的。

[___] = pwelch(X窗口___freqrange返回指定的频率范围内的Welch PSD估计值freqrange。有效的选择freqrange是:“单向的”“双侧”,或“中心”

[___] = pwelch(X窗口___追踪返回最大保持谱估计,如果追踪被指定为“maxhold”,并返回最小保持谱估计值追踪被指定为'minhold'

[___pxxc] = pwelch(___'ConfidenceLevel',概率返回概率中PSD估计的100%置信区间pxxc

[___] = pwelch(___spectrumtype返回PSD估计值spectrumtype被指定为'PSD'并返回功率谱,如果spectrumtype被指定为“权力”

pwelch(___不带输出参数绘制在目前的数字窗口韦尔奇PSD估计。

例子

全部收缩

获得输入信号的PSD韦尔奇估计由离散时间正弦曲线的带的角频率 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。

创建一个正弦的角频率为 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。重置可重复结果的随机数发生器。该信号具有一个长度 ñ X = 3 2 0 样本。

RNG默认的N = 0:319;X = COS(π/ 4 * N)+ randn(大小(N));

获得使用默认的汉明窗和DFT长度韦尔奇PSD估计。默认段长度为71个样本和DFT长度是256点得到的频率分辨率 2 π / 2 6 rad /样品。因为信号是实值的,周期图是单边的有256/2+1个点。绘制韦尔奇PSD估计。

pxx = pwelch (x);pwelch(x)的

重复计算。

  • 将信号按长度分割 ñ 小号 C = ñ X / 4 。此操作等效于将信号划分成尽可能长的段,以获得作为接近但不超过8个段具有50%重叠。

  • 使用汉明窗口为各部分设置窗口。

  • 指定50%的重叠邻接的部分之间

  • 要计算FFT,请使用 最大 2 6 2 p 点, p = 日志 2 ñ 小号 C

验证了这两种方法给出了相同的结果。

为nx =长度(X);NSC =地板(NX / 4.5);十一月=地板(NSC / 2);NFF = MAX(256,2 ^ nextpow2(NSC));T = pwelch(X,汉明(NSC),11月,NFF);MAXERR = MAX(ABS(ABS(T(:)) -  ABS(PXX(:))))
最大误差=0

将信号划分为8个等长段,各段重叠50%。指定与前一步相同的FFT长度。计算Welch PSD估计,并验证它给出的结果与前两个步骤相同。

ns = 8;ov = 0.5;lsc =地板(Nx / (ns - (ns-1) * ov));t = pwelch (x, lsc地板(ov * lsc), nff);MAXERR = MAX(ABS(ABS(T(:)) -  ABS(PXX(:))))
最大误差=0

获得输入信号的PSD韦尔奇估计由离散时间正弦曲线的带的角频率 π / 3 与添加剂弧度/样品 ñ 0 1 白噪声。

创建一个正弦的角频率为 π / 3 与添加剂弧度/样品 ñ 0 1 白噪声。重置可重复结果的随机数发生器。该信号具有512个样本。

RNG默认的N = 0:511;X = COS(PI / 3 * N)+ randn(大小(N));

获得韦尔奇PSD估计将信号划分成段132样品中的长度。的信号段通过Hamming窗口132个采样长度相乘。重叠的样本数目未指定,所以它被设置为2分之132= 66. DFT长度为256个点,得到的频率分辨率 2 π / 2 6 rad /样品。因为该信号被实值时,PSD估计是片面的,有256个/ 2 + 1 = 129点。绘制PSD作为归一化频率的函数。

segmentLength = 132;[pxx w] = pwelch (x, segmentLength);情节(w /π,10 * log10 (pxx))包含(“ω\ / \π”

获得输入信号的PSD韦尔奇估计由离散时间正弦曲线的带的角频率 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。

创建一个正弦的角频率为 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。重置可重复结果的随机数发生器。该信号的长度为320个样本。

RNG默认的N = 0:319;X = COS(π/ 4 * N)+ randn(大小(N));

将信号分割成长度为100个样本的段,得到Welch PSD估计。信号段乘以汉明窗长度为100个样本。重叠样本数为25。DFT长度为256点,其频率分辨率为 2 π / 2 6 rad/样品。由于信号是实值信号,PSD估计是单侧的,共有256/2+1个点。

segmentLength = 100;noverlap = 25;pxx = pwelch (x, segmentLength noverlap);图(10 * log10 (pxx))

获得输入信号的PSD韦尔奇估计由离散时间正弦曲线的带的角频率 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。

创建一个正弦的角频率为 π / 4 与添加剂弧度/样品 ñ 0 1 白噪声。重置可重复结果的随机数发生器。该信号的长度为320个样本。

RNG默认的N = 0:319;X = COS(π/ 4 * N)+ randn(大小(N));

将信号分割成长度为100个样本的段,得到Welch PSD估计。使用50%的默认重叠。指定DFT长度为640点,使得频率 π / 4 rad/样本对应于DFT箱(bin 81)。由于信号是实值的,PSD估计是单边的,有640/2+1点。

segmentLength = 100;NFFT = 640;PXX = pwelch(X,segmentLength,[],N FFT个);图(10 * LOG10(PXX))xlabel(“弧度/样品”)ylabel ('分贝/(弧度/样品)'

创建一个包含100hz正弦信号的相加信号ñ(0,1)的白噪声。重置可重复结果的随机数发生器。采样速率为1kHz,该信号的持续时间5秒。

RNG默认的fs = 1000;t = 0时:1 / FS:5-1 / FS;X = COS(2 * PI * 100 * T)+ randn(大小(T));

获得前述信号的韦尔奇的重叠段平均PSD估计。使用的500个样本与300个重叠的样本的片段长度。使用500个DFT点,使100赫兹直接落在一个DFT仓。输入采样率,以输出在赫兹的频率的矢量。绘制的结果。

[PXX中,f] = pwelch(X,500300500,FS);情节(F,10 * LOG10(PXX))xlabel('频率(Hz)')ylabel (‘功率谱密度(分贝/赫兹)’

创建一个由三个噪声正弦和一个啁啾组成的信号,在200 kHz下采样0.1秒。正弦波的频率为1 kHz、10 kHz和20 kHz。正弦波有不同的振幅和噪声水平。无噪啁啾的频率从20khz开始,在采样期间线性增加到30khz。

Fs = 200年e3;Fc = [1 10 20]'*1e3;Ns = 0.1 * Fs;t = (0: Ns-1) / Fs;x = [1 1/10 10] * sin(2 *π* Fc * t) + (1/200 1/2000 1/20) * randn (Ns);x = x +唧唧喳喳(t, 20 e3, t(结束),30 e3);

计算Welch PSD估计和信号的最大保持和最小保持谱。策划的结果。

[pxx f] = pwelch (x, [] [], [], Fs);PMAX = pwelch(X,[],[],[],FS,“maxhold”);PMIN = pwelch(X,[],[],[],FS,'minhold');情节(f, pow2db (pxx))图(f,pow2db([pmax pmin]),':')保持包含('频率(Hz)')ylabel (‘功率谱密度(分贝/赫兹)’)传说(“pwelch”“maxhold”'minhold'

重复该过程,这一次的计算为中心的功率谱估计。

[pxx f] = pwelch (x, [] [], [], Fs,“中心”“权力”);PMAX = pwelch(X,[],[],[],FS,“maxhold”“中心”“权力”);PMIN = pwelch(X,[],[],[],FS,'minhold'“中心”“权力”);情节(f, pow2db (pxx))图(f,pow2db([pmax pmin]),':')保持包含('频率(Hz)')ylabel (“权力(dB)”)传说(“pwelch”“maxhold”'minhold'

这个例子说明了使用Welch的重叠段平均(WOSA) PSD估计的置信界限。虽然不是统计显著性的必要条件,但韦尔奇估计的频率,即低置信界超过上置信界的周围PSD估计清楚地表明显著的振荡在时间序列。

创建一个由100hz和150hz正弦波叠加在加性白色中的信号ñ(0,1)噪音。两个正弦波的振幅是1。采样速率为1khz。重置可重复结果的随机数发生器。

RNG默认的fs = 1000;t = 0:1 / fs: 1 - 1 / f;x = cos(2 *π* 100 * t) +罪(2 *π* 150 * t) + randn(大小(t));

获取WOSA估计有95%的-confidence界限。中设置的段长度等于200和50%(100个样本)重叠的段。画出WOSA PSD估计与置信区间一起并放大的靠近100和150赫兹感兴趣的频率范围。

L = 200;noverlap = 100;[PXX,F,pxxc​​] = pwelch(X,汉明(L),noverlap,200,FS,“ConfidenceLevel”,0.95);情节(f, 10 * log10 (pxx))情节(f, 10 * log10 (pxxc),' - '。)保持XLIM([25 250])xlabel('频率(Hz)')ylabel (‘功率谱密度(分贝/赫兹)’)标题(“韦尔奇估计有95%的-Confidence界”

在100和150赫兹附近的较低置信界明显高于100和150赫兹附近以外的较高置信界。

创建一个包含100hz正弦信号的相加信号 ñ 0 1 / 4 白噪声。重置可重复结果的随机数发生器。采样速率为1kHz,该信号的持续时间5秒。

RNG默认的fs = 1000;t = 0时:1 / FS:5-1 / FS;noisevar = 1/4;X = COS(2 * PI * 100 * T)+ SQRT(noisevar)* randn(大小(T));

获得使用Welch方法的DC为中心的功率谱。使用的500个样本与300个重叠的采样的段长度和500点DFT一个长度。绘制的结果。

[pxx f] = pwelch (fs x, 500300500年,“中心”“权力”);情节(F,10 * LOG10(PXX))xlabel('频率(Hz)')ylabel ('大小(dB)'网格)

你看到在-100和100赫兹的功率接近的1/4对于具有1偏离四分之一的振幅的实值的正弦波的预期功率是由于加性噪声的影响。

生成1024个样本的多通道信号组成的三个正弦信号在加法 ñ 0 1 高斯白噪声。正弦曲线的频率是 π / 2 π / 3 π / 4 rad /样品。估计信号的PSD使用Welch的方法,并绘制它。

N = 1024;N = 0:N-1;W = pi./[2;3;4];X = COS(W * N)” + randn(长度(n)的,3);pwelch(x)的

输入参数

全部收缩

输入信号,指定为行或列向量或矩阵。如果X是一个矩阵,那么它的列被视为独立的通道。

例子:COS(π/ 4 *(0:159))+ randn(1160)是一个单信道的行矢量信号。

例子:因为(pi. / (4; 2) * (0:159)) ' + randn (160 2)是双通道信号。

数据类型:|
复数支持:金宝app是的

窗口,指定为行或列向量或整数。如果窗口是一个矢量,pwelch分歧X成重叠的长度的段等于所述长度窗口,然后乘以与在指定的向量每个信号段窗口。如果窗口是一个整数,pwelch将其划分为长度等于整数值的段,并使用长度相等的汉明窗口。如果X不能准确地划分成段的一个整数数目noverlap重叠样本数,X相应地截断。如果您指定窗口作为空的,则使用默认的汉明窗,以获得的八个段Xnoverlap重叠的样品。

数据类型:|

重叠样本数,指定为小于的长度的正整数窗口。如果您省略noverlap或指定noverlap作为空的,一个值被用于获得50%的重叠部分之间。

DFT点的个数,指定为正整数。对于实值输入信号,X,PSD估计值,pxx有长度(NFFT/ 2 + 1),如果NFFT为偶数,和(NFFT+ 1)/ 2NFFT是奇数。对于复值输入信号,X中,PSD估计总是具有长度NFFT。如果NFFT是否指定为空,默认值NFFT用来。

如果NFFT大于段长度,则数据填充为零。如果NFFT小于段长度,则使用datawrap使长度等于NFFT

数据类型:|

采样速率,指定为正标量。抽样率是单位时间内抽样的数量。如果时间的单位是秒,那么采样率的单位是Hz。

归一化频率,指定为至少有两个元素的行或列向量。归一化频率在rad/样本中。

例子:w = [pi/4 pi/2]

数据类型:

频率,指定为至少具有两个元素的行或列向量。频率是单位时间内的周期。单位时间由采样率确定,FS。如果FS单位是样本/秒,那么F具有单位为Hz。

例子:fs = 1000;f = [100 200]

数据类型:

频率范围为PSD估计,指定为一个一“单向的”“双侧”,或“中心”。默认值是“单向的”为实值信号“双侧”对于复值信号。每个选项对应的频率范围是

  • “单向的”-返回一个实值输入信号的单边PSD估计,X。如果NFFT甚至,pxx有长度NFFT/2 + 1,在区间内计算[0,π]rad /样品。如果NFFT很奇怪,长度pxx是(NFFT+ 1)/2,积分是[0,πrad /样品。什么时候FS任选地指定时,相应的间隔[0,FS周期/单位时间和[0,FS/2) 奇偶长周期/单位时间NFFT分别。

  • “双侧”- 返回双面PSD估计任一实值或复值输入,X. 在这种情况下,pxx有长度NFFT和计算在间隔[0,2πrad /样品。什么时候FS是可选指定,区间为[0,FS)周期/单位时间。

  • “中心”-返回实值或复值输入的中心两侧PSD估计值,X. 在这种情况下,pxx有长度NFFT和计算在间隔( -ππ]均匀长度的rad/sampleNFFT( -ππ对于奇数长度弧度/样品NFFT。什么时候FS是可选指定,相应的间隔是(-FS/ 2,FS/ 2]次/单位时间和( -FS/ 2,FS/2) 奇偶长周期/单位时间NFFT分别。

功率谱缩放,指定为一个'PSD'“权力”. 省略spectrumtype,或指定'PSD',返回功率谱密度。指定“权力”通过缩放窗口的等效噪声带宽的PSD的每个估计。使用“权力”选择获得估计的功率在每个频率。

跟踪模式,指定为'意思'“maxhold”,或'minhold'。默认值是'意思'

  • '意思'- 返回每个输入通道的韦尔奇谱估计。pwelch计算韦尔奇谱估计在每个频率bin平均功率谱估计的所有段。

  • “maxhold”-返回每个输入通道的最大保持频谱。pwelch通过保持所有段的功率谱估计值中的最大值,计算每个频率库的最大保持谱。

  • 'minhold'-返回每个输入通道的最小保持谱。pwelch通过保持所有区段的功率谱估计值中的最小值来计算每个频率库的最小保持谱。

覆盖概率为真PSD,指定为在范围(0,1)一个标量。输出,pxxc包含的所述下限和上限概率×100%区间估计为真PSD。

输出参数

全部收缩

PSD估计,返回为实值,非负列向量或矩阵。的每一列pxx是对应列的PSD估计值X。PSD估计的单位是单位频率下时间序列数据的大小平方单位。例如,如果输入数据的单位是伏特,那么PSD估计的单位是单位频率伏特的平方。时间序列的伏,如果假设1Ω的阻力和指定的采样率赫兹,PSD估计在瓦特/赫兹。

数据类型:|

归一化频率,返回为实值的列向量。如果pxx是单面PSD估计,w ^跨越间隔[0,π]如果NFFT是均匀的[0,π如果NFFT是奇数。如果pxx是双面PSD估计,w ^跨越间隔[0,2π。用于DC为中心的PSD估计,w ^跨越间隔( -ππ]甚至NFFT( -ππ为奇数NFFT

数据类型:

周期性频率返回为实值列向量。对于单面PSD估计,F跨度区间[0,FS/ 2)当NFFT均匀,[0,FS/ 2)NFFT是奇数。对于双面PSD估计,F跨度区间[0,FS). 对于以直流电为中心的功率谱估计,F跨度的间隔( -FS/ 2,FS/2]周期/单位时间为偶数长度NFFT和( -FS/ 2,FS/2)奇数长度的周期/单位时间NFFT

数据类型:|

置信区间,返回与实值元素的矩阵。该矩阵的行大小等于PSD估计的长度,pxxpxxc有两倍多的列pxx。奇数列包含置信区间的下界,偶数列包含置信区间的上界。因此,pxxc(米,2*n-1)信心下限是多少pxxc(M,2 * n)的置信上界是否与估计值相对应PXX(M,N)。置信区间的覆盖概率由的值确定概率输入。

数据类型:|

更多关于

全部收缩

韦尔奇重叠段平均谱估计

周期图不是广义平稳过程真实功率谱密度的一致估计。韦尔奇的技术,以减少方差的周期图打破时间序列分成部分,通常重叠。

韦尔奇的方法为每一段计算一个修正的周期图,然后对这些估计值进行平均,得到功率谱密度的估计值。由于该过程是广义平稳的,韦尔奇方法利用时间序列不同分段的PSD估计,修正后的周期图表示真实PSD的近似不相关估计,平均化降低了变异性。

这些片段通常乘上一个窗口函数,例如汉明窗口,因此韦尔奇的方法相当于修正周期图的平均。由于分段通常是重叠的,因此在分段的开始和结束部分通过窗口逐渐变细的数据值发生在邻近分段的结束部分之外。这可以防止窗口造成的信息丢失。

扩展功能

C / c++代码生成
生成使用MATLAB®编码器™C和C ++代码。

也可以看看

应用程序

功能

R2006a前推出