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
rfftn
for 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
axes
in the output array. Leti
be the index of then
-th axis specified byaxes
(i.e.,i = axes[n]
) andM[i]
be the size of the input array along axisi
. Whens
isNone
, the function must sets
equal 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
, letn
equals[i]
, except for the last transformed axis in whichn
equalss[i]//2+1
.If
n
is greater thanM[i]
, axisi
of the input array must be zero-padded to sizen
.If
n
is less thanM[i]
, axisi
of the input array must be trimmed to sizen
.If
n
equalsM[i]
or-1
, all elements along axisi
of the input array must be used when computing the transform.
If
s
is notNone
,axes
must not beNone
. Default:None
.axes (Optional[Sequence[int]]) –
axes (dimensions) over which to compute the transform. A valid axis in
axes
must be an integer on the interval[-N, N)
, whereN
is 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-1
refers to the last dimension).If
s
is provided, the correspondingaxes
to be transformed must also be provided. Ifaxes
isNone
, the function must compute the transform over all axes. Default:None
.If
axes
contains 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., ifx
iscomplex128
, then the returned array must have afloat64
data 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.