MATH-1335

Use new RNG API.


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

Branch: refs/heads/develop
Commit: 829a4e9ce35d43670a7061b957ac951901c31ad3
Parents: 63a9488
Author: Gilles <er...@apache.org>
Authored: Wed May 11 15:03:03 2016 +0200
Committer: Gilles <er...@apache.org>
Committed: Tue May 17 15:30:23 2016 +0200

----------------------------------------------------------------------
 .../random/UnitSphereRandomVectorGenerator.java | 18 +++++++++------
 .../geometry/enclosing/WelzlEncloser3DTest.java |  7 +++---
 .../euclidean/threed/FieldRotationDSTest.java   | 11 +++++-----
 .../euclidean/threed/FieldRotationDfpTest.java  | 11 +++++-----
 .../euclidean/threed/SphereGeneratorTest.java   |  8 +++----
 .../euclidean/twod/DiskGeneratorTest.java       |  6 +++--
 .../geometry/spherical/twod/CircleTest.java     | 10 +++++----
 .../twod/SphericalPolygonsSetTest.java          | 23 +++++++++++++-------
 .../UnitSphereRandomVectorGeneratorTest.java    |  7 +++---
 9 files changed, 59 insertions(+), 42 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/main/java/org/apache/commons/math4/random/UnitSphereRandomVectorGenerator.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/commons/math4/random/UnitSphereRandomVectorGenerator.java
 
b/src/main/java/org/apache/commons/math4/random/UnitSphereRandomVectorGenerator.java
index 34d66cb..13c42a8 100644
--- 
a/src/main/java/org/apache/commons/math4/random/UnitSphereRandomVectorGenerator.java
+++ 
b/src/main/java/org/apache/commons/math4/random/UnitSphereRandomVectorGenerator.java
@@ -17,6 +17,10 @@
 
 package org.apache.commons.math4.random;
 
+import org.apache.commons.math4.rng.RandomSource;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.distribution.RealDistribution;
+import org.apache.commons.math4.distribution.NormalDistribution;
 import org.apache.commons.math4.util.FastMath;
 
 
