This forum has been archived. All content is frozen. Please use KDE Discuss instead.

SimplicialLLT and permutation issue

Tags: None
(comma "," separated)
eftang
Registered Member
Posts
7
Karma
0

SimplicialLLT and permutation issue

Tue May 01, 2012 2:01 am
Dear all,

I'm using SimplicialLLT in 3.1.0.alpha2. In my sparse cholesky factor I have a large number of very small entries and hence I need to get the factor explicitly and delete close-to-zero entries. I also need to be able to reconstruct the approximation to my original sparse matrix using the sparsified Cholesky factor. However I can't seem to reconstruct my original matrix A from the Cholesky factors.

If I do something like
Code: Select all
SimplicialLLt <SparseMatrix<double> > solver;
solver.compute(A);
MatrixXd temp = (MatrixXd) (solver.matrixL() * solver.matrixL().transpose());
MatrixXd A_tilde = solver.permutationPinv() * temp * solver.permutationP();

Then A_tilde does not have the same entries as A; however it looks like I have an ordering issue since many of the entries of A and A_tilde are the same.

Am I missing something regarding the permutation matrices? I would expect the above should work assuming that the factorization is PAP' = LL'.

Best,
Jens
User avatar
ggael
Moderator
Posts
3447
Karma
19
OS
the permutations are inverted, it's A = P L L' P'
eftang
Registered Member
Posts
7
Karma
0
I was sure I'd tried the permutations both ways but obviously not ...

Thanks!


Bookmarks



Who is online

Registered users: Bing [Bot], claydoh, Google [Bot], rblackwell, Yahoo [Bot]