54 #if defined (INTEL_CXML)
55 #define CHAR_MACRO(char_var) &char_var, 1
57 #define CHAR_MACRO(char_var) &char_var
73 float Epetra_BLAS::DOT(
const int N,
const float * X,
const float * Y,
const int INCX,
const int INCY)
const {
74 return(
SDOT_F77(&N, X, &INCX, Y, &INCY));
77 double Epetra_BLAS::DOT(
const int N,
const double * X,
const double * Y,
const int INCX,
const int INCY)
const {
78 return(
DDOT_F77(&N, X, &INCX, Y, &INCY));
99 void Epetra_BLAS::COPY(
const int N,
const float * X,
float * Y,
const int INCX,
const int INCY)
const {
104 void Epetra_BLAS::COPY(
const int N,
const double * X,
double * Y,
const int INCX,
const int INCY)
const {
117 void Epetra_BLAS::AXPY(
const int N,
const float ALPHA,
const float * X,
float * Y,
const int INCX,
const int INCY)
const {
118 SAXPY_F77(&N, &ALPHA, X, &INCX, Y, &INCY);
121 void Epetra_BLAS::AXPY(
const int N,
const double ALPHA,
const double * X,
double * Y,
const int INCX,
const int INCY)
const {
122 DAXPY_F77(&N, &ALPHA, X, &INCX, Y, &INCY);
126 const float ALPHA,
const float *
A,
const int LDA,
const float * X,
127 const float BETA,
float * Y,
const int INCX,
const int INCY)
const {
129 A, &LDA, X, &INCX, &BETA, Y, &INCY);
133 const double ALPHA,
const double *
A,
const int LDA,
const double * X,
134 const double BETA,
double * Y,
const int INCX,
const int INCY)
const {
136 A, &LDA, X, &INCX, &BETA, Y, &INCY);
140 void Epetra_BLAS::GEMM(
const char TRANSA,
const char TRANSB,
const int M,
const int N,
const int K,
141 const float ALPHA,
const float *
A,
const int LDA,
const float *
B,
142 const int LDB,
const float BETA,
float *
C,
const int LDC)
const {
145 A, &LDA, B, &LDB, &BETA, C, &LDC);
149 void Epetra_BLAS::GEMM(
const char TRANSA,
const char TRANSB,
const int M,
const int N,
const int K,
150 const double ALPHA,
const double *
A,
const int LDA,
const double *
B,
151 const int LDB,
const double BETA,
double *
C,
const int LDC)
const {
154 A, &LDA, B, &LDB, &BETA, C, &LDC);
158 const float ALPHA,
const float *
A,
const int LDA,
const float *
B,
159 const int LDB,
const float BETA,
float *
C,
const int LDC)
const {
162 A, &LDA, B, &LDB, &BETA, C, &LDC);
167 const double ALPHA,
const double *
A,
const int LDA,
const double *
B,
168 const int LDB,
const double BETA,
double *
C,
const int LDC)
const {
171 A, &LDA, B, &LDB, &BETA, C, &LDC);
174 void Epetra_BLAS::TRMM(
const char SIDE,
const char UPLO,
const char TRANSA,
const char DIAG,
const int M,
const int N,
175 const float ALPHA,
const float *
A,
const int LDA,
float *
B,
176 const int LDB)
const {
179 &M, &N, &ALPHA, A, &LDA, B, &LDB);
182 void Epetra_BLAS::TRMM(
const char SIDE,
const char UPLO,
const char TRANSA,
const char DIAG,
const int M,
const int N,
183 const double ALPHA,
const double *
A,
const int LDA,
double *
B,
184 const int LDB)
const {
187 &M, &N, &ALPHA, A, &LDA, B, &LDB);
190 void Epetra_BLAS::SYRK(
const char UPLO,
const char TRANS,
const int N,
const int K,
const float ALPHA,
const float *
A,
191 const int LDA,
const float BETA,
float *
C,
const int LDC)
const{
195 void Epetra_BLAS::SYRK(
const char UPLO,
const char TRANS,
const int N,
const int K,
const double ALPHA,
const double *
A,
196 const int LDA,
const double BETA,
double *
C,
const int LDC)
const{
float PREFIX SDOT_F77(const int *n, const float x[], const int *incx, const float y[], const int *incy)
void GEMM(const char TRANSA, const char TRANSB, const int M, const int N, const int K, const float ALPHA, const float *A, const int LDA, const float *B, const int LDB, const float BETA, float *C, const int LDC) const
Epetra_BLAS matrix-matrix multiply function (SGEMM)
#define CHAR_MACRO(char_var)
void AXPY(const int N, const float ALPHA, const float *X, float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector update function (SAXPY)
float NRM2(const int N, const float *X, const int INCX=1) const
Epetra_BLAS norm function (SNRM2).
void TRMM(const char SIDE, const char UPLO, const char TRANSA, const char DIAG, const int M, const int N, const float ALPHA, const float *A, const int LDA, float *B, const int LDB) const
Epetra_BLAS triangular matrix-matrix multiply function (STRMM)
void GEMV(const char TRANS, const int M, const int N, const float ALPHA, const float *A, const int LDA, const float *X, const float BETA, float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS matrix-vector multiply function (SGEMV)
float PREFIX SNRM2_F77(const int *n, const float x[], const int *incx)
void SYRK(const char UPLO, const char TRANS, const int N, const int K, const float ALPHA, const float *A, const int LDA, const float BETA, float *C, const int LDC) const
Eperta_BLAS symetric rank k funtion (ssyrk)
float PREFIX SASUM_F77(const int *n, const float x[], const int *incx)
float ASUM(const int N, const float *X, const int INCX=1) const
Epetra_BLAS one norm function (SASUM).
void SYMM(const char SIDE, const char UPLO, const int M, const int N, const float ALPHA, const float *A, const int LDA, const float *B, const int LDB, const float BETA, float *C, const int LDC) const
Epetra_BLAS symmetric matrix-matrix multiply function (SSYMM)
void SCAL(const int N, const float ALPHA, float *X, const int INCX=1) const
Epetra_BLAS vector scale function (SSCAL)
int IAMAX(const int N, const float *X, const int INCX=1) const
Epetra_BLAS arg maximum of absolute value function (ISAMAX)
float DOT(const int N, const float *X, const float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS dot product function (SDOT).
void COPY(const int N, const float *X, float *Y, const int INCX=1, const int INCY=1) const
Epetra_BLAS vector copy function (SCOPY)