36 #ifndef NEKTAR_LIB_UTILITIES_LINEAR_ALGEBRA_BLASARRAY_HPP
37 #define NEKTAR_LIB_UTILITIES_LINEAR_ALGEBRA_BLASARRAY_HPP
49 void F77NAME(
dcopy) (
const int& n,
const double *x,
const int& incx,
50 double *y,
const int& incy);
51 void F77NAME(
daxpy) (
const int& n,
const double& alpha,
const double *x,
52 const int& incx,
const double *y,
const int& incy);
53 double F77NAME(
ddot) (
const int& n,
const double *x,
const int& incx,
54 const double *y,
const int& incy);
59 ASSERTL1(
static_cast<unsigned int>(n*incx) <= x.size()+x.GetOffset(),
"Array out of bounds");
60 ASSERTL1(
static_cast<unsigned int>(n*incy) <= y.size()+y.GetOffset(),
"Array out of bounds");
68 ASSERTL1(
static_cast<unsigned int>(n*incx) <= x.size()+x.GetOffset(),
"Array out of bounds");
69 ASSERTL1(
static_cast<unsigned int>(n*incy) <= y.size()+y.GetOffset(),
"Array out of bounds");
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode....
#define F77NAME(x)
Fortran routines need an underscore.
void F77NAME() daxpy(const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy)
double F77NAME() ddot(const int &n, const double *x, const int &incx, const double *y, const int &incy)
static void Dcopy(const int &n, const double *x, const int &incx, double *y, const int &incy)
BLAS level 1: Copy x to y.
void F77NAME() dcopy(const int &n, const double *x, const int &incx, double *y, const int &incy)
static double Ddot(const int &n, const double *x, const int &incx, const double *y, const int &incy)
BLAS level 1: output = .
static void Daxpy(const int &n, const double &alpha, const double *x, const int &incx, const double *y, const int &incy)
BLAS level 1: y = alpha x plus y.