You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2017/04/07 16:26:42 UTC

[2/4] commons-rng git commit: RNG-36: Performance improvement.

RNG-36: Performance improvement.


Project: http://git-wip-us.apache.org/repos/asf/commons-rng/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-rng/commit/e591a656
Tree: http://git-wip-us.apache.org/repos/asf/commons-rng/tree/e591a656
Diff: http://git-wip-us.apache.org/repos/asf/commons-rng/diff/e591a656

Branch: refs/heads/master
Commit: e591a65643c1383fd72033df6725de3ae7e2b27c
Parents: 4ef78f5
Author: Gilles <er...@apache.org>
Authored: Fri Apr 7 16:03:50 2017 +0200
Committer: Gilles <er...@apache.org>
Committed: Fri Apr 7 16:03:50 2017 +0200

----------------------------------------------------------------------
 .../sampling/distribution/MarsagliaNormalizedGaussianSampler.java | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-rng/blob/e591a656/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.java
index 6dc9f2a..6c86452 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/MarsagliaNormalizedGaussianSampler.java
@@ -55,8 +55,7 @@ public class MarsagliaNormalizedGaussianSampler
                 if (r2 < 1) {
                     // Pair (x, y) is within unit circle.
 
-                    final double r = Math.sqrt(r2);
-                    final double alpha = 2 * Math.sqrt(-Math.log(r)) / r;
+                    final double alpha = Math.sqrt(-2 * Math.log(r2) / r2);
 
                     // Return the first element of the generated pair.
                     random = alpha * x;