From e64460d5d003448e090bac23b9ddc93e7af2ca5a Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 3 Jun 2010 22:22:14 +0200 Subject: LDLT: make it honors the Lower/Upper directive and make it works inplace --- test/cholesky.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'test/cholesky.cpp') diff --git a/test/cholesky.cpp b/test/cholesky.cpp index 0ae26c7d5..d403af7ba 100644 --- a/test/cholesky.cpp +++ b/test/cholesky.cpp @@ -118,11 +118,18 @@ template void cholesky(const MatrixType& m) } { - LDLT ldlt(symm); - VERIFY_IS_APPROX(symm, ldlt.reconstructedMatrix()); - vecX = ldlt.solve(vecB); + LDLT ldltlo(symm); + VERIFY_IS_APPROX(symm, ldltlo.reconstructedMatrix()); + vecX = ldltlo.solve(vecB); VERIFY_IS_APPROX(symm * vecX, vecB); - matX = ldlt.solve(matB); + matX = ldltlo.solve(matB); + VERIFY_IS_APPROX(symm * matX, matB); + + LDLT ldltup(symm); + VERIFY_IS_APPROX(symm, ldltup.reconstructedMatrix()); + vecX = ldltup.solve(vecB); + VERIFY_IS_APPROX(symm * vecX, vecB); + matX = ldltup.solve(matB); VERIFY_IS_APPROX(symm * matX, matB); } -- cgit v1.2.3