|
|
◆ CscZussm()
| Sub CscZussm |
( |
Uplo As |
String, |
|
|
Trans As |
String, |
|
|
Diag As |
String, |
|
|
N As |
Long, |
|
|
Nrhs As |
Long, |
|
|
Val() As |
Complex, |
|
|
Colptr() As |
Long, |
|
|
Rowind() As |
Long, |
|
|
X() As |
Complex, |
|
|
Optional Info As |
Long, |
|
|
Optional Base As |
Long = -1 |
|
) |
| |
AX = B, ATX = B または AHX = B の解 (複素三角行列) (CSC)
- 目的
- CSC形式の疎行列 A について次の連立方程式を解く.
A*X = B, A^T*X = B または A^H*X = B
ここで, A は N×N 上または下三角疎行列, また, B および X は N×Nrhs 密行列である.
- 引数
-
| [in] | Uplo | 行列 A が上三角行列あるいは下三角行列のどちらであるかを指定.
= "U": A は上三角行列.
= "L": A は下三角行列.
指定された以外の三角部分(対角成分を含まない)は無視される. |
| [in] | Trans | 解くべき連立方程式を指定.
= "N": A*X = B.
= "T": A^T*X = B.
= "C": A^H*X = B. |
| [in] | Diag | 行列 A を単三角行列(対角要素が1の三角行列)とみなすかどうかを指定.
= "N": A を単三角行列とみなさない.
= "U": A を単三角行列とみなす. (対角要素を 1 とみなし, 対角要素の位置に Val() の要素があっても無視される.) |
| [in] | N | 行列 A の行および列数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る) |
| [in] | Nrhs | 行列 B および X の列数. (Nrhs >= 0) (Nrhs = 0 の場合, 処理を行わずに戻る) |
| [in] | Val() | 配列 Val(LVal - 1) (LVal >= Nnz) (Nnz は行列 A の非ゼロ要素数)
行列 A の非ゼロ要素の値. |
| [in] | Colptr() | 配列 Colptr(LColptr - 1) (LColptr >= N + 1)
行列 A の列ポインタ. |
| [in] | Rowind() | 配列 Rowind(LRowind - 1) (LRowind >= Nnz)
行列 A の行インデクス. |
| [in,out] | X() | 配列 X(LX1 - 1, LX2 - 1) (LX1 >= N, LX2 >= Nrhs)
[in] 右辺行列 B.
[out] 解行列 X. |
| [out] | Info | (省略可)
= 0: 正常終了.
= i < 0: (-i)番目の入力パラメータの誤り.
= i > 0: 行列が特異である(i番目の対角要素が0). |
| [in] | Base | (省略可)
Colptr() および Rowind() のインデクス形式.
= 0: 0-ベース(C形式): 開始インデクス値が 0.
= 1: 1-ベース(Fortran形式): 開始インデクス値が 1.
(省略時: Colptr(0) = 1 であれば 1, そうでなければ 0 とみなす) |
|