我们试图分析圆柱体周围的流动,我们得到了一组从风洞实验得到的Cp值.最初,我们从20 Hz的采样频率开始,并试图在matlab中使用FFT找到涡旋脱落的频率.我们的频率约为7赫兹.接下来,我们进行了相同的实验,但我们唯一改变的是采样频率 - 从20 Hz到200 Hz.我们得到涡旋脱落的频率约为70 Hz(这是峰值位于图中的位置).无论我们输入的Cp数据如何,图表都不会改变.峰值不同的唯一时间是我们更改采样频率.看起来涡旋脱落频率的增加与采样频率成正比,这似乎根本没有意义.
您遇到的问题与"数据混叠"有关,因为FFT的限制能够检测到高于奈奎斯特频率(采样频率的一半)的频率.
利用数据混叠,实际频率的峰值将以(实际频率模奈奎斯特频率)为中心.在您的20 Hz采样中(假设70 Hz是真实频率,这导致零频率,这意味着您没有看到真实信息.有一点可以帮助您解决这个问题是使用FFT"窗口".
您可能遇到的另一个问题是通过单FFT测量生成噪声数据.最好采用大量数据,使用重叠窗口,并确保至少有5个FFT,您可以平均找到结果.正如Steven Lowe所说,如果可能的话,你也应该以更快的速度进行抽样.我建议您以最快的速率对您的乐器进行采样.
最后,我建议您阅读C(< - link)中的Numerical Recipes的一些摘录:
第12.0节 - FFT简介
第12.1节(讨论数据别名)
第13.4节(讨论FFT窗口)
您不需要阅读C源代码 - 只是解释.C的数字配方具有关于该主题的优秀浓缩信息.
如果您还有其他问题,请将其留在评论中.我会尽力回答他们.
祝好运!