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

◆ csr_zussv_sor()

void csr_zussv_sor ( char  uplo,
int  n,
const doublecomplex  val[],
const int  rowptr[],
const int  colind[],
int  base,
double  omega,
doublecomplex  x[],
int  incx,
int *  info 
)

(D/ω + L)x = b または (D/ω + U)x = b の解 (SORソルバー用) (複素行列) (CSR)

目的
CSR形式の疎行列 A について次の連立方程式を解く.
(D/ω + L)x = b または (D/ω + U)x = b (ただし, A = L + D + U)
ここで, b および x は n ベクトル, また, A は n×n 疎行列である. L は A の下三角部分, D は A の対角部分, U は A の上三角部分である.
引数
[in]uploどちらの方程式を解くか指定.
= 'U': (D/ω + U)x = b.
= 'L': (D/ω + L)x = b.
指定された以外の三角部分(対角成分を除く)は無視される.
[in]n行列 A の行および列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る)
[in]val[]配列 val[lval] (lval >= nnz)
行列 A の非ゼロ要素の値. (nnz は非ゼロ要素数)
[in]rowptr[]配列 rowptr[lrowptr] (lrowptr >= n + 1)
行列 A の行ポインタ.
[in]colind[]配列 colind[lcolind] (lcolind >= nnz)
行列 A の列インデクス. (nnz は非ゼロ要素数)
[in]baserowptr[] および colind[] のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
[in]omegaSORソルバーのωパラメータ. (0 < omega < 2)
[in,out]x[]配列 x[lx] (lx >= 1 + (n - 1)*incx)
[in] 右辺ベクトル b.
[out] 解ベクトル x.
[in]incxx[] の要素間隔 (incx != 0).
[out]info= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
= i > 0: 行列が特異である(i番目の対角要素が0).