20 #ifndef OPM_BLAS_LAPACK_HEADER_INCLUDED 21 #define OPM_BLAS_LAPACK_HEADER_INCLUDED 23 #if ! __has_include(<FCMacros.h>) 24 #error "Need FCMacros.h to be generated through FortranCInterface" 33 #if defined(MATLAB_MEX_FILE) && MATLAB_MEX_FILE 36 #define MAT_SIZE_T mwSignedIndex 40 #define MAT_SIZE_T int 45 void FC_GLOBAL(dgemm,DGEMM)(
const char *transA ,
const char *transB ,
46 const MAT_SIZE_T* m,
const MAT_SIZE_T* n ,
const MAT_SIZE_T* k ,
47 const double* a1,
const double* A ,
const MAT_SIZE_T* ldA,
48 const double* B,
const MAT_SIZE_T* ldB,
49 const double* a2,
double* C ,
const MAT_SIZE_T* ldC);
53 void FC_GLOBAL(dsyrk,DSYRK)(
const char *uplo,
const char *trans,
54 const MAT_SIZE_T *n ,
const MAT_SIZE_T *k ,
55 const double *a1 ,
const double *A ,
const MAT_SIZE_T *ldA,
56 const double *a2 ,
double *C ,
const MAT_SIZE_T *ldC);
59 void FC_GLOBAL(dgeqrf,DGERF)(
const MAT_SIZE_T *m ,
const MAT_SIZE_T *n ,
60 double *A ,
const MAT_SIZE_T *ld ,
61 double *tau ,
double *work,
62 const MAT_SIZE_T *lwork, MAT_SIZE_T *info);
65 void FC_GLOBAL(dorgqr,DORGQR)(
const MAT_SIZE_T *m ,
const MAT_SIZE_T *n ,
const MAT_SIZE_T *k ,
66 double *A ,
const MAT_SIZE_T *ld ,
const double *tau,
67 double *work,
const MAT_SIZE_T *lwork, MAT_SIZE_T *info);
70 void FC_GLOBAL(dgetrf,DGETRF)(
const MAT_SIZE_T *m ,
const MAT_SIZE_T *n ,
71 double *A ,
const MAT_SIZE_T *ld,
72 MAT_SIZE_T *ipiv, MAT_SIZE_T *info);
75 void FC_GLOBAL(dgetrs,DGETRS)(
const char *trans,
const MAT_SIZE_T *n,
76 const MAT_SIZE_T *nrhs ,
77 const double *A ,
const MAT_SIZE_T *lda,
78 const MAT_SIZE_T *ipiv ,
double *B,
79 const MAT_SIZE_T *ldb , MAT_SIZE_T *info);
82 void FC_GLOBAL(dgtsv,DGTSV)(
const MAT_SIZE_T *n ,
83 const MAT_SIZE_T *nrhs ,
88 const MAT_SIZE_T *ldb ,
92 void FC_GLOBAL(dgbsv,DGBSV)(
const MAT_SIZE_T *n ,
93 const MAT_SIZE_T *kl ,
94 const MAT_SIZE_T *ku ,
95 const MAT_SIZE_T *nrhs ,
97 const MAT_SIZE_T *ldab ,
100 const MAT_SIZE_T *ldb ,
104 void FC_GLOBAL(dgesv,DGESV)(
const MAT_SIZE_T *n,
105 const MAT_SIZE_T *nrhs ,
107 const MAT_SIZE_T *lda ,
110 const MAT_SIZE_T *ldb ,
114 void FC_GLOBAL(dpotrf,DPOTRF)(
const char *uplo,
const MAT_SIZE_T *n,
115 double *A ,
const MAT_SIZE_T *lda,
119 void FC_GLOBAL(dpotrs,DPOTRS)(
const char *uplo,
const MAT_SIZE_T *n ,
const MAT_SIZE_T *nrhs,
120 double *A ,
const MAT_SIZE_T *lda,
121 double *B ,
const MAT_SIZE_T *ldb, MAT_SIZE_T *info);
124 void FC_GLOBAL(dpptrf,DPOTRF)(
const char *uplo,
const MAT_SIZE_T *n,
125 double *Ap , MAT_SIZE_T *info);
128 void FC_GLOBAL(dpptri,DPPTRI)(
const char *uplo,
const MAT_SIZE_T *n,
129 double *Ap , MAT_SIZE_T *info);
132 void FC_GLOBAL(dgemv,DGEMV)(
const char *trans,
133 const MAT_SIZE_T *m ,
const MAT_SIZE_T *n,
134 const double *a1 ,
const double *A,
const MAT_SIZE_T *ldA ,
135 const double *x,
const MAT_SIZE_T *incX,
136 const double *a2 ,
double *y,
const MAT_SIZE_T *incY);
140 void FC_GLOBAL(daxpy,DAXPY)(
const MAT_SIZE_T *n,
const double *a,
141 const double *x,
const MAT_SIZE_T *incx,
142 double *y,
const MAT_SIZE_T *incy);
145 double FC_GLOBAL(ddot,DDOT)(
const MAT_SIZE_T *n,
const double *x,
const MAT_SIZE_T *incx,
146 const double *y,
const MAT_SIZE_T *incy);