ifftn — Compute N-dimensional inverse Fourier transforms in MATLAB and RunMat.
ifftn(X) computes the N-dimensional inverse discrete Fourier transform. Documented integer data through 32 bits enters the double transform domain; host int64 and uint64 data and wide size controls are exactness-checked RunMat extensions.
Syntax
Y = ifftn(X)
Y = ifftn(X, SIZE)
Y = ifftn(X, symflag)
Y = ifftn(X, SIZE, symflag)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
X | Any | Yes | — | Input spectrum or signal. |
SIZE | NumericArray | No | [] | Transform sizes per dimension. |
symflag | StringScalar | No | "nonsymmetric" | Symmetry flag: "symmetric" or "nonsymmetric". |
Returns
| Name | Type | Description |
|---|---|---|
Y | NumericArray | N-D inverse FFT output. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:ifftn:ArgCount | More than three input arguments are supplied. | ifftn: invalid argument count |
RunMat:ifftn:InvalidSize | SIZE argument is invalid. | ifftn: invalid SIZE argument |
RunMat:ifftn:InvalidSymflag | Symmetry flag is invalid or appears in an invalid position. | ifftn: invalid symmetry flag usage |
RunMat:ifftn:InvalidInput | Input cannot be converted to supported numeric/complex domain. | ifftn: invalid input |
RunMat:ifftn:Internal | IFFTN execution or tensor shaping fails. | ifftn: internal error |
RunMat:ifftn:ProviderIntegrity | The provider returns ownership, shape, or physical metadata inconsistent with the request. | ifftn: provider integrity error |
How ifftn works
ifftn(X)transforms every dimension.ifftn(X, SIZE)pads or truncates each dimension to the requested positive integer size.ifftn(..., 'symmetric')returns real output;'nonsymmetric'preserves the default complex result.- Documented integer and logical data produces double numeric class while preserving N-D shape.
- Provider outputs are accepted only with the expected owner, device, shape, complex storage, precision, and nonaliasing lifetime.
- Symmetric output and unsupported-hook fallback download through the input owner and restore residency only when the provider can physically preserve the result class.
GPU memory and residency
RunMat resolves every transform pass through the input owner. Intermediate handles are released after each validated pass without touching the source handle; provider failures, malformed results, and aliases are terminal rather than silently gathered away.
Examples
Invert a three-dimensional transform
F = fftn(rand(4, 5, 6));
X = ifftn(F);Use integer input
X = ifftn(uint16(reshape(1:8, [2 2 2])));Using ifftn with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how ifftn changes the result.
Run a small ifftn example, explain the result, then change one input and compare the output.
Related Math functions
Elementwise
abs · angle · bsxfun · complex · conj · double · erf · erfcinv · exp · expm1 · factorial · flintmax · gamma · gammaln · heaviside · hypot · idivide · imag · intmax · intmin · ldivide · log · log10 · log1p · log2 · minus · nextpow2 · plus · pow2 · power · rdivide · real · realmax · realmin · realsqrt · rescale · sign · single · sqrt · swapbytes · times · typecast · uint16 · uint32 · uint8
Trigonometry
acos · acosh · asin · asinh · atan · atan2 · atanh · cos · cosd · cosh · cospi · deg2rad · pol2cart · rad2deg · sin · sind · sinh · sinpi · tan · tand · tanh
Reduction
all · any · bounds · cummax · cummin · cumprod · cumsum · cumtrapz · diff · gradient · max · maxk · mean · median · min · mink · movmax · movmean · movmedian · movmin · movprod · movstd · movsum · movvar · nnz · prod · rms · std · sum · trapz · var
Structure
bandwidth · isdiag · ishermitian · issymmetric · istril · istriu · symrcm
Signal
blackman · butter · buttord · cheb2ord · conv · conv2 · deconv · downsample · envelope · filter · filtfilt · fir1 · freqz · gauspuls · hamming · hann · hilbert · periodogram · pulstran · pwelch · rectpuls · resample · sawtooth · sinc · spectrogram · square · tripuls · unwrap · upsample · zplane
Optim
coneprog · fminbnd · fminunc · fsolve · fzero · integral · linprog · lsqcurvefit · lsqnonlin · optimoptions · optimset · quad · secondordercone
Ops
cross · ctranspose · dot · mldivide · mpower · mrdivide · mtimes · pagemtimes · pagetranspose · trace · transpose
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how ifftn is executed, line by line, in Rust.
- View the source for ifftn in Rust on GitHub
- Learn how the RunMat runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.
- RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
- Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.