Re: [eigen] Cholesky Factorization with AMD ordering

[ Thread Index | Date Index | More Archives ]

You can simply use the SparseLLT class of the SparseCholesky module which use AMD ordering by default. Then, SparseLLT gives you access to the L factor and symmetric permutation vector.

See the sparse chapter for some examples:


On Tue, Jun 24, 2014 at 10:52 PM, Gokturk <poyrazoglu@xxxxxxxx> wrote:
Hello all,

I need your precious help to complete my task.
I was a MATLAB user for a long time, now I'm trying to write a code in C++.

For those of you who are familiar with MATLAB, I simply want to perform

    [L, ~ , s] = chol ( E, 'lower' , 'vector' );
where E is positive definite matrix,
            L is factorized Lower triangular matrix
            s is permutation matrix associated with AMD Ordering

For those of you who are not familiar with MATLAB,
I simply want to perform cholesky factorization to matrix E with AMD Ordering.
I need AMD Ordering to reduce the fill-in number in lower triangular matrix L.
As you may suspected, matrix L is the lower triangular matrix which gives  L * LT = s * E * sT

Now, my problem is I am not able to perform same process with Eigen.
I've realized Eigen provides AMD Ordering for sparse matrices.
But I couldn't understand how I use it.
Could you please help me to write an equivalent version of MATLAB line given above?

Gokturk Poyrazoglu
Mitsubishi Electric Research Laboratories (MERL)
201 Broadway, Cambridge, MA

Mail converted by MHonArc 2.6.19+