QPMS
Electromagnetic multiple scattering library and toolkit.
qpmsblas.h
Go to the documentation of this file.
1 
15 #ifndef QPMSBLAS_H
16 #define QPMSBLAS_H
17 #define QPMS_BLAS_INDEX_T long long int
18 
19 #ifndef CBLAS_H
20 typedef enum {CblasRowMajor=101, CblasColMajor=102} CBLAS_LAYOUT;
21 typedef enum {CblasNoTrans=111, CblasTrans=112, CblasConjTrans=113} CBLAS_TRANSPOSE;
22 typedef enum {CblasUpper=121, CblasLower=122} CBLAS_UPLO;
23 typedef enum {CblasNonUnit=131, CblasUnit=132} CBLAS_DIAG;
24 typedef enum {CblasLeft=141, CblasRight=142} CBLAS_SIDE;
25 #endif
26 
28 void qpms_zgemm(CBLAS_LAYOUT Order, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB,
29  const QPMS_BLAS_INDEX_T M, const QPMS_BLAS_INDEX_T N, const QPMS_BLAS_INDEX_T K,
30  const _Complex double *alpha, const _Complex double *A, const QPMS_BLAS_INDEX_T lda,
31  const _Complex double *B, const QPMS_BLAS_INDEX_T ldb,
32  const _Complex double *beta, _Complex double *C, const QPMS_BLAS_INDEX_T ldc);
33 
34 #endif //QPMSBLAS_H
void qpms_zgemm(CBLAS_LAYOUT Order, CBLAS_TRANSPOSE TransA, CBLAS_TRANSPOSE TransB, const QPMS_BLAS_INDEX_T M, const QPMS_BLAS_INDEX_T N, const QPMS_BLAS_INDEX_T K, const _Complex double *alpha, const _Complex double *A, const QPMS_BLAS_INDEX_T lda, const _Complex double *B, const QPMS_BLAS_INDEX_T ldb, const _Complex double *beta, _Complex double *C, const QPMS_BLAS_INDEX_T ldc)
Naïve serial reimplementation of cblas_zgemm.