18# if defined(USE_ANY_CBLAS) && (USE_ANY_CBLAS == 1)
46 const CBLAS_LAYOUT layout,
47 const CBLAS_TRANSPOSE TransA,
59 cblas_sgemv(layout, TransA, M, N, alpha, A, lda, X, incX, beta, Y,
73 const CBLAS_LAYOUT layout,
74 const CBLAS_TRANSPOSE TransA,
86 cblas_dgemv(layout, TransA, M, N, alpha, A, lda, X, incX, beta, Y,
99 void xgemv<long double>(
100 const CBLAS_LAYOUT layout,
101 const CBLAS_TRANSPOSE TransA,
104 const long double alpha,
109 const long double beta,
128 std::cerr <<
"Error: cblas_?gemv for long double type is not "
129 <<
"implemented. To use long double type, set USE_CBLAS "
130 <<
"and USE_MKL to 0 and recompile the package."
145 const CBLAS_LAYOUT layout,
146 const CBLAS_UPLO Uplo,
157 cblas_ssymv(layout, Uplo, N, alpha, A, lda, X, incX, beta, Y, incY);
170 const CBLAS_LAYOUT layout,
171 const CBLAS_UPLO Uplo,
182 cblas_dsymv(layout, Uplo, N, alpha, A, lda, X, incX, beta, Y, incY);
194 void xsymv<long double>(
195 const CBLAS_LAYOUT layout,
196 const CBLAS_UPLO Uplo,
198 const long double alpha,
203 const long double beta,
221 std::cerr <<
"Error: cblas_?symv for long double type is not "
222 <<
"implemented. To use long double type, set USE_CBLAS "
223 <<
"and USE_MKL to 0 and recompile the package."
244 cblas_scopy(N, X, incX, Y, incY);
263 cblas_dcopy(N, X, incX, Y, incY);
275 void xcopy<long double>(
290 std::cerr <<
"Error: cblas_?copy for long double type is not "
291 <<
"implemented. To use long double type, set USE_CBLAS "
292 <<
"and USE_MKL to 0 and recompile the package."
314 cblas_saxpy(N, alpha, X, incX, Y, incY);
334 cblas_daxpy(N, alpha, X, incX, Y, incY);
346 void xaxpy<long double>(
348 const long double alpha,
363 std::cerr <<
"Error: cblas_?axpy for long double type is not "
364 <<
"implemented. To use long double type, set USE_CBLAS "
365 <<
"and USE_MKL to 0 and recompile the package."
386 return cblas_sdot(N, X, incX, Y, incY);
405 return cblas_ddot(N, X, incX, Y, incY);
417 long double xdot<long double>(
432 std::cerr <<
"Error: cblas_?dot for long double type is not "
433 <<
"implemented. To use long double type, set USE_CBLAS "
434 <<
"and USE_MKL to 0 and recompile the package."
453 return cblas_snrm2(N, X, incX);
465 double xnrm2<double>(
470 return cblas_dnrm2(N, X, incX);
482 long double xnrm2<long double>(
493 std::cerr <<
"Error: cblas_?nrm2 for long double type is not "
494 <<
"implemented. To use long double type, set USE_CBLAS "
495 <<
"i and USE_MKL to 0 and recompile the package."
515 cblas_sscal(N, alpha, X, incX);
533 cblas_dscal(N, alpha, X, incX);
545 void xscal<long double>(
547 const long double alpha,
558 std::cerr <<
"Error: cblas_?scal for long double type is not "
559 <<
"implemented. To use long double type, set USE_CBLAS "
560 <<
"and USE_MKL to 0 and recompile the package."