27#ifndef G2O_MARGINAL_COVARIANCE_CHOLESKY_H
28#define G2O_MARGINAL_COVARIANCE_CHOLESKY_H
30#include <unordered_map>
59 const std::vector<int>& blockIndices);
66 const std::vector<int>& rowBlockIndices,
67 const std::vector<std::pair<int, int> >& blockIndices);
101 double computeEntry(
int r,
int c);
int _n
L is an n X n matrix.
void computeCovariance(double **covBlocks, const std::vector< int > &blockIndices)
MarginalCovarianceCholesky()
double * _Ax
values of the cholesky factor
std::unordered_map< int, double > LookupMap
int * _Ai
row indices of the CCS storage
void setCholeskyFactor(int n, int *Lp, int *Li, double *Lx, int *permInv)
int * _Ap
column pointer of the CCS storage
std::vector< double > _diag
cache 1 / H_ii to avoid recalculations
LookupMap _map
hash look up table for the already computed entries
int computeIndex(int r, int c) const
compute the index used for hashing
Sparse matrix which uses blocks.