XLPack 7.0
XLPack 数値計算ライブラリ (Excel VBA) リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ Cfft2b()

Sub Cfft2b ( L As  Long,
M As  Long,
C() As  Complex,
Wsave() As  Double,
Info As  Long 
)

2次元複素フーリエ逆変換

目的
本ルーチンは複素配列中の周期数列の2次元フーリエ変換を計算する. この変換はフーリエ逆変換あるいはフーリエ合成と呼ばれ, 数列をスペクトル空間から物理空間に変換する.
C(j,k) = ΣΣC(l1,m1)exp(2πi(j*l1/L+k*m1/M)) (最初のΣは l1 = 0 〜 L-1, 2番目のΣは m1 = 0 〜 M-1) (j = 0 〜 L-1, k = 0 〜 M-1) (iは虚数単位)
この変換は正規化されており, Cfft2fに続くCfft2bの呼び出し(あるいはその逆)により, アルゴリズム上の制約, 丸め誤差などを除き, 元の配列を復元する.
引数
[in]L入力データ行列の行数. (L >= 1) (Lが小さな素数の積で表されると効率が良い)
[in]M入力データ行列の列数. (M >= 1) (Mが小さな素数の積で表されると効率が良い)
[in,out]C()配列 C(LC1 - 1, LC2 - 1) (LC1 >= L, LC2 >= M)
[in] 入力2次元データ列.
[out] フーリエ逆変換された2次元データ列.
[in]Wsave()配列 Wsave(LWsave - 1) (LWsave >= 2*(L+M) + ln(L)/ln(2) + Ln(M)/Ln(2) + 8)
作業データ. 入力データ列の長さLおよびMごとに, Cfft2fあるいはCfft2bを最初に呼び出す前にCfft2iにより初期化しておかなければならない.
[out]Info= 0: 正常終了.
= -1: パラメータ L の誤り. (L < 1)
= -2: パラメータ M の誤り. (M < 1)
= -3: パラメータ C() の誤り. (配列C()の大きさが不足)
= -4: パラメータ Wsave() の誤り. (配列Wsave()の大きさが不足)
出典
FFTPACK
使用例
Cfft2fの使用例を参照せよ.