commons-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From er...@apache.org
Subject [04/10] commons-rng git commit: RNG-37: fixes 3
Date Wed, 11 Oct 2017 08:45:31 GMT
RNG-37: fixes 3


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

Branch: refs/heads/master
Commit: a214ae3cb438510154f3b138b7e7fc284ce7d898
Parents: 8f06e14
Author: Olga Kirillova <olga@revunit.com>
Authored: Tue Oct 10 13:11:38 2017 -0700
Committer: Olga Kirillova <olga@revunit.com>
Committed: Tue Oct 10 13:11:38 2017 -0700

----------------------------------------------------------------------
 .../sampling/distribution/ZigguratGaussianSampler.java   | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-rng/blob/a214ae3c/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ZigguratGaussianSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ZigguratGaussianSampler.java
b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ZigguratGaussianSampler.java
index 475ca64..2d0f1ec 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ZigguratGaussianSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ZigguratGaussianSampler.java
@@ -44,8 +44,13 @@ public class ZigguratGaussianSampler
      * the rightmost 8 bits of j. If j < k_i return x = j * w_i.
      */
 
+    /* @param KN - an auxiliary table of integers, k_i = 2^32*(x_{i-1}/x_i) */
     private static final int[] KN = new int[128];
+    /* @param WN - table of doubles, w_i = x_i/2^32 */
     private static final double[] WN = new double[128];
+    /* @param FN - the function values table (normalized gaussian in this implementation)
+     * f_i(x_i) = exp(-x_i^2/2)
+     */
     private static final double[] FN = new double[128];
 
     /**
@@ -106,9 +111,11 @@ public class ZigguratGaussianSampler
         return (j < KN[i]) ? j * WN[i] : nfix(j,i);
     }
 
-    /** get the value from the tail of the distribution
+    /**
+     * Get the value from the tail of the distribution
      * @param hz - start random integer
      * @param iz - corresponding to hz cell's number
+     * @return the requested random value
      */
     private double nfix(int hz, int iz) {
         /* The start of the right tail */
@@ -138,7 +145,7 @@ public class ZigguratGaussianSampler
             hz = nextInt();
             iz = hz & 127;
             if (Math.abs(hz) < KN[iz]) {
-                return (hz * WN[iz]);
+                return hz * WN[iz];
             }
         }
     }


Mime
View raw message