- ベストアンサー
逆フーリエ変換のプログラムについて
逆フーリエ変換のプログラムについてなんですが、どのようなプログラミングソフトを使えばよろしいのですか?プログラミングは初心者なのでよくわかりません。 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
>FFTのプログラムの係数を変えるだけで逆フーリエ変換はできるのですか? >プログラムの進行は同じようなものですか? いま、関数h(t) のフーリエ変換FTの処理を、 H(ω) = FT[ h(t) ] とします。ここで周波数をfとすると、 ω=2・π・fです。 このH(ω)をフーリエ変換すると、 FT[ H(ω) ] = 2πh(t) となります。つまりH(ω)/2πをフーリエ変換することは、逆フーリエ変換したことと同じです。 今、ωの場合について言いましたが、代わりに、 H(f) = FT[ h(t) ] と周波数fについてFTする場合は、 h(t) = FT[ H(t) ] と逆フーリエ変換と全く同じです。 2次元のフーリエ変換のライブラリは意外と少ないので、そうですね、下記URLでも参考にしてください。 1次元が解っていればそう難しいものではありません。
その他の回答 (1)
高速フーリエ変換を行いたいのですか? それとも普通のフーリエ変換ですか? (フーリエ変換も逆フーリエ変換も係数が異なるだけで同じ処理です) データ量はどのくらいですか? 1次元ですか2次元ですか? そもそも目的はなんでしょうか? ・プログラムを作ることが目的 この場合は既に大抵使用する言語が決まっているのが普通ですから。 VBA、C、C++、FORTRANどれをつかっも作れます。 大型計算機であれば、FORTRANがよいでしょう。 データ量が少なければVBAでもOKです。 ・単に利用したい この場合は普通ライブラリを使うのか一般的です。 FORTRANでも大抵FFTライブラリはあります。 Cでも色々あります。 ExcelにはFFTが初めから入っているから、わざわざVBAで作る必要もありません。 用途次第です。
補足
ご返信ありがとうございました。 2次元高速フーリエ変換です。データ量はよくわかりません。 目的といたしましては、プログラムを作り、FFTで処理した原子の 周期的な点を逆フーリエ変換する事です。 FFTのプログラムの係数を変えるだけで逆フーリエ変換はできるのですか? プログラムの進行は同じようなものですか? お忙しい中とは思いますが、よろしくお願い致します。
補足
遅くなってすいません。Visual C++ 6.0でプログラムを作ろうとおもいます。 もし、よろしかったら、少しヒントになるようなサイト教えて頂けたら嬉しく思います。