From 88e051019b90e539474596d8c4f284b3b57e17cd Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Tue, 12 Jun 2012 13:12:47 +0200 Subject: extend nomalloc unit test to test the solve calls --- test/nomalloc.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'test/nomalloc.cpp') diff --git a/test/nomalloc.cpp b/test/nomalloc.cpp index 273b1f7ad..1d1f0c5ff 100644 --- a/test/nomalloc.cpp +++ b/test/nomalloc.cpp @@ -129,13 +129,20 @@ void ctms_decompositions() 0, maxSize, maxSize> ComplexMatrix; - const Matrix A(Matrix::Random(size, size)); + const Matrix A(Matrix::Random(size, size)), B(Matrix::Random(size, size)); + Matrix X(size,size); const ComplexMatrix complexA(ComplexMatrix::Random(size, size)); const Matrix saA = A.adjoint() * A; + const Vector b(Vector::Random(size)); + Vector x(size); // Cholesky module Eigen::LLT LLT; LLT.compute(A); + X = LLT.solve(B); + x = LLT.solve(b); Eigen::LDLT LDLT; LDLT.compute(A); + X = LDLT.solve(B); + x = LDLT.solve(b); // Eigenvalues module Eigen::HessenbergDecomposition hessDecomp; hessDecomp.compute(complexA); @@ -147,12 +154,22 @@ void ctms_decompositions() // LU module Eigen::PartialPivLU ppLU; ppLU.compute(A); + X = ppLU.solve(B); + x = ppLU.solve(b); Eigen::FullPivLU fpLU; fpLU.compute(A); + X = fpLU.solve(B); + x = fpLU.solve(b); // QR module Eigen::HouseholderQR hQR; hQR.compute(A); + X = hQR.solve(B); + x = hQR.solve(b); Eigen::ColPivHouseholderQR cpQR; cpQR.compute(A); + X = cpQR.solve(B); + x = cpQR.solve(b); Eigen::FullPivHouseholderQR fpQR; fpQR.compute(A); + X = fpQR.solve(B); + x = fpQR.solve(b); // SVD module Eigen::JacobiSVD jSVD; jSVD.compute(A, ComputeFullU | ComputeFullV); -- cgit v1.2.3