This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


N-D fast Fourier transform


Y = fftn(X)
Y = fftn(X,sz)



Y = fftn(X) returns the multidimensional Fourier transform of an N-D array using a fast Fourier transform algorithm. The N-D transform is equivalent to computing the 1-D transform along each dimension of X. The output Y is the same size as X.


Y = fftn(X,sz) truncates X or pads X with trailing zeros before taking the transform according to the elements of the vector sz. Each element of sz defines the length of the corresponding transform dimensions. For example, if X is a 5-by-5-by-5 array, then Y = fftn(X,[8 8 8]) pads each dimension with zeros resulting in an 8-by-8-by-8 transform Y.


collapse all

You can use the fftn function to compute a 1-D fast Fourier transform in each dimension of a multidimensional array.

Create a 3-D signal X. The size of X is 20-by-20-by-20.

x = (1:20)';
y = 1:20;
z = reshape(1:20,[1 1 20]);
X = cos(2*pi*0.01*x) + sin(2*pi*0.02*y) + cos(2*pi*0.03*z);

Compute the 3-D Fourier transform of the signal, which is also a 20-by-20-by-20 array.

Y = fftn(X);

Pad X with zeros to compute a 32-by-32-by-32 transform.

m = nextpow2(20);
Y = fftn(X,[2^m 2^m 2^m]);
ans = 1×3

    32    32    32

Input Arguments

collapse all

Input array, specified as a matrix or a multidimensional array. If X is of type single, then fftn natively computes in single precision, and Y is also of type single. Otherwise, Y is returned as type double.

Data Types: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical
Complex Number Support: Yes

Length of the transform dimensions, specified as a vector of positive integers. The elements of sz correspond to the transformation lengths of the corresponding dimensions of X. length(sz) must be equal to ndims(X).

Data Types: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical

More About

collapse all

N-D Fourier Transform

The discrete Fourier transform Y of an N-D array X is defined as


Each dimension has length mk for k = 1,2,...,N, and ωmk=e2πi/mk are complex roots of unity where i is the imaginary unit.

Extended Capabilities

See Also

| | |

Introduced before R2006a