numpy.fft — Процедуры быстрого преобразования Фурье

Подмодуль numpy.fft предоставляет процедуры одномерного быстрого преобразования Фурье. Длина входного массива должна быть степенью двойки; в противном случае возбуждается исключение ValueError.

Когда ulab собран без поддержки комплексных чисел, действительная и мнимая части преобразования хранятся в отдельных объектах numpy.ndarray, и функции возвращают двухэлементный кортеж (real, imag). Когда ulab собран с включёнными параметрами ULAB_SUPPORTS_COMPLEX и ULAB_FFT_IS_NUMPY_COMPATIBLE, процедуры принимают и возвращают комплексные массивы способом, совместимым с numpy.

Функции

numpy.fft.fft(r: ndarray, c: ndarray | None = None) tuple[ndarray, ndarray]

Вычисляет одномерное дискретное преобразование Фурье от r.

Параметры:
  • r – одномерный массив, длина которого является степенью двойки. Содержит действительную часть входного сигнала.

  • c – необязательный одномерный массив той же длины, что и r, содержащий мнимую часть входных данных. Если он опущен, мнимая часть считается равной нулю.

Результат:

двухэлементный кортеж (real, imag) из объектов numpy.ndarray, содержащих действительную и мнимую части преобразования.

Исключение:

ValueError – если длина входных данных не является степенью двойки.

Когда ulab скомпилирован с ULAB_SUPPORTS_COMPLEX и ULAB_FFT_IS_NUMPY_COMPATIBLE, установленными в 1, функция вместо этого принимает один (возможно, комплексный) массив и возвращает комплексный массив, тем же способом, что и numpy.fft.fft.

numpy.fft.ifft(r: ndarray, c: ndarray | None = None) tuple[ndarray, ndarray]

Вычисляет одномерное обратное дискретное преобразование Фурье.

Параметры:
  • r – одномерный массив, длина которого является степенью двойки. Содержит действительную часть спектра.

  • c – необязательный одномерный массив той же длины, что и r, содержащий мнимую часть спектра. Если он опущен, мнимая часть считается равной нулю.

Результат:

двухэлементный кортеж (real, imag) из объектов numpy.ndarray, содержащих действительную и мнимую части обратного преобразования. Результат нормализуется на N (число отсчётов), так что ifft(fft(x)) воспроизводит исходные входные данные.

Исключение:

ValueError – если длина входных данных не является степенью двойки.

Когда ulab скомпилирован с ULAB_SUPPORTS_COMPLEX и ULAB_FFT_IS_NUMPY_COMPATIBLE, установленными в 1, функция принимает один (возможно, комплексный) массив и возвращает комплексный массив.