dask.array.fft.fftshift

dask.array.fft.fftshift

dask.array.fft.fftshift(x, axes=None)[source]

Shift the zero-frequency component to the center of the spectrum.

This docstring was copied from numpy.fft.fftshift.

Some inconsistencies with the Dask version may exist.

This function swaps half-spaces for all axes listed (defaults to all). Note that y[0] is the Nyquist component only if len(x) is even.

Parameters
xarray_like

Input array.

axesint or shape tuple, optional

Axes over which to shift. Default is None, which shifts all axes.

Returns
yndarray

The shifted array.

See also

ifftshift

The inverse of fftshift.

Examples

>>> import numpy as np  
>>> freqs = np.fft.fftfreq(10, 0.1)  
>>> freqs  
array([ 0.,  1.,  2., ..., -3., -2., -1.])
>>> np.fft.fftshift(freqs)  
array([-5., -4., -3., -2., -1.,  0.,  1.,  2.,  3.,  4.])

Shift the zero-frequency component only along the second axis:

>>> freqs = np.fft.fftfreq(9, d=1./9).reshape(3, 3)  
>>> freqs  
array([[ 0.,  1.,  2.],
       [ 3.,  4., -4.],
       [-3., -2., -1.]])
>>> np.fft.fftshift(freqs, axes=(1,))  
array([[ 2.,  0.,  1.],
       [-4.,  3.,  4.],
       [-1., -3., -2.]])