irfftn¶
- irfftn(x: array, /, *, s: Sequence[int] | None = None, axes: Sequence[int] | None = None, norm: Literal['backward', 'ortho', 'forward'] = 'backward') array¶
Computes the n-dimensional inverse of
rfftnfor complex-valued input.Note
Applying the n-dimensional inverse discrete Fourier transform for real-valued input to the output of this function must return the original (i.e., non-transformed) input array within numerical accuracy (i.e.,
irfftn(rfftn(x)) == x), provided that the transform and inverse transform are performed with the same arguments (axes and normalization mode) and consistent sizes.- Parameters:
x (array) – input array. Should have a complex floating-point data type.
s (Optional[Sequence[int]]) –
number of elements along the transformed axes (dimensions) specified by
axesin the output array. Letibe the index of then-th axis specified byaxes(i.e.,i = axes[n]) andM[i]be the size of the input array along axisi. WhensisNone, the function must setsequal to a sequence of integers such thats[i]equalsM[i]for alli, except for the last transformed axis in whichs[i]equals2*(M[i]-1). For eachi, letnequals[i], except for the last transformed axis in whichnequalss[i]//2+1.If
nis greater thanM[i], axisiof the input array must be zero-padded to sizen.If
nis less thanM[i], axisiof the input array must be trimmed to sizen.If
nequalsM[i]or-1, all elements along axisiof the input array must be used when computing the transform.
If
sis notNone,axesmust not beNone. Default:None.axes (Optional[Sequence[int]]) –
axes (dimensions) over which to compute the transform. A valid axis in
axesmust be an integer on the interval[-N, N), whereNis the rank (number of dimensions) ofx. If an axis is specified as a negative integer, the function must determine the axis along which to compute the transform by counting backward from the last dimension (where-1refers to the last dimension).If
sis provided, the correspondingaxesto be transformed must also be provided. IfaxesisNone, the function must compute the transform over all axes. Default:None.If
axescontains two or more entries which resolve to the same axis (i.e., resolved axes are not unique), the behavior is unspecified and thus implementation-defined.norm (Literal['backward', 'ortho', 'forward']) –
normalization mode. Should be one of the following modes:
'backward': normalize by1/n.'ortho': normalize by1/sqrt(n)(i.e., make the FFT orthonormal).'forward': no normalization.
where
n = prod(s)is the logical FFT size.Default:
'backward'.
- Returns:
out (array) – an array transformed along the axes (dimension) specified by
axes. The returned array must have a real-valued floating-point data type whose precision matches the precision ofx(e.g., ifxiscomplex128, then the returned array must have afloat64data type). The returned array must have the same shape asx, except for the transformed axes which must have sizes[i].
Notes
In order to return an array having an odd number of elements along the last transformed axis, the function must be provided an odd integer for
s[-1].
New in version 2022.12.
Changed in version 2023.12: Required the output array have a real-valued floating-point data type having the same precision as the input array.