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

◆ ZCsxSsor()

Sub ZCsxSsor ( N As  Long,
Omega As  Double,
Val() As  Complex,
Ptr() As  Long,
Ind() As  Long,
D() As  Complex,
Optional Info As  Long,
Optional Base As  Long = -1 
)

対称逐次的過剰緩和(SSOR)前処理のための初期化 (複素行列) (CSC/CSR)

目的
連立一次方程式の疎な係数行列 A に対する対称逐次的過剰緩和(SSOR)前処理のための初期化を行う. 前処理行列は次のように定義される.
M(ω) = (1/(2 - ω))(D/ω + L)(D/ω)^(-1)(D/ω + U)
ここで, L, D, U はそれぞれ係数行列 A の下三角部分, 対角部分, 上三角部分である.

出力 D() を CscSsorSolve(), HscSsorSolve(), SscSsorSolve(), CsrSsorSolve(), HsrSsorSolve() または SsrSsorSolve() が使用する.
引数
[in]N行列 A の次数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る)
[in]Omega緩和パラメータω. (0 < ω < 2)
[in]Val()配列 Val(LVal - 1) (LVal >= Nnz) (Nnz は行列 A の非ゼロ要素数)
行列 A の非ゼロ要素の値.
[in]Ptr()配列 Ptr(LPtr - 1) (LPtr >= N + 1)
行列 A の列ポインタ(CSC)/行ポインタ(CSR).
[in]Ind()配列 Ind(LInd - 1) (LInd >= nnz)
行列 A の行インデクス(CSC)/行インデクス(CSR).
[out]D()配列 D(LD - 1) (LD >= N)
対角要素 D/ω を返す.
[out]Info(省略可)
= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
= j > 0: j 個の対角要素が 0 である (該当要素については D() に 1/ω を返す).
[in]Base(省略可)
Ptr() および Ind() のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
(省略時: Ptr(0) = 1 であれば 1, そうでなければ 0 とみなす)
使用例
ZCsrSsorSolve, ZCscSsorSolve の使用例を参照せよ.