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

◆ ZCsrIluSolve()

Sub ZCsrIluSolve ( ByVal Trans As  String,
N As  Long,
Val() As  Complex,
Rowptr() As  Long,
Colind() As  Long,
D() As  Complex,
B() As  Complex,
X() As  Complex,
Optional Info As  Long,
Optional Base As  Long = -1 
)

不完全LU分解(ILU)前処理 (複素行列) (CSR)

目的
係数行列の不完全LU分解による前処理(ILU)を行う. すなわち, 連立一次方程式 M*x = b, M^T*x = b または M^H*x = b を解く. ここで, M は前処理行列である.
引数
[in]Trans= "N": M*x = b を解く.
= "T": M^T*x = b を解く.
= "C": M^H*x = b を解く.
[in]N前処理行列の次数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る)
[in]Val()配列 Val(LVal - 1) (LVal >= Nnz) (Nnz は非ゼロ要素数)
前処理行列(下三角行列 L と上三角行列 U)の非ゼロ要素の値.
[in]Rowptr()配列 Rowptr(LRowptr - 1) (LRowptr >= N + 1)
前処理行列の行ポインタ.
[in]Colind()配列 Colind(LColind - 1) (LColind >= Nnz)
前処理行列の列インデクス.
[in]D()配列 D(LD) (LD >= N)
上三角行列 U の対角要素.
[in]B()配列 B(LB - 1) (LB >= N)
右辺ベクトル b.
[out]X()配列 X(LX - 1) (LX >= N)
解ベクトル x.
[out]Info(省略可)
= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
[in]Base(省略可)
Rowptr() および Colind() のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
(省略時: Rowptr(0) = 1 であれば 1, そうでなければ 0 とみなす)
使用例
ZCsrIlu, ZCsrIlu0 の使用例を参照せよ.