diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-11-18 12:41:24 -0500 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-11-18 12:41:24 -0500 |
commit | 8860203e6a29d7cc5f19097ca57aa458ee449777 (patch) | |
tree | aaec08d968aa74b9e8dbaf8bf0cc227501cd92bc /test/qr_colpivoting.cpp | |
parent | 94c706d04fe74cfc6917f6ac057e0c3ca98796c7 (diff) |
fix stuff after the PermutationMatrix changes.
I still have JacobiSVD errors when cols>rows
Diffstat (limited to 'test/qr_colpivoting.cpp')
-rw-r--r-- | test/qr_colpivoting.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/test/qr_colpivoting.cpp b/test/qr_colpivoting.cpp index 763c12067..bdf273926 100644 --- a/test/qr_colpivoting.cpp +++ b/test/qr_colpivoting.cpp @@ -28,7 +28,8 @@ template<typename MatrixType> void qr() { - int rows = ei_random<int>(20,200), cols = ei_random<int>(20,200), cols2 = ei_random<int>(20,200); +// int rows = ei_random<int>(20,200), cols = ei_random<int>(20,200), cols2 = ei_random<int>(20,200); + int rows=3, cols=3, cols2=3; int rank = ei_random<int>(1, std::min(rows, cols)-1); typedef typename MatrixType::Scalar Scalar; @@ -55,7 +56,9 @@ template<typename MatrixType> void qr() MatrixType c = MatrixType::Zero(rows,cols); - for(int i = 0; i < cols; ++i) c.col(qr.colsPermutation().coeff(i)) = b.col(i); + for(int i = 0; i < cols; ++i) c.col(qr.colsPermutation().indices().coeff(i)) = b.col(i); + std::cout << "m1:\n" << m1 << std::endl; + std::cout << "c:\n" << c << std::endl; VERIFY_IS_APPROX(m1, c); MatrixType m2 = MatrixType::Random(cols,cols2); @@ -87,7 +90,7 @@ template<typename MatrixType, int Cols2> void qr_fixedsize() Matrix<Scalar,Rows,Cols> c = MatrixType::Zero(Rows,Cols); - for(int i = 0; i < Cols; ++i) c.col(qr.colsPermutation().coeff(i)) = b.col(i); + for(int i = 0; i < Cols; ++i) c.col(qr.colsPermutation().indices().coeff(i)) = b.col(i); VERIFY_IS_APPROX(m1, c); Matrix<Scalar,Cols,Cols2> m2 = Matrix<Scalar,Cols,Cols2>::Random(Cols,Cols2); |