|
|
◆ Zsyr2k()
| Sub Zsyr2k |
( |
Uplo As |
String, |
|
|
Trans As |
String, |
|
|
N As |
Long, |
|
|
K As |
Long, |
|
|
Alpha As |
Complex, |
|
|
A() As |
Complex, |
|
|
B() As |
Complex, |
|
|
Beta As |
Complex, |
|
|
C() As |
Complex, |
|
|
Optional Info As |
Long |
|
) |
| |
Rank 2k 操作: C <- αABT + αBAT + βC または C <- αATB + αBTA + βC (複素対称行列) (BLAS 3)
- 目的
- 本ルーチンは対称 rank 2k 操作を行う.
C <- αAB^T + αBA^T + βC または C <- αA^TB + αB^TA + βC
ここで, αおよびβはスカラー, Cはn×n対称行列, また, AおよびBはn×k行列(最初の場合)またはk×n行列(2番目の場合)である.
- 引数
-
| [in] | Uplo | 配列C()の上三角部分あるいは下三角部分のどちらを参照するかを指定.
= "U": C()の上三角部分のみを参照.
= "L": C()の下三角部分のみを参照. |
| [in] | Trans | 行う操作の指定.
= "N": C <- αAB^T + αBA^T + βC.
= "T": C <- αA^TB + αB^TA + βC. |
| [in] | N | 行列 C の行および列数. (N >= 0) (N = 0 の場合, 処理を行わずに戻る) |
| [in] | K | 行列 A の列数 (Trans="N"の場合)、行列 A の行数 (Trans="T"の場合) (K >= 0) |
| [in] | Alpha | スカラーα. |
| [in] | A() | 配列 A(LA1 - 1, LA2 - 1) (LA1 >= N, LA2 >= K (Trans="N"の場合), LA1 >= K, LA2 >= N (その他の場合))
N×K行列 A (Trans = "N"の場合) または K×N行列 A (その他の場合). |
| [in] | B() | 配列 B(LB1 - 1, LB2 - 1) (LB1 >= N, LB2 >= K (Trans="N"の場合), LB1 >= K, LB2 >= N (その他の場合))
N×K行列 B (Trans = "N"の場合) または K×N行列 B (その他の場合). |
| [in] | Beta | スカラーβ. |
| [in,out] | C() | 配列 C(LC1 - 1, LC2 - 1) (LC1 >= N, LC2 >= N)
[in] N×N対称行列 C. Uploに従い上三角部分あるいは下三角部分のみが参照される.
[out] αAB^T + αBA^T + βC (Trans="N"の場合) または αA^TB + αB^TA + βC (その他の場合). Uploに従い上三角部分あるいは下三角部分のみが上書きされる. |
| [out] | Info | (省略可)
= 0: 正常終了.
= -1: パラメータ Uplo の誤り. (Uplo <> "U"および"L")
= -2: パラメータ Trans の誤り. (Trans <> "N"および"T")
= -3: パラメータ N の誤り. (N < 0)
= -4: パラメータ K の誤り. (K < 0)
= -6: パラメータ A() の誤り.
= -7: パラメータ B() の誤り.
= -9: パラメータ C() の誤り. |
- 出典
- BLAS
|