New user self-registration is disabled due to spam. Please email eigen-core-team @ if you need an account.
Before reporting a bug, please make sure that your Eigen version is up-to-date!
Bug 1544 - SparseQR generates incorrect Q matrix in complex case
Summary: SparseQR generates incorrect Q matrix in complex case
Alias: None
Product: Eigen
Classification: Unclassified
Component: Sparse (show other bugs)
Version: 3.4 (development)
Hardware: All All
: Normal Wrong Result
Assignee: Nobody
Keywords: test-needed
Depends on:
Blocks: 3.4
  Show dependency treegraph
Reported: 2018-04-19 05:56 UTC by Jeff Trull
Modified: 2018-05-17 17:46 UTC (History)
3 users (show)

2x2 test case (2.11 KB, text/x-c++src)
2018-04-19 05:56 UTC, Jeff Trull
no flags Details

Description Jeff Trull 2018-04-19 05:56:13 UTC
Created attachment 851 [details]
2x2 test case

The SparseQR_QProduct object calculates incorrect results in the non-transpose case for complex scalars. Test case attached.

Similar to the dense case, the problem is a missing conjugate operator (PR to follow).
Comment 1 Christoph Hertzberg 2018-04-20 09:46:14 UTC
This obviously can't work, since for SparseQRMatrixQReturnType the result of adjoint() is the same as transpose().

For future reference: The related dense case was Bug 1493.
Comment 2 Jeff Trull 2018-04-21 17:12:01 UTC
PR 386 ( is a simple fix for this problem.

Note You need to log in before you can comment on or make changes to this bug.