Main Content

dftmtx

Discrete Fourier transform matrix

Description

a = dftmtx(n) returns an n-by-n complex discrete Fourier transform matrix.

example

Examples

collapse all

In practice, it is more efficient to compute the discrete Fourier transform with the FFT than with the DFT matrix. The FFT also uses less memory. The two procedures give the same result.

x = 1:256;

y1 = fft(x);

n = length(x);
y2 = x*dftmtx(n);

norm(y1-y2)
ans = 
9.6887e-12

Input Arguments

collapse all

Discrete Fourier transform length, specified as an integer.

Data Types: single | double

Output Arguments

collapse all

Discrete Fourier transform matrix, returned as a matrix.

More About

collapse all

Discrete Fourier Transform Matrix

A discrete Fourier transform matrix is a complex matrix whose matrix product with a vector computes the discrete Fourier transform of the vector. dftmtx takes the FFT of the identity matrix to generate the transform matrix.

For a column vector x,

y = dftmtx(n)*x
is the same as y = fft(x,n). The inverse discrete Fourier transform matrix is
ainv = conj(dftmtx(n))/n

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced before R2006a

See Also

|