diff options
author | Gael Guennebaud <g.gael@free.fr> | 2011-12-23 23:22:31 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2011-12-23 23:22:31 +0100 |
commit | 15ea999f84f65e7664fc9b662f79d37e2fb5fd4d (patch) | |
tree | 505419d5c2f24b0fa3fe3ba57881d6972fec870c /test/jacobisvd.cpp | |
parent | 901bcdd2a807d70466632c899d0fa68c66e6ecbb (diff) |
pushed too fast the previous one
Diffstat (limited to 'test/jacobisvd.cpp')
-rw-r--r-- | test/jacobisvd.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/test/jacobisvd.cpp b/test/jacobisvd.cpp index 9ce4d8b29..fb44dae95 100644 --- a/test/jacobisvd.cpp +++ b/test/jacobisvd.cpp @@ -132,8 +132,11 @@ void jacobisvd_test_all_computation_options(const MatrixType& m) jacobisvd_solve<MatrixType, QRPreconditioner>(m, ComputeThinU | ComputeFullV); jacobisvd_solve<MatrixType, QRPreconditioner>(m, ComputeThinU | ComputeThinV); + // test reconstruction + typedef typename MatrixType::Index Index; + Index diagSize = (std::min)(m.rows(), m.cols()); JacobiSVD<MatrixType, QRPreconditioner> svd(m, ComputeThinU | ComputeThinV); - VERIFY_IS_APPROX(m, svd.matrixU() * svd.singularValues().asDiagonal() * svd.matrixV().transpose()); + VERIFY_IS_APPROX(m, svd.matrixU().leftCols(diagSize) * svd.singularValues().asDiagonal() * svd.matrixV().leftCols(diagSize).adjoint()); } } |