numpy.fft — Routinen für die schnelle Fourier-Transformation

Das Submodul numpy.fft stellt eindimensionale Routinen für die schnelle Fourier-Transformation bereit. Die Länge des Eingabe-Arrays muss eine Zweierpotenz sein; andernfalls wird ein ValueError ausgelöst.

Wenn ulab ohne Unterstützung für komplexe Zahlen erstellt wird, werden der Real- und der Imaginärteil der Transformation in separaten numpy.ndarray-Objekten gehalten, und die Funktionen geben ein 2-Tupel (real, imag) zurück. Wenn ulab mit den aktivierten Optionen ULAB_SUPPORTS_COMPLEX und ULAB_FFT_IS_NUMPY_COMPATIBLE erstellt wird, akzeptieren und liefern die Routinen komplexe Arrays auf eine numpy-kompatible Weise.

Funktionen

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

Berechnet die eindimensionale diskrete Fourier-Transformation von r.

Parameter:
  • r – ein eindimensionales Array, dessen Länge eine Zweierpotenz ist. Enthält den Realteil des Eingangssignals.

  • c – ein optionales eindimensionales Array mit derselben Länge wie r, das den Imaginärteil der Eingabe enthält. Wird es weggelassen, wird der Imaginärteil als null angenommen.

Rückgabe:

ein 2-Tupel (real, imag) von numpy.ndarray-Objekten, das den Real- und den Imaginärteil der Transformation enthält.

Verursacht:

ValueError – wenn die Länge der Eingabe keine Zweierpotenz ist.

Wenn ulab mit ULAB_SUPPORTS_COMPLEX und ULAB_FFT_IS_NUMPY_COMPATIBLE auf 1 gesetzt kompiliert wird, nimmt die Funktion stattdessen ein einzelnes (möglicherweise komplexes) Array entgegen und gibt ein komplexes Array zurück, in derselben Weise wie numpy.fft.fft.

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

Berechnet die eindimensionale inverse diskrete Fourier-Transformation.

Parameter:
  • r – ein eindimensionales Array, dessen Länge eine Zweierpotenz ist. Enthält den Realteil des Spektrums.

  • c – ein optionales eindimensionales Array mit derselben Länge wie r, das den Imaginärteil des Spektrums enthält. Wird es weggelassen, wird der Imaginärteil als null angenommen.

Rückgabe:

ein 2-Tupel (real, imag) von numpy.ndarray-Objekten, das den Real- und den Imaginärteil der inversen Transformation enthält. Das Ergebnis wird durch N (die Anzahl der Abtastwerte) normalisiert, sodass ifft(fft(x)) die ursprüngliche Eingabe reproduziert.

Verursacht:

ValueError – wenn die Länge der Eingabe keine Zweierpotenz ist.

Wenn ulab mit ULAB_SUPPORTS_COMPLEX und ULAB_FFT_IS_NUMPY_COMPATIBLE auf 1 gesetzt kompiliert wird, nimmt die Funktion ein einzelnes (möglicherweise komplexes) Array entgegen und gibt ein komplexes Array zurück.