|
|
◆ Zhemm()
| Sub Zhemm |
( |
Side As |
String, |
|
|
Uplo As |
String, |
|
|
M As |
Long, |
|
|
N As |
Long, |
|
|
Alpha As |
Complex, |
|
|
A() As |
Complex, |
|
|
B() As |
Complex, |
|
|
Beta As |
Complex, |
|
|
C() As |
Complex, |
|
|
Optional Info As |
Long |
|
) |
| |
C <- αAB + βC または C <- αBA + βC (エルミート行列) (BLAS 3)
- 目的
- 本ルーチンは次の行列×行列操作を行う.
C <- αAB + βC または C <- αBA + βC
αおよびβはスカラー, Aはエルミート行列, また, BおよびCはm×n行列である.
- 引数
-
| [in] | Side | エルミート行列Aの行列操作における左右を指定.
= "L": C <- αAB + βC.
= "R": C <- αBA + βC. |
| [in] | Uplo | エルミート行列Aの上三角部分あるいは下三角部分のどちらを参照するかを指定.
= "U": エルミート行列の上三角部分のみを参照.
= "L": エルミート行列の下三角部分のみを参照. |
| [in] | M | 行列Cの行数. (M >= 0) (M = 0 の場合, 処理を行わずに戻る) |
| [in] | N | 行列Cの列数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る) |
| [in] | Alpha | スカラーα. |
| [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] | B() | 配列 B(LB1 - 1, LB2 - 1) (LB1 >= M, LB2 >= N) M×N行列 B. |
| [in] | Beta | スカラーβ. βが0の場合, Cの入力値は設定不要である. |
| [in,out] | C() | 配列 C(LC1 - 1, LC2 - 1) (LC1 >= M, LC2 >= N)
[in] M×N行列 C.
[out] M×N行列 αAB + βC (Side="L"の場合) または αBA + βC (Side="R"の場合). |
| [out] | Info | (省略可)
= 0: 正常終了.
= -1: パラメータ Side の誤り. (Side <> "N", "T"および"C")
= -2: パラメータ Uplo の誤り. (Uplo <> "N", "T"および"C")
= -3: パラメータ M の誤り. (M < 0)
= -4: パラメータ N の誤り. (N < 0)
= -6: パラメータ A() の誤り.
= -7: パラメータ B() の誤り.
= -9: パラメータ C() の誤り. |
- 出典
- BLAS
|