FFT. Корреляция между частотой и временем выборок - PullRequest
0 голосов
/ 24 февраля 2020

Что такое корреляция между временными выборками и частотой?

У меня 250 выборок, которые соответствуют 1 секунде моего сигнала (для конкретной точки c) и 500 выборок 2 секунды соответственно. Основная формула частоты f = 1 / T. Следовательно, чем больше у меня временных выборок, тем меньше должно быть моей частоты.

Код (извините за имя переменных xD):

#frequence
fig = plt.figure(figsize=(10, 6))
ax = fig.add_subplot(111)
pointdat=tracesM[361,28*250:(28+2)*250]
this = np.fft.fft(pointdat-np.mean(pointdat))
thisi = int(len(this))
thisii = np.abs(this[:(thisi)])
print(max(thisii))
plt.plot(thisii)
plt.grid(color='black')
plt.title('2s for specific point(361 in this situation)')
plt.xlabel('number of time samples(frequency?)')
plt.ylabel('power')
import matplotlib.ticker as plticker
loc = plticker.MultipleLocator(base=20)
locY = plticker.MultipleLocator(base=10)
ax.xaxis.set_major_locator(loc)
ax.yaxis.set_major_locator(locY)
plt.show()

У меня есть диаграммы: 1. введите описание изображения здесь 2. введите описание изображения здесь

Как я знаю, я должен получить зависимость мощности (сигнала) и частоты в диаграммах, используя np.fft.fft. Но похоже, что я получаю зависимость мощности (сигнала) и временных отсчетов: 250 и 500 отсчетов, соответствующих 1 и 2 секундам соответственно.

Основные вопросы: 1. Какую зависимость я добраться до этих графиков? 2. Каково значение T (периода) на этих графиках?

1 Ответ

1 голос
/ 24 февраля 2020

Если dt - временной шаг, df - частотный шаг, а N - число выборок, то мы имеем для дискретного преобразования Фурье

dt*df = 2*pi/N

Если T - общая длина выборки, мы имеем

dt = T/N
df = 2*pi/T

Вычислите свою df и умножьте свою ось частоты на df.

...