Main Content

dftmtx

离散傅里叶变换矩阵

说明

示例

a = dftmtx(n) 返回 n×n 复数离散傅里叶变换矩阵。

示例

全部折叠

实际上,用 FFT 计算离散傅里叶变换比用 DFT 矩阵更高效。FFT 使用的内存也更少。这两个过程给出的结果相同。

x = 1:256;

y1 = fft(x);

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

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

输入参数

全部折叠

离散傅里叶变换长度,指定为整数。

数据类型: single | double

输出参量

全部折叠

离散傅里叶变换矩阵,以矩阵形式返回。

详细信息

全部折叠

离散傅里叶变换矩阵

离散傅里叶变换矩阵是一种复矩阵,将该矩阵与向量相乘可计算向量的离散傅里叶变换。dftmtx 采用单位矩阵的 FFT 来生成变换矩阵。

对于列向量 x

y = dftmtx(n)*x
这与 y = fft(x,n) 相同。逆离散傅里叶变换矩阵为
ainv = conj(dftmtx(n))/n

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2006a 之前推出

另请参阅

|