Re: [eigen] SparseLU generates dense representation somewere

[ Thread Index | Date Index | More Archives ]

On 19.01.2014 11:11, Gael Guennebaud wrote:
Handling true sparse right-hand sides in sparse solvers is much more
difficult than it might look, and most cases, when solving Ax=b with both A
and b sparse, x is likely to be dense. It would be interesting to have some

Yes, a very simple example for that would be a bidiagonal matrix with 1 on the diagonal and -1 on the sub-diagonal. If b is the first unit vector, x must be filled with 1.

On Sun, Jan 19, 2014 at 3:32 AM, Wenzel Jakob
Do you think that it would bepossible to hack the defaultEvalTo() function
to use a SparseVector with NbColsAtOnce==1, or is it more involved than
that? At least in principle I think it would be useful if a fully sparse
solve() function is provided as an alternative option.

We'd still need to implement the actual sparse solver for the sparse vector, I guess (@Gael: or is this already implemented inside the decomposers somewhere?). And as soon as cases like my example above arise, you likely end up far less efficient than with the current approach. We could add a warning in the documentation, that solving with a sparse rhs is not likely to be efficient.

I'd also be interested, if (and why) you actually need the entire (A^{-1}*B) matrix, or if maybe multiplying by B and then solving with A might be sufficient.


Dipl.-Inf., Dipl.-Math. Christoph Hertzberg
Cartesium 0.049
Universität Bremen
Enrique-Schmidt-Straße 5
28359 Bremen

Tel: +49 (421) 218-64252

Mail converted by MHonArc 2.6.19+