|
|
◆ zpttrs()
| void zpttrs |
( |
char |
uplo, |
|
|
int |
n, |
|
|
int |
nrhs, |
|
|
double |
d[], |
|
|
doublecomplex |
e[], |
|
|
int |
ldb, |
|
|
doublecomplex |
b[], |
|
|
int * |
info |
|
) |
| |
分解済の連立一次方程式 AX = B の解 (正定値エルミート3重対角行列)
- 目的
- 本ルーチンは3重対角形の連立一次方程式 をzpttrfにより計算された分解 A = U^H*D*U または A = L*D*L^H を用いて解く. Dはd[]に格納された対角行列, U(またはL)は対角要素が1で副対角要素がe[]に格納された2重対角行列, また, XおよびBはn×nrhs行列である.
- 引数
-
| [in] | uplo | 分解の形式, および, e[]が上2重対角行列Uの上副対角要素であるか下2重対角行列Lの下副対角要素であるかを指定する.
= 'U': A = U^H*D*U, e[]はUの上副対角要素.
= 'L': A = L*D*L^H, e[]はLの下副対角要素. |
| [in] | n | 行列Aの行および列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る) |
| [in] | nrhs | 右辺の数, すなわち, 行列Bの列数. (nrhs >= 0) (nrhs = 0 の場合, 処理を行わずに戻る) |
| [in] | d[] | 配列 d[ld] (ld >= n)
分解 A = U^H*D*U または A = L*D*L^H の対角行列Dのn個の対角要素. |
| [in] | e[] | 配列 e[le] (le >= n - 1)
分解 A = U^H*D*U または A = L*D*L^H の2重対角行列UまたはLのn-1個の上または下副対角要素. |
| [in] | ldb | 二次元配列b[][]の整合寸法. (ldb >= max(1, n)) |
| [in,out] | b[][] | 配列 b[lb][ldb] (lb >= nrhs)
[in] 右辺行列 B.
[out] 解行列 X. |
| [out] | info | = 0: 正常終了
= -1: 入力パラメータ uplo の誤り (uplo != 'U'および'L')
= -2: 入力パラメータ n の誤り (n < 0)
= -3: 入力パラメータ nrhs の誤り (nrhs < 0)
= -6: 入力パラメータ ldb の誤り (ldb < max(1, n)) |
- 出典
- LAPACK
|