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

◆ bicg1()

void bicg1 ( int  n,
const double  val[],
const int  rowptr[],
const int  colind[],
const double  b[],
double  x[],
double  tol,
int  maxiter,
int *  iter,
double *  res,
int  lwork,
double  work[],
int *  info 
)

双共役勾配(BICG)法による連立一次方程式 Ax = b の解 (シンプルドライバ)

目的
双共役勾配(BICG)法により連立一次方程式 Ax = b の解を求める. 行列 A は CSR 形式で表される.
引数
[in]n行列の次数. (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]b[]配列 b[lb] (lb >= n)
右辺ベクトル b.
[in,out]x[]配列 x[lx] (lx >= n)
[in] 解の初期推定値.
[out] 求められた近似解.
[in]tol収束判定基準値.
norm(b - A*x) <= tol*norm(b) であれば収束とみなす.
Tol < eps (マシン精度) であれば Tol = eps とみなす.
[in]maxiter最大反復回数. (maxiter > 0)
[out]iter最終的な反復回数.
[out]res最終的な残差ノルム norm(b - A*x).
[in]lwork配列 work[]のサイズ. (lwork >= 8*n)
[out]work[]配列 work[lwork]
作業領域.
[out]info= 0: 正常終了.
< 0: (-info)番目の入力パラメータの誤り.
= 11: 最大反復回数を超えた.
= 12: ブレークダウンが発生した.