diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-10-26 14:16:50 -0400 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2009-10-26 14:16:50 -0400 |
commit | 44cdbaba4d084b31854ed5bec58f2887f0479b81 (patch) | |
tree | 36d0a427be6ee4dcf9c61eb3a6345b703e043f40 /test/inverse.cpp | |
parent | 07d1bcffda9436fe8ce8c56091d68841b8c3be59 (diff) |
* make inverse() do a ReturnByValue
* add computeInverseWithCheck
* doc improvements
* update test
Diffstat (limited to 'test/inverse.cpp')
-rw-r--r-- | test/inverse.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/test/inverse.cpp b/test/inverse.cpp index b8170a738..269678fd4 100644 --- a/test/inverse.cpp +++ b/test/inverse.cpp @@ -68,17 +68,26 @@ template<typename MatrixType> void inverse(const MatrixType& m) //First: an invertible matrix bool invertible; RealScalar det; + + m2.setZero(); m1.computeInverseAndDetWithCheck(m2, det, invertible); VERIFY(invertible); VERIFY_IS_APPROX(identity, m1*m2); VERIFY_IS_APPROX(det, m1.determinant()); + m2.setZero(); + m1.computeInverseWithCheck(m2, invertible); + VERIFY(invertible); + VERIFY_IS_APPROX(identity, m1*m2); + //Second: a rank one matrix (not invertible, except for 1x1 matrices) VectorType v3 = VectorType::Random(rows); MatrixType m3 = v3*v3.transpose(), m4(rows,cols); m3.computeInverseAndDetWithCheck(m4, det, invertible); VERIFY( rows==1 ? invertible : !invertible ); VERIFY_IS_APPROX(det, m3.determinant()); + m3.computeInverseWithCheck(m4, invertible); + VERIFY( rows==1 ? invertible : !invertible ); #endif } |