diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-11-18 17:40:45 -0500 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-11-18 17:40:45 -0500 |
commit | 126a8e6a69fb3bb21e3971fa04d71433bfba8b3d (patch) | |
tree | 0b0f899a9ff2870d765eefd68b4da693a7a7469e /Eigen | |
parent | 40865fa28cab9473959458ec890d68b9df398dc9 (diff) |
fix remaining bug in ColPivHouseholderQR, so now all tests pass again
Diffstat (limited to 'Eigen')
-rw-r--r-- | Eigen/src/QR/ColPivHouseholderQR.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Eigen/src/QR/ColPivHouseholderQR.h b/Eigen/src/QR/ColPivHouseholderQR.h index 4e983684f..e59ecac66 100644 --- a/Eigen/src/QR/ColPivHouseholderQR.h +++ b/Eigen/src/QR/ColPivHouseholderQR.h @@ -366,7 +366,8 @@ struct ei_solve_retval<ColPivHouseholderQR<_MatrixType>, Rhs> .template triangularView<UpperTriangular>() .solveInPlace(c.corner(TopLeft, dec().rank(), c.cols())); - dst = dec().colsPermutation() * c; + for(int i = 0; i < dec().rank(); ++i) dst.row(dec().colsPermutation().indices().coeff(i)) = c.row(i); + for(int i = dec().rank(); i < cols; ++i) dst.row(dec().colsPermutation().indices().coeff(i)).setZero(); } }; |