|
|
◆ dgtsv()
| void dgtsv |
( |
int |
n, |
|
|
int |
nrhs, |
|
|
double |
dl[], |
|
|
double |
d[], |
|
|
double |
du[], |
|
|
int |
ldb, |
|
|
double |
b[], |
|
|
int * |
info |
|
) |
| |
(シンプルドライバ) 連立一次方程式 AX = B の解 (一般3重対角行列)
- 目的
- 本ルーチンは次の連立一次方程式を解く. ここで, Aはn×n 3重対角行列である. ピボットの部分選択を行うガウスの消去法を使用する.
引数duとdlを入れ替えることにより, 方程式 A^T*X = B を解くこともできる.
- 引数
-
| [in] | n | 行列Aの行および列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る) |
| [in] | nrhs | 右辺の数, すなわち, 行列Bの列数. (nrhs >= 0) (nrhs = 0 の場合, 処理を行わずに戻る) |
| [in,out] | dl[] | 配列 dl[ldl] (ldl >= n - 1)
[in] Aのn-1個の下副対角要素.
[out] AのLU分解により得られる上三角行列Uのn-2個の第2上副対角要素が dl[0], ..., dl[n-3] のように入る. |
| [in,out] | d[] | 配列 d[ld] (ld >= n)
[in] Aの対角要素.
[out] Uのn個の対角要素. |
| [in,out] | du[] | 配列 du[ldu] (ldu >= n - 1)
[in] Aのn-1個の上副対角要素.
[out] Uのn-1個の第1上副対角要素. |
| [in] | ldb | 二次元配列b[][]の整合寸法. (ldb >= n) |
| [in,out] | b[][] | 配列 b[lb][ldb] (lb >= nrhs)
[in] n×nrhs右辺行列 B.
[out] info = 0 の場合, n×nrhs解行列 X. |
| [out] | info | = 0: 正常終了
= -1: 入力パラメータ n の誤り (n < 0)
= -2: 入力パラメータ nrhs の誤り (nrhs < 0)
= -6: 入力パラメータ ldb の誤り (ldb < max(1, n))
= i > 0: Uのi番目の対角要素が0であり解は計算されなかった. i = n でない限り分解は完了していない. |
- 出典
- LAPACK
|