fftn

Contents

fftn#

class saiunit.fft.fftn(a, s=None, axes=None, norm=None, **kwargs)#

Compute a multidimensional discrete Fourier transform.

Unit-aware implementation of numpy.fft.fftn(). The output unit is input_unit * second ** n_axes where n_axes is the number of transformed axes.

Parameters:
  • a (Union[saiunit.Quantity, Array, ndarray, number, bool]) – Input array.

  • s (Optional[Sequence[int]]) – Shape of the result along each transformed axis.

  • axes (Optional[Sequence[int]]) – Axes over which to compute the DFT. None means all axes.

  • norm (str | None) – Normalization mode.

Returns:

N-dimensional DFT of a.

Return type:

Union[saiunit.Quantity, Array, ndarray, number, bool]

See also

saiunit.fft.ifftn

N-dimensional inverse DFT.

saiunit.fft.fft

One-dimensional DFT.

Examples

>>> import saiunit as u
>>> import saiunit.fft as sufft
>>> import jax.numpy as jnp
>>> x = jnp.array([[1.0, 2.0], [3.0, 4.0]]) * u.meter
>>> X = sufft.fftn(x)
>>> x_back = sufft.ifftn(X)