matlab - 帮助我理解 FFT 函数(Matlab)

标签 matlab fft

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/

相关文章:

matlab - 找到向量中最长的连续整数

arrays - 如何从两个向量元素的所有可能组合中获取单个数组?

c++ - 复数矩阵乘法 Eigen 与 Matlab

matlab - Matlab 中的高斯函数有什么不同吗?

iphone - (iphone、objc)如果用户在录制期间点击 iPhone,(fft/其他频谱分析)会出现意外结果

python - 解释 numpy.fft.fft2 输出

python - 将 Matlab 转换为 Python - 加速循环

c++ - 将 matlab FFT 转换为 CUDA FFT

c# - 在音频文件中查找音频样本(频谱图已存在)

IFFT 后虚部冲突