Learn R Programming

gsignal (version 0.3-1)

dftmtx: Discrete Fourier Transform Matrix

Description

Compute the discrete Fourier transform matrix

Usage

dftmtx(n)

Arguments

n

Size of Fourier transformation matrix, specified as a positive integer.

Value

Fourier transform matrix.

Details

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, postpad(x, n). The inverse discrete Fourier transform matrix is inv <- Conj(dftmtx(n)) / n.

In general this is less efficient than calling the fft and ifft functions directly.

See Also

fft, ifft

Examples

Run this code
# NOT RUN {
x <- seq_len(256)
y1 <- stats::fft(x)
n <- length(x)
y2 <- drop(x %*% dftmtx(n))
mx <- max(abs(y1 - y2))

# }

Run the code above in your browser using DataLab