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

◆ ssc_ic_solve()

void ssc_ic_solve ( char  uplo,
int  n,
const double  val[],
const int  colptr[],
const int  rowind[],
int  base,
const int  idiag[],
const double  b[],
double  x[],
int *  info 
)

不完全コレスキー分解による前処理 (IC) (正定値対称行列) (CSC)

目的
正定値対称な係数行列の不完全コレスキー分解による前処理(IC)を行う. すなわち, 連立一次方程式 Mx = b を解く. ここで, M は前処理行列(L*D*L^T または U^T*D*U)である.
引数
[in]uplo= 'U': 上三角行列 U および対角行列 D が前処理行列として格納されている.
= 'L': 下三角行列 L および対角行列 D が前処理行列として格納されている.
[in]n前処理行列の次数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る)
[in]val[]配列 val[lval] (lval >= nnz)
前処理行列(下三角行列 L または上三角行列 U と対角行列 D)の非ゼロ要素の値. (nnz は非ゼロ要素数)
[in]colptr[]配列 colptr[lcolptr] (lcolptr >= n + 1)
前処理行列の列ポインタ.
[in]rowind[]配列 rowind[lrowind] (lrowind >= nnz)
前処理行列の行インデクス. (nnz は非ゼロ要素数)
[in]basecolptr[] および rowind[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
[in]idiag[]配列 idiag[lidiag] (lidiag >= n)
対角要素のインデックス.
[in]b[]配列 b[lb] (lb >= n)
右辺ベクトル b.
[out]x[]配列 x[lx] (lx >= n)
解ベクトル x.
[out]info= 0: 正常終了.
< 0: (-info)番目の入力パラメータの誤り. > 0: 行列が特異である(info番目の対角要素が0).