Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

dftmtx

離散フーリエ変換行列

説明

a = dftmtx(n) では、nn 列の複素数離散フーリエ変換行列が返されます。

すべて折りたたむ

離散フーリエ変換を計算する場合、実際には、DFT 行列ではなく、FFT を使用したほうが効率的です。FFT のほうがメモリ消費量も少なくてすみます。どちらの方法を使用しても結果は同じです。

x = 1:256;

y1 = fft(x);

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

norm(y1-y2)
ans = 9.6887e-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 より前に導入