From e1c0ad83359e38fcdaf6670ee47da9314dab6ccc Mon Sep 17 00:00:00 2001 From: Chris Beall Date: Wed, 14 May 2014 14:08:29 -0400 Subject: [PATCH] Changed 1e-20 to 1e-16. 1e-20 was cutting it too close on 32-bit system, resulting in divide by zero later --- gtsam/geometry/Unit3.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gtsam/geometry/Unit3.cpp b/gtsam/geometry/Unit3.cpp index 88359e0f8..db4c8da83 100644 --- a/gtsam/geometry/Unit3.cpp +++ b/gtsam/geometry/Unit3.cpp @@ -151,9 +151,9 @@ Vector Unit3::localCoordinates(const Unit3& y) const { double dot = p.dot(q); // Check for special cases - if (std::abs(dot - 1.0) < 1e-20) + if (std::abs(dot - 1.0) < 1e-16) return (Vector(2) << 0, 0); - else if (std::abs(dot + 1.0) < 1e-20) + else if (std::abs(dot + 1.0) < 1e-16) return (Vector(2) << M_PI, 0); else { // no special case