diff options
author | Gael Guennebaud <g.gael@free.fr> | 2015-01-24 10:32:49 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2015-01-24 10:32:49 +0100 |
commit | e1f1091fde660581d64b54ff1019bc494dbbca89 (patch) | |
tree | 3dd2646fb88b902c954878a2d25ece56da428865 /test/diagonalmatrices.cpp | |
parent | b9d314ae19b1c857adfe42b7eaecf2695428f0ed (diff) |
Add support for dense ?= diagonal
Diffstat (limited to 'test/diagonalmatrices.cpp')
-rw-r--r-- | test/diagonalmatrices.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/test/diagonalmatrices.cpp b/test/diagonalmatrices.cpp index 149f1db2f..0227ba577 100644 --- a/test/diagonalmatrices.cpp +++ b/test/diagonalmatrices.cpp @@ -84,6 +84,13 @@ template<typename MatrixType> void diagonalmatrices(const MatrixType& m) VERIFY_IS_APPROX(m1 * (rdm1 * s1), (m1 * rdm1) * s1); VERIFY_IS_APPROX(m1 * (s1 * rdm1), (m1 * rdm1) * s1); + + // Diagonal to dense + sq_m1.setRandom(); + sq_m2 = sq_m1; + VERIFY_IS_APPROX( (sq_m1 += (s1*v1).asDiagonal()), sq_m2 += (s1*v1).asDiagonal().toDenseMatrix() ); + VERIFY_IS_APPROX( (sq_m1 -= (s1*v1).asDiagonal()), sq_m2 -= (s1*v1).asDiagonal().toDenseMatrix() ); + VERIFY_IS_APPROX( (sq_m1 = (s1*v1).asDiagonal()), (s1*v1).asDiagonal().toDenseMatrix() ); } void test_diagonalmatrices() |