|
|
◆ Ztrsm()
| Sub Ztrsm |
( |
Side As |
String, |
|
|
Uplo As |
String, |
|
|
Transa As |
String, |
|
|
Diag As |
String, |
|
|
M As |
Long, |
|
|
N As |
Long, |
|
|
Alpha As |
Complex, |
|
|
A() As |
Complex, |
|
|
B() As |
Complex, |
|
|
Optional Info As |
Long |
|
) |
| |
Op(A)X = αB または XOp(A) = αB の解 (Op(A) = A, AT または AH) (複素三角行列) (BLAS 3)
- 目的
- 本ルーチンは, 次の連立方程式を解く.
Op(A)X = αB または XOp(A) = αB
ここで, αはスカラー, XおよびBはm×n行列, Aは上または下三角行列で, Op(A)は次のいずれかである. Op(A) = A, Op(A) = A^T または Op(A) = A^H
行列XはBに上書きされる.
- 引数
-
| [in] | Side | Op(A)をBの左から掛けるか右から掛けるかを指定.
= "L": B <- αOp(A)B.
= "R": B <- αBOp(A). |
| [in] | Uplo | 行列Aが上三角行列あるいは下三角行列のどちらであるかを指定.
= "U": Aは上三角行列.
= "L": Aは下三角行列. |
| [in] | Transa | 行列×行列操作において使われるOp(A)の形式を指定.
= "N": Op(A) = A.
= "T": Op(A) = A^T
= "C": Op(A) = A^H |
| [in] | Diag | 対角要素が1であるかどうかを指定.
= "N": 対角要素を1とみなさない.
= "U": 対角要素を1とみなす. (A()の対角要素は参照しない) |
| [in] | M | 行列 B の行数. (M >= 0) (M = 0 の場合, 処理を行わずに戻る) |
| [in] | N | 行列 B の列数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る) |
| [in] | Alpha | スカラーα. αが0の場合, A()は参照されず, また, Bの入力値は設定不要である. |
| [in] | A() | 配列 A(LA1 - 1, LA2 - 1) (LA1 >= M, LA2 >= M (Side="L"の場合), LA1 >= N, LA2 >= N (Side="R"の場合))
M×M三角行列 A (Side = "L"の場合) あるいは N×N三角行列 A (Side = "R"の場合). Uploに従い上三角部分あるいは下三角部分のみ参照される. |
| [in,out] | B() | 配列 B(LB1 - 1, LB2 - 1) (LB1 >= M, LB2 >= N)
[in] M×N行列 B.
[out] Op(A)X = αB の解 (Side="L"の場合) または XOp(A) = αB の解 (Side="R"の場合). |
| [out] | Info | (省略可)
= 0: 正常終了.
= -1: パラメータ Side の誤り. (Side <> "N", "T"および"C")
= -2: パラメータ Uplo の誤り. (Uplo <> "N", "T"および"C")
= -3: パラメータ Transa の誤り. (Transa <> "N", "T"および"C")
= -4: パラメータ Diag の誤り. (Diag <> "N"および"U")
= -5: パラメータ M の誤り. (M < 0)
= -6: パラメータ N の誤り. (N < 0)
= -8: パラメータ A() の誤り.
= -9: パラメータ B() の誤り. |
- 出典
- BLAS
|