You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2021/09/14 12:10:07 UTC

[commons-statistics] 02/08: Use a ZigguratSampler.Exponential

This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-statistics.git

commit d046cc897ec1862c91c8ecf084e3f31a8e6c211b
Author: aherbert <ah...@apache.org>
AuthorDate: Tue Sep 14 11:43:58 2021 +0100

    Use a ZigguratSampler.Exponential
---
 .../statistics/distribution/ExponentialDistribution.java   | 14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/ExponentialDistribution.java b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/ExponentialDistribution.java
index c37238d..295a03d 100644
--- a/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/ExponentialDistribution.java
+++ b/commons-statistics-distribution/src/main/java/org/apache/commons/statistics/distribution/ExponentialDistribution.java
@@ -17,7 +17,7 @@
 package org.apache.commons.statistics.distribution;
 
 import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.distribution.AhrensDieterExponentialSampler;
+import org.apache.commons.rng.sampling.distribution.ZigguratSampler;
 
 /**
  * Implementation of the <a href="http://en.wikipedia.org/wiki/Exponential_distribution">exponential distribution</a>.
@@ -162,18 +162,10 @@ public class ExponentialDistribution extends AbstractContinuousDistribution {
         return true;
     }
 
-    /**
-     * {@inheritDoc}
-     *
-     * <p>Sampling algorithm uses the
-     *  <a href="http://www.jesus.ox.ac.uk/~clifford/a5/chap1/node5.html">
-     *   inversion method</a> to generate exponentially distributed
-     *  random values from uniform deviates.
-     * </p>
-     */
+    /** {@inheritDoc} */
     @Override
     public ContinuousDistribution.Sampler createSampler(final UniformRandomProvider rng) {
         // Exponential distribution sampler.
-        return AhrensDieterExponentialSampler.of(rng, mean)::sample;
+        return ZigguratSampler.Exponential.of(rng, mean)::sample;
     }
 }