Skip to main content
`Ctrl`+`K`

# Legacy discrete Fourier transforms (`scipy.fftpack`)

Legacy

This submodule is considered legacy and will no longer receive updates. While we currently have no plans to remove it, we recommend that new code uses more modern alternatives instead. New code should use `scipy.fft`.

## Fast Fourier Transforms (FFTs)

`fft`(x[, n, axis, overwrite_x]) | Return discrete Fourier transform of real or complex sequence.
`ifft`(x[, n, axis, overwrite_x]) | Return discrete inverse Fourier transform of real or complex sequence.
`fft2`(x[, shape, axes, overwrite_x]) | 2-D discrete Fourier transform.
`ifft2`(x[, shape, axes, overwrite_x]) | 2-D discrete inverse Fourier transform of real or complex sequence.
`fftn`(x[, shape, axes, overwrite_x]) | Return multidimensional discrete Fourier transform.
`ifftn`(x[, shape, axes, overwrite_x]) | Return inverse multidimensional discrete Fourier transform.
`rfft`(x[, n, axis, overwrite_x]) | Discrete Fourier transform of a real sequence.
`irfft`(x[, n, axis, overwrite_x]) | Return inverse discrete Fourier transform of real sequence x.
`dct`(x[, type, n, axis, norm, overwrite_x]) | Return the Discrete Cosine Transform of arbitrary type sequence x.
`idct`(x[, type, n, axis, norm, overwrite_x]) | Return the Inverse Discrete Cosine Transform of an arbitrary type sequence.
`dctn`(x[, type, shape, axes, norm, overwrite_x]) | Return multidimensional Discrete Cosine Transform along the specified axes.
`idctn`(x[, type, shape, axes, norm, overwrite_x]) | Return multidimensional Discrete Cosine Transform along the specified axes.
`dst`(x[, type, n, axis, norm, overwrite_x]) | Return the Discrete Sine Transform of arbitrary type sequence x.
`idst`(x[, type, n, axis, norm, overwrite_x]) | Return the Inverse Discrete Sine Transform of an arbitrary type sequence.
`dstn`(x[, type, shape, axes, norm, overwrite_x]) | Return multidimensional Discrete Sine Transform along the specified axes.
`idstn`(x[, type, shape, axes, norm, overwrite_x]) | Return multidimensional Discrete Sine Transform along the specified axes.

## Differential and pseudo-differential operators

`diff`(x[, order, period, _cache]) | Return kth derivative (or integral) of a periodic sequence x.
`tilbert`(x, h[, period, _cache]) | Return h-Tilbert transform of a periodic sequence x.
`itilbert`(x, h[, period, _cache]) | Return inverse h-Tilbert transform of a periodic sequence x.
`hilbert`(x[, _cache]) | Return Hilbert transform of a periodic sequence x.
`ihilbert`(x[, _cache]) | Return inverse Hilbert transform of a periodic sequence x.
`cs_diff`(x, a, b[, period, _cache]) | Return (a,b)-cosh/sinh pseudo-derivative of a periodic sequence.
`sc_diff`(x, a, b[, period, _cache]) | Return (a,b)-sinh/cosh pseudo-derivative of a periodic sequence x.
`ss_diff`(x, a, b[, period, _cache]) | Return (a,b)-sinh/sinh pseudo-derivative of a periodic sequence x.
`cc_diff`(x, a, b[, period, _cache]) | Return (a,b)-cosh/cosh pseudo-derivative of a periodic sequence.
`shift`(x, a[, period, _cache]) | Shift periodic sequence x by a: y(u) = x(u+a).

## Helper functions

`fftshift`(x[, axes]) | Shift the zero-frequency component to the center of the spectrum.
`ifftshift`(x[, axes]) | The inverse of `fftshift`.
`fftfreq`(n[, d, device]) | Return the Discrete Fourier Transform sample frequencies.
`rfftfreq`(n[, d]) | DFT sample frequencies (for usage with rfft, irfft).
`next_fast_len`(target) | Find the next fast size of input data to `fft`, for zero-padding, etc.

Note that `fftshift`, `ifftshift` and `fftfreq` are numpy functions exposed by `fftpack`; importing them from `numpy` should be preferred.

## Convolutions (`scipy.fftpack.convolve`)

`convolve`(x,omega,[swap_real_imag,overwrite_x]) | Wrapper for `convolve`.
`convolve_z`(x,omega_real,omega_imag,[overwrite_x]) | Wrapper for `convolve_z`.
`init_convolution_kernel`(...) | Wrapper for `init_convolution_kernel`.
`destroy_convolve_cache`() |