XLPack 7.0
XLPack 数値計算ライブラリ (C API) リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ zgemm()

void zgemm ( char  transa,
char  transb,
int  m,
int  n,
int  k,
doublecomplex  alpha,
int  lda,
doublecomplex  a[],
int  ldb,
doublecomplex  b[],
doublecomplex  beta,
int  ldc,
doublecomplex  c[] 
)

C <- αop(A)op(B) + βC (op(X) = X, XT または XH) (複素行列) (BLAS 3)

目的
本ルーチンは次の行列×行列操作を行う.
C <- αop(A)op(B) + βC
ここで, op(X)は次のいずれかである.
op(X) = X, op(X) = X^T または op(X) = X^H
αおよびβはスカラー, また, A, BおよびCは行列で, op(A)はm×k行列, op(B)はk×n行列, そして, op(C)はm×n行列である.
引数
[in]transa行列×行列操作で使われるop(A)の形式を指定.
= 'N': op(A) = A.
= 'T': op(A) = A^T.
= 'C': op(A) = A^H.
[in]transb行列×行列操作で使われるop(B)の形式を指定.
= 'N': op(B) = B.
= 'T': op(B) = B^T.
= 'C': op(B) = B^H.
[in]m行列op(A)および行列Cの行数. (m >= 0) (m = 0 の場合, 処理を行わずに戻る)
[in]n行列op(B)および行列Cの列数. (n >= 0) (n = 0 の場合, 処理を行わずに戻る)
[in]k行列op(A)の列数および行列op(B)の行数. (k >= 0)
[in]alphaスカラーα.
[in]lda二次元配列a[][]の整合寸法. (lda >= max(1, m) (transa = 'N'の場合), lda >= max(1, k) (その他の場合))
[in]a[][]配列 a[la][lda] (la >= k (transa = 'N'の場合), la >= m (その他の場合))
m×k行列A (transa = 'N'の場合) または k×m行列A (その他の場合).
[in]ldb二次元配列b[][]の整合寸法. (ldb >= max(1, k) (transb = 'N'の場合), ldb >= max(1, n) (その他の場合))
[in]b[][]配列 b[lb][ldb] (lb >= n (transa = 'N'の場合), lb >= k (その他の場合))
k×n行列B (transa = 'N'の場合) または n×k行列B (その他の場合).
[in]betaスカラーβ. βが0の場合, Cの入力値は設定不要である.
[in]ldc二次元配列c[][]の整合寸法. (ldc >= max(1, m))
[in,out]c[][]配列 c[lc][ldc] (lc >= n)
[in] m×n行列 C.
[out] m×n出力行列. (= αOp(A)Op(B) + βC)
出典
BLAS