1
3Dフーリエ変換のフーリエ行列を作成したいと思います。 私は1D FFTのためのMatlabで、それはdftmtxで作成することができ、私はこのようなKRONを使用して、2D FFTに拡張できることを知っている:3Dフーリエ行列MATLAB
FT1D=dftmtx(N);
FT2D=kron(FT1D,FT1D);
は、3次元に拡張する方法はありますか?ご協力ありがとうございました。
3Dフーリエ変換のフーリエ行列を作成したいと思います。 私は1D FFTのためのMatlabで、それはdftmtxで作成することができ、私はこのようなKRONを使用して、2D FFTに拡張できることを知っている:3Dフーリエ行列MATLAB
FT1D=dftmtx(N);
FT2D=kron(FT1D,FT1D);
は、3次元に拡張する方法はありますか?ご協力ありがとうございました。
私はこの問題を自分で解決しました。私はMathworks社でオンザフライのカスタムマトリックスオブジェクトの定義と呼ばれるスイートが見つかりました: http://www.mathworks.com/matlabcentral/fileexchange/26611-on-the-fly-definition-of-custom-matrix-objects
このスイートを使用し、次のように、3次元フーリエ行列を定義することができます
Qobj=MatrixObj;
[email protected](obj,z) fftn(z);
がそれを使用するには、我々書くことができます:
y=Qobj*x;
これはかなり簡単です。 私はインターネット上の私の問題に対する他の解決策を見つけられなかったので、他の人にも役立つことを願っています!