# dftmtx

Discrete Fourier transform matrix

## Syntax

``a = dftmtx(n)``

## Description

example

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

## 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 = 7.3126e-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.

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 ```

## Version History

Introduced before R2006a