From ef817306252f33e844eb789ef850778de84f47cb Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Tue, 12 May 2015 18:38:43 +0200 Subject: [PATCH] Ignore denormal numbers in selfadjoint eigensolver. --- Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h b/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h index 8240b9465..fff331d33 100644 --- a/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +++ b/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h @@ -474,11 +474,14 @@ ComputationInfo computeFromTridiagonal_impl(DiagType& diag, SubDiagType& subdiag Index end = n-1; Index start = 0; Index iter = 0; // total number of iterations - + + typedef typename DiagType::RealScalar RealScalar; + const RealScalar considerAsZero = (std::numeric_limits::min)(); + while (end>0) { for (Index i = start; i