?HEMM_

List

chemm_単精度複素数エルミート行列と一般行列の積
zhemm_倍精度複素数エルミート行列と一般行列の積

概略

エルミート行列と一般行列の積を計算します。結果を別途渡した行列にスカラ倍したものを加算します(詳しくは計算式参照)

計算式

C := alpha * AB + beta * C
または
C := alpha * BA + beta * C

プロトタイプ宣言

void chemm_(char *side, char *uplo, int *m, int *n, complex *alpha, complex *A, int *ldA,
complex *B, int *ldB, complex *beta, complex *C, int *ldC);

void zhemm_(char *side, char *uplo, int *m, int *n, doublecomplex *alpha, doublecomplex *A, int *ldA,
doublecomplex *B, int *ldB, doublecomplex *beta, doublecomplex *C, int *ldC);

引数/戻り値

変数名概要
side char* 行列Aがどちらに来るか指定 ("L"(左側 AB),"R"(右側 BA)から選択)
uplo char* 行列Aのどの部分を使うか指定 ("L"(下三角),"U"(上三角)から選択)
m int* 行列Aの行数・列数 行列Bの行数
n int* 行列Bの列数
alpha double*スカラーalpha
A doublecomplex*行列Aの先頭ポインタ
ldA int* Aのleading dimension (通常は行数を指定すれば良い)
B doublecomplex*行列Bの先頭ポインタ
ldB int* Bのleading dimension (通常は行数を指定すれば良い)
beta double*スカラーbeta
C doublecomplex*行列Cの先頭ポインタ
ldC int* Cのleading dimension (通常は行数を指定すれば良い)
戻り値void