1) 除了负频率,FFT 函数提供的最小频率是多少?是零吗?
2) 如果它是零,我们如何在对数刻度上绘制零?
3)结果总是对称的?或者它只是看起来是对称的?
4) 如果我使用 abs(fft(y)) 来比较 2 个信号,我会失去一些准确性吗?
最佳答案
1) Besides the negative frequencies, which is the minimum frequency provided by the FFT function? Is it zero?
fft(y)
返回一个向量,其中包含 y
的 DFT 的第 0 到第 (N-1) 个样本,其中 y(t) 应该被认为是在 0 ... N-1 上定义的(因此,y(t) 的“周期性重复”可以被认为是在 Z 上定义的周期性信号)。
fft(y)
的第一个样本对应于频率 0。
实时、离散时间、周期性信号的傅里叶变换也有离散域,它是周期性的和厄米特的(见下文)。因此,负频率的变换是对应正频率样本的共轭。
例如,如果您将(周期性重复的)y
解释为在 Z(采样周期 == 1)上定义的周期性实信号,则 fft(y) 的定义域
应解释为 N 个等距点 0、2π/N ... 2π(N-1)/N。负频率处的变换样本 -π ... -π/N 是频率 π ... π/N 处样本的共轭,并且等于频率处的样本
π ... 2π(N-1)/N。
2) If it is zero how do we plot zero on a logarithmic scale?
如果你想画一些 Bode plot您可以仅针对正频率绘制变换,忽略对应于最低频率(特别是 0)的样本。
3) The result is always symmetrical? Or it just appears to be symmetrical?
它有Hermitian symmetry如果 y
是实数:它的实部是对称的,它的虚部是反对称的。换句话说,它的振幅是对称的,相位是反对称的。
4) If I use abs(fft(y)) to compare 2 signals, may I lose some accuracy?
如果你的意思是 abs(fft(x - y))
,这没关系,你可以用它来了解差异的频率分布(或错误,如果 x 是y 的估计值)。如果你的意思是 abs(fft(x)) - abs(fft(y))
(???) 你至少会丢失相位信息。
关于matlab - 帮助我理解 FFT 函数(Matlab),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/433831/