Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
175 of 541 menu
◀ ▶

Функция rfftfreq

Функция rfftfreq возвращает массив частот, соответствующих коэффициентам одномерного вещественного БПФ. Первым параметром передаётся длина окна данных, вторым параметром можно задать интервал между отсчётами времени.

Синтаксис

np.rfftfreq(n, [d])

Пример

Давайте получим массив частот для преобразования 8 отсчётов вещественного сигнала:

import numpy as np res = np.rfftfreq(8) print(res)

Результат выполнения кода:

[0. 0.125 0.25 0.375 0.5 ]

Пример

Зададим интервал между отсчётами времени 0.1 секунды:

import numpy as np res = np.rfftfreq(8, d=0.1) print(res)

Результат выполнения кода:

[0. 1.25 2.5 3.75 5. ]

Пример

Рассмотрим использование с функцией rfft для анализа частотной составляющей сигнала:

import numpy as np rng = np.random.default_rng(0) t = np.linspace(0, 1, 100, endpoint=False) signal = np.sin(2 * np.pi * 5 * t) + 0.5 * rng.standard_normal(100) freq = np.rfftfreq(100, d=1/100) spectrum = np.rfft(signal) print(freq[:10]) print(np.abs(spectrum[:10]))

Результат выполнения кода:

[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.] [ 6.35616829 6.27476223 2.77782224 2.98846616 3.60579511 28.59982918 2.54124077 3.94817963 2.33634677 2.26335006]

На частоте 5 Гц виден пик амплитуды, что соответствует частоте синусоидального сигнала.

Смотрите также

  • функцию fftfreq,
    которая возвращает частоты для комплексного БПФ
  • функцию rfft,
    которая выполняет одномерное вещественное БПФ
  • функцию irfft,
    которая выполняет обратное вещественное БПФ
  • функцию fftshift,
    которая сдвигает нулевую частоту в центр спектра
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить