scipy.fftpack.

irfft#

scipy.fftpack.irfft(x, n=None, axis=-1, overwrite_x=False)[source]#

Gibt die diskrete inverse Fourier-Transformation einer reellen Sequenz x zurück.

Der Inhalt von x wird als Ausgabe der Funktion rfft interpretiert.

Parameter:
xarray_like

Zu invertierende transformierte Daten.

nint, optional

Länge der inversen Fourier-Transformation. Wenn n < x.shape[axis], wird x abgeschnitten. Wenn n > x.shape[axis], wird x mit Nullen aufgefüllt. Die Standardeinstellung ergibt n = x.shape[axis].

axisint, optional

Achse, entlang derer die ifft(s) berechnet werden; die Standardeinstellung ist über die letzte Achse (d. h. Achse=-1).

overwrite_xbool, optional

Wenn True, kann der Inhalt von x zerstört werden; die Standardeinstellung ist False.

Rückgabe:
irfftndarray von Fließkommazahlen

Die diskrete inverse Fourier-Transformation.

Siehe auch

rfft, ifft, scipy.fft.irfft

Hinweise

Das zurückgegebene reelle Array enthält

[y(0),y(1),...,y(n-1)]

wobei für n gerade ist

y(j) = 1/n (sum[k=1..n/2-1] (x[2*k-1]+sqrt(-1)*x[2*k])
                             * exp(sqrt(-1)*j*k* 2*pi/n)
            + c.c. + x[0] + (-1)**(j) x[n-1])

und für n ungerade ist

y(j) = 1/n (sum[k=1..(n-1)/2] (x[2*k-1]+sqrt(-1)*x[2*k])
                             * exp(sqrt(-1)*j*k* 2*pi/n)
            + c.c. + x[0])

c.c. bezeichnet das komplex Konjugierte des vorhergehenden Ausdrucks.

Details zu den Eingabeparametern finden Sie unter rfft.

Um Frequenzbereichsdaten (konjugiert-symmetrisch) mit einem komplexen Datentyp zu verarbeiten, ziehen Sie die neuere Funktion scipy.fft.irfft in Betracht.

Beispiele

>>> from scipy.fftpack import rfft, irfft
>>> a = [1.0, 2.0, 3.0, 4.0, 5.0]
>>> irfft(a)
array([ 2.6       , -3.16405192,  1.24398433, -1.14955713,  1.46962473])
>>> irfft(rfft(a))
array([1., 2., 3., 4., 5.])