numpy.fft — Rutiny pro rychlou Fourierovu transformaci

Podmodul numpy.fft poskytuje jednorozměrné rutiny pro rychlou Fourierovu transformaci. Délka vstupního pole musí být mocninou 2; jinak je vyvolána výjimka ValueError.

Když je ulab sestaven bez podpory komplexních čísel, jsou reálná a imaginární část transformace uchovávány v samostatných objektech numpy.ndarray a funkce vracejí dvojici (real, imag). Když je ulab sestaven s povolenými volbami ULAB_SUPPORTS_COMPLEX a ULAB_FFT_IS_NUMPY_COMPATIBLE, rutiny přijímají a vracejí komplexní pole způsobem kompatibilním s numpy.

Funkce

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

Vypočítá jednorozměrnou diskrétní Fourierovu transformaci r.

Parametry:
  • r – jednorozměrné pole, jehož délka je mocninou dvou. Obsahuje reálnou část vstupního signálu.

  • c – volitelné jednorozměrné pole stejné délky jako r, obsahující imaginární část vstupu. Pokud je vynecháno, předpokládá se, že imaginární část je nulová.

Vrací:

dvojice (real, imag) objektů numpy.ndarray, které obsahují reálnou a imaginární část transformace.

Vyvolá:

ValueError – pokud délka vstupu není mocninou dvou.

Když je ulab zkompilován s ULAB_SUPPORTS_COMPLEX a ULAB_FFT_IS_NUMPY_COMPATIBLE nastavenými na 1, funkce místo toho přijímá jediné (případně komplexní) pole a vrací komplexní pole, stejným způsobem jako numpy.fft.fft.

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

Vypočítá jednorozměrnou inverzní diskrétní Fourierovu transformaci.

Parametry:
  • r – jednorozměrné pole, jehož délka je mocninou dvou. Obsahuje reálnou část spektra.

  • c – volitelné jednorozměrné pole stejné délky jako r, obsahující imaginární část spektra. Pokud je vynecháno, předpokládá se, že imaginární část je nulová.

Vrací:

dvojice (real, imag) objektů numpy.ndarray, které obsahují reálnou a imaginární část inverzní transformace. Výsledek je normalizován hodnotou N (počet vzorků), takže ifft(fft(x)) reprodukuje původní vstup.

Vyvolá:

ValueError – pokud délka vstupu není mocninou dvou.

Když je ulab zkompilován s ULAB_SUPPORTS_COMPLEX a ULAB_FFT_IS_NUMPY_COMPATIBLE nastavenými na 1, funkce přijímá jediné (případně komplexní) pole a vrací komplexní pole.