You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by lu...@apache.org on 2016/01/17 11:42:11 UTC

[22/22] [math] Reverting commit 87497c72460c9c58f829a372d741b386fc2ac8f8 as per Gilles request.

Reverting commit 87497c72460c9c58f829a372d741b386fc2ac8f8 as per Gilles request.

The work on revamping the random packages is perfoemd in the random-ravamp branch.


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

Branch: refs/heads/master
Commit: 17bc99fdff3e8863be845211e2af050e8c9f98f7
Parents: aaf4027
Author: Luc Maisonobe <lu...@apache.org>
Authored: Sun Jan 17 11:35:25 2016 +0100
Committer: Luc Maisonobe <lu...@apache.org>
Committed: Sun Jan 17 11:40:27 2016 +0100

----------------------------------------------------------------------
 .../commons/math4/random/MersenneTwister.java       | 16 ++++++++--------
 .../commons/math4/random/MersenneTwisterTest.java   |  2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/17bc99fd/src/main/java/org/apache/commons/math4/random/MersenneTwister.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/random/MersenneTwister.java b/src/main/java/org/apache/commons/math4/random/MersenneTwister.java
index d8caaa7..c84ff8c 100644
--- a/src/main/java/org/apache/commons/math4/random/MersenneTwister.java
+++ b/src/main/java/org/apache/commons/math4/random/MersenneTwister.java
@@ -83,12 +83,10 @@ import org.apache.commons.math4.util.FastMath;
  * @since 2.0
 
  */
-public class MersenneTwister
-    extends BaseRandomGenerator
-    implements Serializable {
+public class MersenneTwister extends BitsStreamGenerator implements Serializable {
 
     /** Serializable version identifier. */
-    private static final long serialVersionUID = 20151228L;
+    private static final long serialVersionUID = 8661194735290153518L;
 
     /** Size of the bytes pool. */
     private static final int   N     = 624;
@@ -226,13 +224,13 @@ public class MersenneTwister
      * <p>This method is the core generation algorithm. It is used by all the
      * public generation methods for the various primitive types {@link
      * #nextBoolean()}, {@link #nextBytes(byte[])}, {@link #nextDouble()},
-     * {@link #nextFloat()}, {@link #nextGaussian()} and {@link #nextLong()}.
-     * </p>
+     * {@link #nextFloat()}, {@link #nextGaussian()}, {@link #nextInt()},
+     * {@link #next(int)} and {@link #nextLong()}.</p>
      * @param bits number of random bits to produce
      * @return random bits generated
      */
     @Override
-    public int nextInt() {
+    protected int next(int bits) {
 
         int y;
 
@@ -264,6 +262,8 @@ public class MersenneTwister
         y ^= (y <<  15) & 0xefc60000;
         y ^=  y >>> 18;
 
-        return y;
+        return y >>> (32 - bits);
+
     }
+
 }

http://git-wip-us.apache.org/repos/asf/commons-math/blob/17bc99fd/src/test/java/org/apache/commons/math4/random/MersenneTwisterTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/random/MersenneTwisterTest.java b/src/test/java/org/apache/commons/math4/random/MersenneTwisterTest.java
index 7c55d6a..1446003 100644
--- a/src/test/java/org/apache/commons/math4/random/MersenneTwisterTest.java
+++ b/src/test/java/org/apache/commons/math4/random/MersenneTwisterTest.java
@@ -21,7 +21,7 @@ import org.apache.commons.math4.random.RandomGenerator;
 import org.junit.Assert;
 import org.junit.Test;
 
-public class MersenneTwisterTest extends BaseRandomGeneratorTest {
+public class MersenneTwisterTest extends RandomGeneratorAbstractTest {
 
     @Override
     protected RandomGenerator makeGenerator() {