From 41e942d3fb3a3bf26a7fad169adaf3968daa7d46 Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Thu, 15 Oct 2009 16:09:17 -0400 Subject: [PATCH] don't try to finish early --- Eigen/src/LU/LU.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Eigen/src/LU/LU.h b/Eigen/src/LU/LU.h index fb81713a3..6eeb4fae8 100644 --- a/Eigen/src/LU/LU.h +++ b/Eigen/src/LU/LU.h @@ -361,8 +361,8 @@ LU& LU::compute(const MatrixType& matrix) col_of_biggest_in_corner += k; if(k==0) biggest = biggest_in_corner; - // if the corner is negligible, then we have less than full rank, and we can finish early - if(ei_isMuchSmallerThan(biggest_in_corner, biggest, m_precision)) + // if the corner is exactly zero, terminate to avoid generating NaN values + if(biggest_in_corner == RealScalar(0)) { m_rank = k; for(int i = k; i < size; i++)