у меня есть сигнал a(t)
, это то, как он выглядит, когда я сюжет его:Извлеченные спектр зависит от числа точек выборки
Я пытаюсь извлечь собственные частоты этого сигнала с помощью БПФ в MATLAB , Я делаю это, как этот
Y=fft(a);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);
plot(P1)
Теперь, получается, что если я использую Y=fft(a)
, я получаю только частоты, близкие к 0, когда я сюжет спектра. Если я использую Y=fft(a(1:3:end))
, то получаю частоты в 0 и ненулевые частоты.
- Почему эти ненулевые частоты не появляются, когда я делаю БПФ на полном наборе данных, но только когда я пробовал каждую четвертую точку?
- Является ли ненулевая частота фактически, содержащейся в моем наборе данных или это артефакт?
Что такое 'L'? Можете ли вы либо включить график вашего спектра, либо данные для 'a', или способ генерации' a'? –