在归一化频率的情况下找到实际频率

时间:2014-02-16 15:54:18

标签: matlab signals spectrum

。假设我们有一些样本

y =

   31.2241
   -5.9830
   22.6058
   -2.2309
  -42.8272
   29.2850
   -6.2652
   20.8502
   -2.4639
  -44.7525
   30.1104
   -6.0180
   21.4476
   -1.5089
  -45.1826
   29.2744

以某种方式我知道它是通过正弦方法得到的,它包含两个不同频率和幅度的sin函数,所以我应用音乐方法

pmusic(y,4)

和图片

enter image description here

我知道在归一化峰值处的峰值位置,但我不知道实际频率,如何找到它?因为我知道公式是归一化频率* fs / 2,但是fs怎么样?我能找到吗?

1 个答案:

答案 0 :(得分:1)

如果您没有明确给出采样率,您可以通过将数据集的长度(时间)除以样本数来获得它。

如果没有fs,持续时间或其他一些与您的样本相关的信息,那么您运气不佳。

如果您确实拥有必要的信息,pmusic将接受该信息并以正确的非标准化频率返回值。

下面,我们将两个cos波加在一起,总数据集的持续时间为5s,包含512个样本。要添加的两个术语是它要使用的样本数(我放256,但[]会做同样的,因为256是默认值。)和采样率以Hz为单位。

这将为您提供结果的非标准化图。

x = linspace(0,5,512);
y = 1*cos(2*pi*2*x)+1*cos(2*pi*10*x);

pmusic(y,4,256,512/5)