diff options
author | Gael Guennebaud <g.gael@free.fr> | 2014-02-17 13:46:17 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2014-02-17 13:46:17 +0100 |
commit | 3573a107120c3762c1f9b6b17f62d817ee1a9ec0 (patch) | |
tree | c1393053ba13db8e98105fc209639520cccc2009 /test/sparse_basic.cpp | |
parent | bd6eca059d1026743188adecebd33ece12a23184 (diff) |
Fix support for row (resp. column) of a column-major (resp. row-major) sparse matrix
Diffstat (limited to 'test/sparse_basic.cpp')
-rw-r--r-- | test/sparse_basic.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/sparse_basic.cpp b/test/sparse_basic.cpp index d5ff9f80b..6c620f037 100644 --- a/test/sparse_basic.cpp +++ b/test/sparse_basic.cpp @@ -270,6 +270,14 @@ template<typename SparseMatrixType> void sparse_basic(const SparseMatrixType& re VERIFY_IS_APPROX(m1.innerVector(0).dot(refM2.row(0)), refM1.row(0).dot(refM2.row(0))); else VERIFY_IS_APPROX(m1.innerVector(0).dot(refM2.row(0)), refM1.col(0).dot(refM2.row(0))); + + DenseVector rv = DenseVector::Random(m1.cols()); + DenseVector cv = DenseVector::Random(m1.rows()); + Index r = internal::random<Index>(0,m1.rows()-2); + Index c = internal::random<Index>(0,m1.cols()-1); + VERIFY_IS_APPROX(( m1.template block<1,Dynamic>(r,0,1,m1.cols()).dot(rv)) , refM1.row(r).dot(rv)); + VERIFY_IS_APPROX(m1.row(r).dot(rv), refM1.row(r).dot(rv)); + VERIFY_IS_APPROX(m1.col(c).dot(cv), refM1.col(c).dot(cv)); VERIFY_IS_APPROX(m1.conjugate(), refM1.conjugate()); VERIFY_IS_APPROX(m1.real(), refM1.real()); |