From 5afe77a11ecbc06d8222f8bfb67255ed0aff740d Mon Sep 17 00:00:00 2001 From: Joachim Wuttke <j.wuttke@fz-juelich.de> Date: Mon, 16 Oct 2023 18:14:28 +0200 Subject: [PATCH] + Numeric::ignoreDenormalized --- Base/Math/Numeric.cpp | 5 +++++ Base/Math/Numeric.h | 1 + 2 files changed, 6 insertions(+) diff --git a/Base/Math/Numeric.cpp b/Base/Math/Numeric.cpp index 3f1f4eb829f..0e514680d7a 100644 --- a/Base/Math/Numeric.cpp +++ b/Base/Math/Numeric.cpp @@ -46,3 +46,8 @@ bool Numeric::almostEqual(const R3& a, const R3& b, int ulp) return almostEqual(a.x(), b.x(), ulp) && almostEqual(a.y(), b.y(), ulp) && almostEqual(a.z(), b.z(), ulp); } + +double Numeric::ignoreDenormalized(double value) +{ + return (std::fpclassify(value) == FP_SUBNORMAL) ? 0.0 : value; +} diff --git a/Base/Math/Numeric.h b/Base/Math/Numeric.h index 9659cc18db7..f49c7240d86 100644 --- a/Base/Math/Numeric.h +++ b/Base/Math/Numeric.h @@ -32,6 +32,7 @@ double relativeDifference(double a, double b); bool almostEqual(double a, double b, int ulp); bool almostEqual(const R3& a, const R3& b, int ulp); +double ignoreDenormalized(double value); } // namespace Numeric -- GitLab