功率谱密度估计使用FFT

此示例示出了如何获得非参数的功率谱密度(PSD),使用估计相当于周期图FFT。这些例子告诉你如何正确档位的输出FFT对于偶数长度的输入,用于归一化频率和赫兹,以及用于单组分和双双面PSD估计。

即使长度的输入与采样率

获取周期图同时使用在1 kHz采样的偶数长度的信号FFT周期图。比较的结果。

创建由100Hz的正弦波中的一个信号ñ(0,1)加性噪声。采样频率为1千赫兹。信号长度为1000个采样。使用可重复结果的随机数生成器的默认设置。

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

使用获取周期图FFT。该信号是实值并且即使长度。由于信号是实值,你只需要功率估计正或负的频率。为了节省的总功率,乘以出现在这两组所有频率 - 通过2.零频率(DC)和奈奎斯特频率不出现两次的因子 - 正和负频率。绘制的结果。

N =长度(X);xdft = FFT(x)的;xdft = xdft(1:N / 2 + 1);psdx =(1 /(FS * N))* ABS(xdft)^ 2。psdx(2:端-1)= 2 * psdx(2:端-1);FREQ = 0:FS /长度(X):FS / 2;图(频率,10 * LOG10(psdx))网格标题(“周期图使用FFT”)xlabel('频率(Hz)')ylabel(“功率/频率(分贝/赫兹)”

计算和使用绘制周期图周期图。表明,这两种结果是相同的。

周期图(X,rectwin(长度(X)),长度(X),FS)

mxerr = MAX(psdx'-周期图(X,rectwin(长度(X)),长度(X),FS))
mxerr = 3.4694e-18

输入与归一化频率

FFT以产生周期图用于使用归一化频率的输入。创建由正弦波中的一个信号ñ(0,1)加性噪声。正弦波具有的角频率 π / 4 弧度/样品。使用可重复结果的随机数生成器的默认设置。

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

使用获取周期图FFT。该信号是实值并且即使长度。由于信号是实值,你只需要功率估计正或负的频率。为了节省的总功率,乘以出现在这两组所有频率 - 通过2.零频率(DC)和奈奎斯特频率不出现两次的因子 - 正和负频率。绘制的结果。

N =长度(X);xdft = FFT(x)的;xdft = xdft(1:N / 2 + 1);psdx =(1 /(2 * PI * N))* ABS(xdft)^ 2。psdx(2:端-1)= 2 * psdx(2:端-1);FREQ = 0:(2 * PI)/ N:圆周率;图(频率/ PI,10 * LOG10(psdx))格标题(“周期图使用FFT”)xlabel('归一化频率(\倍\ PI弧度/样品)')ylabel(“功率/频率(分贝/弧度/样品)”

计算和使用绘制周期图周期图。表明,这两种结果是相同的。

周期图(X,rectwin(长度(X)),长度(X))

mxerr = MAX(psdx'-周期图(X,rectwin(长度(X)),长度(X)))
mxerr = 1.4211e-14

复数输入与归一化频率

FFT以产生周期图用于与归一化频率复数值输入。该信号是一个复指数与的角频率 π / 4 以rad /样品的复值ñ(0,1)的噪声。随机数发生器设置为重复的结果的默认设置。

RNG默认N = 0:999;X = EXP(1J * PI / 4 * N)+ [1 1J] * randn(2,长度(N))/ SQRT(2);

FFT获得周期图。因为输入是复值,获得从周期图 [ 0 2 π 弧度/样品。绘制的结果。

N =长度(X);xdft = FFT(x)的;psdx =(1 /(2 * PI * N))* ABS(xdft)^ 2。FREQ = 0:(2 * PI)/ N:2 * PI-(2 * PI)/ N;图(频率/ PI,10 * LOG10(psdx))格标题(“周期图使用FFT”)xlabel('归一化频率(\倍\ PI弧度/样品)')ylabel(“功率/频率(分贝/弧度/样品)”

周期图获得并绘制周期图。比较PSD估计。

周期图(X,rectwin(长度(X)),长度(X),“双侧”

mxerr = MAX(psdx'-周期图(X,rectwin(长度(X)),长度(X),“双侧”))
mxerr = 2.8422e-14

也可以看看

应用

功能