问题描述
>> fft([1 4 66])
ans =
71.0000 -34.0000 +53.6936i -34.0000 -53.6936i
有人可以根据上面的结果解释吗?
Can someone explain according the result above?
推荐答案
EDIT 好吧.我省略了2倍.更新后的答案如下...
EDIT Well that's embarassing. I left out a factor of 2. Updated answer follows...
FFT算法快速计算的离散傅立叶变换假定长度N
的输入数据是周期信号的一个周期.周期为2*pi rad
.输出点的频率由2*n*pi/N rad/sec
给出,其中n
是从0
到N-1
的索引.
The Discrete Fourier Transform, which an FFT algorithm computes quickly, assumes the input data of length N
is one period of a periodic signal. The period is 2*pi rad
. The frequency of the output points is given by 2*n*pi/N rad/sec
, where n
is the index from 0
to N-1
.
例如,71
是0 rad/sec
的值,通常称为DC
,-34+53.7i
是2*pi/3 rad/sec
的值,其共轭值是4*pi/3 rad/sec
的值.请注意,按周期性,2*pi/3 rad/sec = -2*pi/3 rad/sec = 4*pi/3 rad/sec
.因此,频谱的后半部分可以视为-pi..0
或pi..2*pi
的频率.
For your example, then, 71
is the value at 0 rad/sec
, commonly called DC
, -34+53.7i
is the value at 2*pi/3 rad/sec
, and its conjugate is the value at 4*pi/3 rad/sec
. Note that by periodicity, 2*pi/3 rad/sec = -2*pi/3 rad/sec = 4*pi/3 rad/sec
. So the second half of the spectrum can be regarded as the frequencies from -pi..0
or pi..2*pi
.
如果数据表示以恒定采样率采样的数据,并且您知道该采样率,则可以将rad/sec
转换为Hz
.令采样率为deltaT
.其倒数是采样频率Fs
.则周期为T = N*deltaT sec = 2*pi rad
. 1/T
给出频率分辨率deltaF = Fs/N Hz
.因此,输出点的频率为n*Fs/N Hz
.
If the data represents sampled data at a constant sampling rate, and you know that sampling rate, you can convert rad/sec
to Hz
. Let the sampling rate be deltaT
. Its reciprocal is the sampling frequency Fs
. Then the period is T = N*deltaT sec = 2*pi rad
. 1/T
gives the frequency resolution deltaF = Fs/N Hz
. Therefore the frequency of the output points is n*Fs/N Hz
.
这篇关于有人可以解释fft的输出在MATLAB中意味着什么吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!