HMLP: High-performance Machine Learning Primitives
mat_utils.hpp
1 #ifndef _PVFMM_MAT_UTILS_
2 #define _PVFMM_MAT_UTILS_
3 
4 #include <pvfmm/common.hpp>
5 
6 namespace pvfmm {
7 namespace mat {
8 
9 template <class T> void gemm(char TransA, char TransB, int M, int N, int K, T alpha, T *A, int lda, T *B, int ldb, T beta, T *C, int ldc);
10 
11 template <class T> void cublasgemm(char TransA, char TransB, int M, int N, int K, T alpha, T *A, int lda, T *B, int ldb, T beta, T *C, int ldc);
12 
13 template <class T> void svd(char *JOBU, char *JOBVT, int *M, int *N, Iterator<T> A, int *LDA, Iterator<T> S, Iterator<T> U, int *LDU, Iterator<T> VT, int *LDVT, Iterator<T> WORK, int *LWORK, int *INFO);
14 
19 template <class T> void pinv(Iterator<T> M, int n1, int n2, T eps, Iterator<T> M_);
20 
21 } // end namespace mat
22 } // end namespace pvfmm
23 
24 #include <pvfmm/mat_utils.txx>
25 
26 #endif //_PVFMM_MAT_UTILS_
Definition: cheb_utils.hpp:12