@@ -28,9 +32,9 @@ import org.apache.commons.math4.util.FastMath;
 public class UnitSphereRandomVectorGenerator
     implements RandomVectorGenerator {
     /**
-     * RNG used for generating the individual components of the vectors.
+     * Sampler used for generating the individual components of the vectors.
      */
-    private final RandomGenerator rand;
+    private final RealDistribution.Sampler rand;
     /**
      * Space dimension.
      */
@@ -38,12 +42,12 @@ public class UnitSphereRandomVectorGenerator
 
     /**
      * @param dimension Space dimension.
-     * @param rand RNG for the individual components of the vectors.
+     * @param rng RNG for the individual components of the vectors.
      */
     public UnitSphereRandomVectorGenerator(final int dimension,
-                                           final RandomGenerator rand) {
+                                           final UniformRandomProvider rng) {
         this.dimension = dimension;
-        this.rand = rand;
+        this.rand = new NormalDistribution().createSampler(rng);
     }
     /**
      * Create an object that will use a default RNG ({@link MersenneTwister}),
@@ -52,7 +56,7 @@ public class UnitSphereRandomVectorGenerator
      * @param dimension Space dimension.
      */
     public UnitSphereRandomVectorGenerator(final int dimension) {
-        this(dimension, new MersenneTwister());
+        this(dimension, RandomSource.create(RandomSource.MT_64));
     }
 
     /** {@inheritDoc} */
@@ -65,7 +69,7 @@ public class UnitSphereRandomVectorGenerator
         // normalizing to unit length.
         double normSq = 0;
         for (int i = 0; i < dimension; i++) {
-            final double comp = rand.nextGaussian();
+            final double comp = rand.sample();
             v[i] = comp;
             normSq += comp * comp;
         }

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/enclosing/WelzlEncloser3DTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/enclosing/WelzlEncloser3DTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/enclosing/WelzlEncloser3DTest.java
index aaa4c43..0860db2 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/enclosing/WelzlEncloser3DTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/enclosing/WelzlEncloser3DTest.java
@@ -26,9 +26,9 @@ import 
org.apache.commons.math4.geometry.enclosing.WelzlEncloser;
 import org.apache.commons.math4.geometry.euclidean.threed.Euclidean3D;
 import org.apache.commons.math4.geometry.euclidean.threed.SphereGenerator;
 import org.apache.commons.math4.geometry.euclidean.threed.Vector3D;
-import org.apache.commons.math4.random.RandomGenerator;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -104,7 +104,8 @@ public class WelzlEncloser3DTest {
 
     @Test
     public void testLargeSamples() throws IOException {
-        RandomGenerator random = new Well1024a(0x35ddecfc78131e1dl);
+        final UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                 
0x35ddecfc78131e1dl);
         final UnitSphereRandomVectorGenerator sr = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int k = 0; k < 50; ++k) {
 

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDSTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDSTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDSTest.java
index 5b352eb..2398d0d 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDSTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDSTest.java
@@ -30,7 +30,8 @@ import 
org.apache.commons.math4.geometry.euclidean.threed.Vector3D;
 import org.apache.commons.math4.linear.MatrixUtils;
 import org.apache.commons.math4.linear.RealMatrix;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.apache.commons.math4.util.FastMath;
 import org.apache.commons.math4.util.MathUtils;
 import org.junit.Assert;
@@ -959,8 +960,8 @@ public class FieldRotationDSTest {
 
     @Test
     public void testDoubleVectors() throws MathIllegalArgumentException {
-
-        Well1024a random = new Well1024a(0x180b41cfeeffaf67l);
+        UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                           
0x180b41cfeeffaf67l);
         UnitSphereRandomVectorGenerator g = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 10; ++i) {
             double[] unit = g.nextVector();
@@ -994,8 +995,8 @@ public class FieldRotationDSTest {
 
     @Test
     public void testDoubleRotations() throws MathIllegalArgumentException {
-
-        Well1024a random = new Well1024a(0x180b41cfeeffaf67l);
+        UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                           
0x180b41cfeeffaf67l);
         UnitSphereRandomVectorGenerator g = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 10; ++i) {
             double[] unit1 = g.nextVector();

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDfpTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDfpTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDfpTest.java
index e7df1b0..6dde9f3 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDfpTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/FieldRotationDfpTest.java
@@ -29,7 +29,8 @@ import 
org.apache.commons.math4.geometry.euclidean.threed.Rotation;
 import org.apache.commons.math4.geometry.euclidean.threed.RotationOrder;
 import org.apache.commons.math4.geometry.euclidean.threed.Vector3D;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.apache.commons.math4.util.FastMath;
 import org.apache.commons.math4.util.MathUtils;
 import org.junit.Assert;
@@ -800,8 +801,8 @@ public class FieldRotationDfpTest {
 
     @Test
     public void testDoubleVectors() throws MathIllegalArgumentException {
-
-        Well1024a random = new Well1024a(0x180b41cfeeffaf67l);
+        UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                           
0x180b41cfeeffaf67l);
         UnitSphereRandomVectorGenerator g = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 10; ++i) {
             double[] unit = g.nextVector();
@@ -835,9 +836,9 @@ public class FieldRotationDfpTest {
 
     @Test
     public void testDoubleRotations() throws MathIllegalArgumentException {
-
+        UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                           
0x180b41cfeeffaf67l);
         DfpField field = new DfpField(20);
-        Well1024a random = new Well1024a(0x180b41cfeeffaf67l);
         UnitSphereRandomVectorGenerator g = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 10; ++i) {
             double[] unit1 = g.nextVector();

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/SphereGeneratorTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/SphereGeneratorTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/SphereGeneratorTest.java
index 5fdc4f6..8fd36dc 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/SphereGeneratorTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/threed/SphereGeneratorTest.java
@@ -24,9 +24,9 @@ import 
org.apache.commons.math4.geometry.enclosing.EnclosingBall;
 import org.apache.commons.math4.geometry.euclidean.threed.Euclidean3D;
 import org.apache.commons.math4.geometry.euclidean.threed.SphereGenerator;
 import org.apache.commons.math4.geometry.euclidean.threed.Vector3D;
-import org.apache.commons.math4.random.RandomGenerator;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.apache.commons.math4.util.FastMath;
 import org.junit.Assert;
 import org.junit.Test;
@@ -137,7 +137,8 @@ public class SphereGeneratorTest {
 
     @Test
     public void testRandom() {
-        final RandomGenerator random = new Well1024a(0xd015982e9f31ee04l);
+        final UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                 
0xd015982e9f31ee04l);
         final UnitSphereRandomVectorGenerator sr = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 100; ++i) {
             double d = 25 * random.nextDouble();
@@ -151,7 +152,6 @@ public class SphereGeneratorTest {
             Assert.assertEquals(0.0, refCenter.distance(sphere.getCenter()), 
4e-7 * refRadius);
             Assert.assertEquals(refRadius, sphere.getRadius(), 1e-7 * 
refRadius);
         }
-
     }
 
     @Test

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/euclidean/twod/DiskGeneratorTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/twod/DiskGeneratorTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/twod/DiskGeneratorTest.java
index 5ca9295..94b1ffb 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/euclidean/twod/DiskGeneratorTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/euclidean/twod/DiskGeneratorTest.java
@@ -26,7 +26,8 @@ import 
org.apache.commons.math4.geometry.euclidean.twod.Euclidean2D;
 import org.apache.commons.math4.geometry.euclidean.twod.Vector2D;
 import org.apache.commons.math4.random.RandomGenerator;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.junit.Assert;
 import org.junit.Test;
 
@@ -102,7 +103,8 @@ public class DiskGeneratorTest {
 
     @Test
     public void testRandom() {
-        final RandomGenerator random = new Well1024a(0x12faa818373ffe90l);
+        final UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                 
0x12faa818373ffe90l);
         final UnitSphereRandomVectorGenerator sr = new 
UnitSphereRandomVectorGenerator(2, random);
         for (int i = 0; i < 500; ++i) {
             double d = 25 * random.nextDouble();

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/spherical/twod/CircleTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/spherical/twod/CircleTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/spherical/twod/CircleTest.java
index 352bdd9..29b1d57 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/spherical/twod/CircleTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/spherical/twod/CircleTest.java
@@ -30,7 +30,8 @@ import 
org.apache.commons.math4.geometry.spherical.twod.S2Point;
 import org.apache.commons.math4.geometry.spherical.twod.Sphere2D;
 import org.apache.commons.math4.random.RandomGenerator;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.UniformRandomProvider;
+import org.apache.commons.math4.rng.RandomSource;
 import org.apache.commons.math4.util.FastMath;
 import org.apache.commons.math4.util.MathUtils;
 import org.junit.Assert;
@@ -135,8 +136,8 @@ public class CircleTest {
 
     @Test
     public void testInsideArc() {
-        RandomGenerator random = new Well1024a(0xbfd34e92231bbcfel);
-        UnitSphereRandomVectorGenerator sphRandom = new 
UnitSphereRandomVectorGenerator(3, random);
+        UnitSphereRandomVectorGenerator sphRandom = new 
UnitSphereRandomVectorGenerator(3, RandomSource.create(RandomSource.WELL_1024_A,
+                                                                               
                                0xbfd34e92231bbcfel));
         for (int i = 0; i < 100; ++i) {
             Circle c1 = new Circle(new Vector3D(sphRandom.nextVector()), 
1.0e-10);
             Circle c2 = new Circle(new Vector3D(sphRandom.nextVector()), 
1.0e-10);
@@ -158,7 +159,8 @@ public class CircleTest {
 
     @Test
     public void testTransform() {
-        RandomGenerator random = new Well1024a(0x16992fc4294bf2f1l);
+        UniformRandomProvider random = 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                           
0x16992fc4294bf2f1l);
         UnitSphereRandomVectorGenerator sphRandom = new 
UnitSphereRandomVectorGenerator(3, random);
         for (int i = 0; i < 100; ++i) {
 

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/geometry/spherical/twod/SphericalPolygonsSetTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/geometry/spherical/twod/SphericalPolygonsSetTest.java
 
b/src/test/java/org/apache/commons/math4/geometry/spherical/twod/SphericalPolygonsSetTest.java
index e9fbe47..b8480ec 100644
--- 
a/src/test/java/org/apache/commons/math4/geometry/spherical/twod/SphericalPolygonsSetTest.java
+++ 
b/src/test/java/org/apache/commons/math4/geometry/spherical/twod/SphericalPolygonsSetTest.java
@@ -35,7 +35,7 @@ import 
org.apache.commons.math4.geometry.spherical.twod.SphericalPolygonsSet;
 import org.apache.commons.math4.geometry.spherical.twod.SubCircle;
 import org.apache.commons.math4.geometry.spherical.twod.Vertex;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
-import org.apache.commons.math4.random.Well1024a;
+import org.apache.commons.math4.rng.RandomSource;
 import org.apache.commons.math4.util.FastMath;
 import org.apache.commons.math4.util.MathUtils;
 import org.junit.Assert;
@@ -47,7 +47,8 @@ public class SphericalPolygonsSetTest {
     public void testFullSphere() {
         SphericalPolygonsSet full = new SphericalPolygonsSet(1.0e-10);
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0x852fd2a0ed8d2f6dl));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0x852fd2a0ed8d2f6dl));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             Assert.assertEquals(Location.INSIDE, full.checkPoint(new 
S2Point(v)));
@@ -64,7 +65,8 @@ public class SphericalPolygonsSetTest {
         SphericalPolygonsSet empty =
             (SphericalPolygonsSet) new 
RegionFactory<Sphere2D>().getComplement(new SphericalPolygonsSet(1.0e-10));
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0x76d9205d6167b6ddl));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0x76d9205d6167b6ddl));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             Assert.assertEquals(Location.OUTSIDE, empty.checkPoint(new 
S2Point(v)));
@@ -82,7 +84,8 @@ public class SphericalPolygonsSetTest {
         double sinTol = FastMath.sin(tol);
         SphericalPolygonsSet south = new 
SphericalPolygonsSet(Vector3D.MINUS_K, tol);
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0x6b9d4a6ad90d7b0bl));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0x6b9d4a6ad90d7b0bl));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             if (v.getZ() < -sinTol) {
@@ -117,7 +120,8 @@ public class SphericalPolygonsSetTest {
         SphericalPolygonsSet octant =
                 (SphericalPolygonsSet) 
factory.intersection(factory.intersection(plusX, plusY), plusZ);
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0x9c9802fde3cbcf25l));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0x9c9802fde3cbcf25l));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             if ((v.getX() > sinTol) && (v.getY() > sinTol) && (v.getZ() > 
sinTol)) {
@@ -181,7 +185,8 @@ public class SphericalPolygonsSetTest {
         double sinTol = FastMath.sin(tol);
         SphericalPolygonsSet octant = new SphericalPolygonsSet(tol, 
S2Point.PLUS_I, S2Point.PLUS_J, S2Point.PLUS_K);
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0xb8fc5acc91044308l));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0xb8fc5acc91044308l));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             if ((v.getX() > sinTol) && (v.getY() > sinTol) && (v.getZ() > 
sinTol)) {
@@ -206,7 +211,8 @@ public class SphericalPolygonsSetTest {
                 (SphericalPolygonsSet) factory.difference(plusZ, 
factory.intersection(plusX, plusY));
 
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0x9c9802fde3cbcf25l));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0x9c9802fde3cbcf25l));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             if (((v.getX() < -sinTol) || (v.getY() < -sinTol)) && (v.getZ() > 
sinTol)) {
@@ -339,7 +345,8 @@ public class SphericalPolygonsSetTest {
         SphericalPolygonsSet polygon = new SphericalPolygonsSet(boundary, tol);
 
         UnitSphereRandomVectorGenerator random =
-                new UnitSphereRandomVectorGenerator(3, new 
Well1024a(0xcc5ce49949e0d3ecl));
+                new UnitSphereRandomVectorGenerator(3, 
RandomSource.create(RandomSource.WELL_1024_A,
+                                                                           
0xcc5ce49949e0d3ecl));
         for (int i = 0; i < 1000; ++i) {
             Vector3D v = new Vector3D(random.nextVector());
             if ((v.getX() < -sinTol) && (v.getY() < -sinTol) && (v.getZ() < 
-sinTol)) {

http://git-wip-us.apache.org/repos/asf/commons-math/blob/829a4e9c/src/test/java/org/apache/commons/math4/random/UnitSphereRandomVectorGeneratorTest.java
----------------------------------------------------------------------
diff --git 
a/src/test/java/org/apache/commons/math4/random/UnitSphereRandomVectorGeneratorTest.java
 
b/src/test/java/org/apache/commons/math4/random/UnitSphereRandomVectorGeneratorTest.java
index 453de34..e5ab5bb 100644
--- 
a/src/test/java/org/apache/commons/math4/random/UnitSphereRandomVectorGeneratorTest.java
+++ 
b/src/test/java/org/apache/commons/math4/random/UnitSphereRandomVectorGeneratorTest.java
@@ -16,8 +16,8 @@
  */
 package org.apache.commons.math4.random;
 
-import org.apache.commons.math4.random.JDKRandomGenerator;
-import org.apache.commons.math4.random.RandomGenerator;
+import org.apache.commons.math4.rng.RandomSource;
+import org.apache.commons.math4.rng.UniformRandomProvider;
 import org.apache.commons.math4.random.UnitSphereRandomVectorGenerator;
 import org.apache.commons.math4.util.FastMath;
 import org.junit.Assert;
@@ -31,8 +31,7 @@ public class UnitSphereRandomVectorGeneratorTest {
     @Test
     public void test2DDistribution() {
 
-        RandomGenerator rg = new JDKRandomGenerator();
-        rg.setSeed(17399225432l);
+        UniformRandomProvider rg = 
RandomSource.create(RandomSource.XOR_SHIFT_1024_S, 17399225432L);
         UnitSphereRandomVectorGenerator generator = new 
UnitSphereRandomVectorGenerator(2, rg);
 
         // In 2D, angles with a given vector should be uniformly distributed

Reply via email to