Summary: | Error with sparse vector and transpose of matrix | ||||||
---|---|---|---|---|---|---|---|
Product: | Eigen | Reporter: | Benjamin Chretien <chretien> | ||||
Component: | Sparse | Assignee: | Nobody <eigen.nobody> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Wrong Result | CC: | chtz, gael.guennebaud | ||||
Priority: | Normal | ||||||
Version: | 3.3 (current stable) | ||||||
Hardware: | All | ||||||
OS: | All | ||||||
Whiteboard: | |||||||
Bug Depends on: | |||||||
Bug Blocks: | 558 | ||||||
Attachments: |
|
Description
Benjamin Chretien
2015-04-27 04:15:26 UTC
Here is a workaround until this gets fixed: v += sparseVector_t(m1.transpose ()); Since the storage order of v and m1.transpose do not match, this should not even compile (this is the case with eigen 3.2). I also see that "sparse colmajor" + "sparse rowmajor" does compile in the devel branch, meaning that a static assert has been improperly deactivated. Let me investigate... Fixed. Let me also emphasize that the "workaround" proposed by Christoph is actually not a workaround, but a requirement. https://bitbucket.org/eigen/eigen/commits/e99ca53c931b/ Changeset: e99ca53c931b User: ggael Date: 2015-06-08 08:14:08+00:00 Summary: Bug 1005: fix regression regarding sparse coeff-wise binary operator that did not trigger a static assertion for mismatched storage -- GitLab Migration Automatic Message -- This bug has been migrated to gitlab.com's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.com/libeigen/eigen/issues/1005. |