diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2011-01-25 21:22:04 -0500 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2011-01-25 21:22:04 -0500 |
commit | 1d98cc5e5da88254c784c4f02517bf5a47f007bc (patch) | |
tree | de9bc9696892cf0bfa35a820b19b34524f4c954d /test | |
parent | 4fbadfd230af9859c5e82c09a4974396af45473f (diff) |
eigen2 support: implement part<SelfAdjoint>, mimic eigen2 behavior braindeadness-for-braindeadness
Diffstat (limited to 'test')
-rw-r--r-- | test/eigen2/eigen2_triangular.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/eigen2/eigen2_triangular.cpp b/test/eigen2/eigen2_triangular.cpp index c81fad0da..43b42e3a5 100644 --- a/test/eigen2/eigen2_triangular.cpp +++ b/test/eigen2/eigen2_triangular.cpp @@ -124,8 +124,37 @@ template<typename MatrixType> void triangular(const MatrixType& m) } +void selfadjoint() +{ + Matrix2i m; + m << 1, 2, + 3, 4; + + Matrix2i m1 = Matrix2i::Zero(); + m1.part<SelfAdjoint>() = m; + Matrix2i ref1; + ref1 << 1, 2, + 2, 4; + VERIFY(m1 == ref1); + + Matrix2i m2 = Matrix2i::Zero(); + m2.part<SelfAdjoint>() = m.part<UpperTriangular>(); + Matrix2i ref2; + ref2 << 1, 2, + 2, 4; + VERIFY(m2 == ref2); + + Matrix2i m3 = Matrix2i::Zero(); + m3.part<SelfAdjoint>() = m.part<LowerTriangular>(); + Matrix2i ref3; + ref3 << 1, 0, + 0, 4; + VERIFY(m3 == ref3); +} + void test_eigen2_triangular() { + CALL_SUBTEST_8( selfadjoint() ); for(int i = 0; i < g_repeat ; i++) { CALL_SUBTEST_1( triangular(Matrix<float, 1, 1>()) ); CALL_SUBTEST_2( triangular(Matrix<float, 2, 2>()) ); |