MsPASS C++ API  2.4.3.dev1+g61b06b96
Defines the C++ API for MsPASS
Loading...
Searching...
No Matches
blas.h
1#ifndef __BLAS_H
2#define __BLAS_H
3
4#include "FC.h"
5
6#ifndef dgesv
7#define dgesv FC_GLOBAL(dgesv, DGESV)
8#endif
9#ifndef dpotrf
10#define dpotrf FC_GLOBAL(dpotrf, DPOTRF)
11#endif
12#ifndef dpotrs
13#define dpotrs FC_GLOBAL(dpotrs, DPOTRS)
14#endif
15#ifndef dsyev
16#define dsyev FC_GLOBAL(dsyev, DSYEV)
17#endif
18
19extern "C" {
20double ddot(const int& n,const double *x,const int& incx,
21 const double *y,const int& incy);
22double dscal(const int& n, const double& a, const double *x, const int& incx);
23double daxpy(const int &n, const double& a, const double *x,const int& incx,
24 const double *y,const int& incy);
25double dcopy(const int &n, const double *x,const int& incx,
26 const double *y,const int& incy);
27double dnrm2(const int &n, const double *x,const int& incx);
28void dgetrf(int&,int&,double*,int&,int*,int&);
29void dgetri(int&,double*,int&,int*,double*,int&,int&);
30void dgesv(int&,int&,double*,int&,int*,double*,int&,int&);
31void dpotrf(char*,int&,double*,int&,int&);
32void dpotrs(char*,int&,int&,double*,int&,double*,int&,int&);
33void dsyev(char*,char*,int&,double*,int&,double*,double*,int&,int&);
34double dlamch(const char *cmach);
35int dstebz(char *range, char *order, int *n, double
36 *vl, double *vu, int *il, int *iu, double *abstol,
37 double *d__, double *e, int *m, int *nsplit,
38 double *w, int *iblock, int *isplit, double *work,
39 int *iwork, int *info);
40int dstein(int *n, double *d__, double *e,
41 int *m, double *w, int *iblock, int *isplit,
42 double *z__, int *ldz, double *work, int *iwork,
43 int *ifail, int *info);
44
45};
46
47#endif