31 #ifndef TOON_INCLUDE_LAPACK_CHOLESKY_H
32 #define TOON_INCLUDE_LAPACK_CHOLESKY_H
71 template <
int Size,
typename Precision=DefaultPrecision>
77 template<
class P2,
class B2>
100 for (
int i=0;i<N;i++) {
119 template <
int Size2,
typename P2,
typename B2>
132 template <
int Size2,
int Cols2,
typename P2,
typename B2>
138 int NRHS=m.num_cols();
145 template <
int Size2,
typename P2,
typename B2>
166 potri_(
"L", &N, M.my_data, &N, &info);
168 for (
int i=1;i<N;i++) {
169 for (
int j=0;j<i;j++) {
Precision determinant() const
void potrf_(const char *UPLO, const int *N, double *A, const int *LDA, int *INFO)
void compute(const Matrix< Size, Size, P2, B2 > &m)
Lapack_Cholesky(const Matrix< Size, Size, P2, B2 > &m)
Everything lives inside this namespace.
static void test(int s1, int s2)
void potri_(const char *UPLO, const int *N, double *A, const int *LDA, int *INFO)
Matrix< Size, Cols2, Precision, ColMajor > backsub(const Matrix< Size2, Cols2, P2, B2 > &m) const
void potrs_(const char *UPLO, const int *N, const int *NRHS, const double *A, const int *LDA, double *B, const int *LDB, int *INFO)
Vector< Size, Precision > backsub(const Vector< Size2, P2, B2 > &v) const
Precision mahalanobis(const Vector< Size2, P2, B2 > &v) const
Matrix< Size, Size, Precision > my_cholesky
Lapack_Cholesky(int size)
Constructor for Size=Dynamic.
Matrix< Size, Size, Precision > get_L() const
Matrix< Size, Size, Precision > my_cholesky_lapack
Matrix get_inverse() const