From a0c1979ff0bd200443f844d6d63277324253b683 Mon Sep 17 00:00:00 2001 From: Manor Askenazi Date: Thu, 19 Dec 2019 08:58:41 -0500 Subject: [PATCH] Ensure Hypergeometric.CDF <= 1.0 This is, to be fair, a kludge -- it would be more efficient to ensure that such a situation can never arise in the first place. --- src/Numerics/Distributions/Hypergeometric.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Numerics/Distributions/Hypergeometric.cs b/src/Numerics/Distributions/Hypergeometric.cs index 898e6925..752e059a 100644 --- a/src/Numerics/Distributions/Hypergeometric.cs +++ b/src/Numerics/Distributions/Hypergeometric.cs @@ -315,7 +315,7 @@ namespace MathNet.Numerics.Distributions sum += Math.Exp(SpecialFunctions.BinomialLn(success, i) + SpecialFunctions.BinomialLn(population - success, draws - i) - denominatorLn); } - return sum; + return Math.Min(sum, 1.0); } ///