numpy.fft — Procedury szybkiej transformaty Fouriera

Podmoduł numpy.fft udostępnia jednowymiarowe procedury szybkiej transformaty Fouriera. Długość tablicy wejściowej musi być potęgą liczby 2; w przeciwnym razie zgłaszany jest wyjątek ValueError.

Gdy ulab jest zbudowany bez obsługi liczb zespolonych, części rzeczywista i urojona transformaty są przechowywane w osobnych obiektach numpy.ndarray, a funkcje zwracają 2-krotkę (real, imag). Gdy ulab jest zbudowany z włączonymi opcjami ULAB_SUPPORTS_COMPLEX oraz ULAB_FFT_IS_NUMPY_COMPATIBLE, procedury przyjmują i zwracają tablice zespolone w sposób zgodny z numpy.

Funkcje

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

Oblicza jednowymiarową dyskretną transformatę Fouriera r.

Parametry:
  • r – jednowymiarowa tablica, której długość jest potęgą liczby dwa. Przechowuje część rzeczywistą sygnału wejściowego.

  • c – opcjonalna jednowymiarowa tablica o tej samej długości co r, zawierająca część urojoną wejścia. Jeśli zostanie pominięta, przyjmuje się, że część urojona jest równa zero.

Zwraca:

2-krotka (real, imag) obiektów numpy.ndarray przechowujących część rzeczywistą i urojoną transformaty.

Wyrzuca:

ValueError – jeśli długość wejścia nie jest potęgą liczby dwa.

Gdy ulab jest skompilowany z opcjami ULAB_SUPPORTS_COMPLEX oraz ULAB_FFT_IS_NUMPY_COMPATIBLE ustawionymi na 1, funkcja przyjmuje zamiast tego pojedynczą (potencjalnie zespoloną) tablicę i zwraca tablicę zespoloną, w taki sam sposób jak numpy.fft.fft.

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

Oblicza jednowymiarową odwrotną dyskretną transformatę Fouriera.

Parametry:
  • r – jednowymiarowa tablica, której długość jest potęgą liczby dwa. Przechowuje część rzeczywistą widma.

  • c – opcjonalna jednowymiarowa tablica o tej samej długości co r, zawierająca część urojoną widma. Jeśli zostanie pominięta, przyjmuje się, że część urojona jest równa zero.

Zwraca:

2-krotka (real, imag) obiektów numpy.ndarray przechowujących część rzeczywistą i urojoną transformaty odwrotnej. Wynik jest normalizowany przez N (liczbę próbek), tak że ifft(fft(x)) odtwarza oryginalne wejście.

Wyrzuca:

ValueError – jeśli długość wejścia nie jest potęgą liczby dwa.

Gdy ulab jest skompilowany z opcjami ULAB_SUPPORTS_COMPLEX oraz ULAB_FFT_IS_NUMPY_COMPATIBLE ustawionymi na 1, funkcja przyjmuje pojedynczą (potencjalnie zespoloną) tablicę i zwraca tablicę zespoloną.