31 #ifndef TOON_INCLUDE_CHOLESKY_H
32 #define TOON_INCLUDE_CHOLESKY_H
68 template <
int Size=Dynamic,
class Precision=DefaultPrecision>
76 template<
class P2,
class B2>
99 for(
int col=0; col<size; col++){
100 Precision inv_diag = 1;
101 for(
int row=col; row < size; row++){
104 for(
int col2=0; col2<col; col2++){
125 template<
int Size2,
class P2,
class B2>
132 for(
int i=0; i<size; i++){
133 Precision val = v[i];
134 for(
int j=0; j<i; j++){
141 for(
int i=0; i<size; i++){
147 for(
int i=size-1; i>=0; i--){
148 Precision val = y[i];
149 for(
int j=i+1; j<size; j++){
160 template<
int Size2,
int C2,
class P2,
class B2>
167 for(
int i=0; i<size; i++){
169 for(
int j=0; j<i; j++){
176 for(
int i=0; i<size; i++){
182 for(
int i=size-1; i>=0; i--){
184 for(
int j=i+1; j<size; j++){
210 template <
int Size2,
typename P2,
typename B2>
220 for (
int j=0;j<i;j++) {
Precision mahalanobis(const Vector< Size2, P2, B2 > &v) const
static Operator< Internal::Identity< Internal::One > > Identity
Vector< Size, Precision > backsub(const Vector< Size2, P2, B2 > &v) const
Matrix< Size, C2, Precision > backsub(const Matrix< Size2, C2, P2, B2 > &m) const
Matrix< Size, Size, Precision > get_L() const
Everything lives inside this namespace.
static void test(int s1, int s2)
Matrix< Size, Size, Precision > get_inverse()
Cholesky(const Matrix< Size, Size, P2, B2 > &m)
Matrix< Size, Size, Precision > get_unscaled_L() const
Matrix< Size, Size, Precision > get_D() const
Cholesky(int size)
Constructor for Size=Dynamic.
Precision determinant()
Compute the determinant.
void compute(const Matrix< Size, Size, P2, B2 > &m)
static Operator< Internal::Zero > Zeros
Matrix< Size, Size, Precision > my_cholesky