From 53026d29d41e81065b28631445e8eb5c4044c187 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Tue, 31 Jan 2017 14:22:42 +0100 Subject: bug #478: fix regression in the eigen decomposition of zero matrices. --- test/eigensolver_selfadjoint.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/eigensolver_selfadjoint.cpp') diff --git a/test/eigensolver_selfadjoint.cpp b/test/eigensolver_selfadjoint.cpp index 4ed126116..39ad4130e 100644 --- a/test/eigensolver_selfadjoint.cpp +++ b/test/eigensolver_selfadjoint.cpp @@ -180,6 +180,15 @@ template void selfadjointeigensolver(const MatrixType& m) SelfAdjointEigenSolver eig(a.adjoint() * a); eig.compute(a.adjoint() * a); } + + // regression test for bug 478 + { + a.setZero(); + SelfAdjointEigenSolver ei3(a); + VERIFY_IS_EQUAL(ei3.info(), Success); + VERIFY_IS_MUCH_SMALLER_THAN(ei3.eigenvalues().norm(),RealScalar(1)); + VERIFY((ei3.eigenvectors().transpose()*ei3.eigenvectors().transpose()).eval().isIdentity()); + } } template -- cgit v1.2.3