Sparse/Dense Matrix/Vector product behaves incorrectly.

Submitted by Thomas Moulard

Assigned to Nobody

Link to original bugzilla bug (#633)

Description

Created attachment 371
repro code

Dear Eigen developers,
it appeared to me that the last development version of Eigen (5488:084dc63b) is not evaluating sparse/dense matrix/vector multiplication correctly.

In particular, some code is failing during template instantiation (missing coeffRef) or seems to compute a bad result (i.e. product returns a null matrix where as it should not be the case).
I also attempted multiplication using the selfadjointView.

The operation I want to do is:

(sparse matrix, row-major) res = A (symmetric sparse matrix, row-major) * v (dense vector)

Could you take a look at this repro code and tell what you think about it?

Thank you very much for your time.

Please note that I tested this on Ubuntu Linux 12.04.2 (64-bits) with GCC 4.6 and the last Eigen development version (5488:084dc63b). This problem has been also seen on Arch Linux 64-bits, GCC 4.7.2.

Attachment 371, "repro code":
bug-sparse.cc

Edited by Eigen Bugzilla