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-rng.git
The following commit(s) were added to refs/heads/master by this push:
new e21c78d Pass RNG as first argument to UnitSphereSampler factory
constructor
e21c78d is described below
commit e21c78d99c2d3f46f176e18f344e9ea99791c98d
Author: Alex Herbert <[email protected]>
AuthorDate: Sat Jul 24 07:44:19 2021 +0100
Pass RNG as first argument to UnitSphereSampler factory constructor
This is consistent with the usage in the module.
---
.../sampling/shape/TetrahedronSamplerBenchmark.java | 2 +-
.../jmh/sampling/shape/TriangleSamplerBenchmark.java | 2 +-
.../commons/rng/sampling/UnitSphereSampler.java | 20 ++++++++++----------
.../commons/rng/sampling/UnitSphereSamplerTest.java | 8 ++++----
.../commons/rng/sampling/shape/BoxSamplerTest.java | 2 +-
.../commons/rng/sampling/shape/LineSamplerTest.java | 2 +-
6 files changed, 18 insertions(+), 18 deletions(-)
diff --git
a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TetrahedronSamplerBenchmark.java
b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TetrahedronSamplerBenchmark.java
index 68bc847..0340ed4 100644
---
a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TetrahedronSamplerBenchmark.java
+++
b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TetrahedronSamplerBenchmark.java
@@ -431,7 +431,7 @@ public class TetrahedronSamplerBenchmark {
public void setup() {
// This could be configured using @Param
final UniformRandomProvider rng =
RandomSource.XO_SHI_RO_256_PP.create();
- final UnitSphereSampler s = UnitSphereSampler.of(3, rng);
+ final UnitSphereSampler s = UnitSphereSampler.of(rng, 3);
final double[] a = s.sample();
final double[] b = s.sample();
final double[] c = s.sample();
diff --git
a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TriangleSamplerBenchmark.java
b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TriangleSamplerBenchmark.java
index 6558a65..2997c96 100644
---
a/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TriangleSamplerBenchmark.java
+++
b/commons-rng-examples/examples-jmh/src/main/java/org/apache/commons/rng/examples/jmh/sampling/shape/TriangleSamplerBenchmark.java
@@ -204,7 +204,7 @@ public class TriangleSamplerBenchmark {
// This could be configured using @Param
final UniformRandomProvider rng =
RandomSource.XO_RO_SHI_RO_128_PP.create();
final int dimension = getDimension();
- final UnitSphereSampler s = UnitSphereSampler.of(dimension, rng);
+ final UnitSphereSampler s = UnitSphereSampler.of(rng, dimension);
final double[] a = s.sample();
final double[] b = s.sample();
final double[] c = s.sample();
diff --git
a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/UnitSphereSampler.java
b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/UnitSphereSampler.java
index a0fa3d5..6cf081a 100644
---
a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/UnitSphereSampler.java
+++
b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/UnitSphereSampler.java
@@ -166,10 +166,10 @@ public class UnitSphereSampler implements
SharedStateObjectSampler<double[]> {
private final NormalizedGaussianSampler sampler;
/**
- * @param dimension Space dimension.
* @param rng Source of randomness.
+ * @param dimension Space dimension.
*/
- UnitSphereSamplerND(int dimension, UniformRandomProvider rng) {
+ UnitSphereSamplerND(UniformRandomProvider rng, int dimension) {
this.dimension = dimension;
sampler = ZigguratSampler.NormalizedGaussian.of(rng);
}
@@ -206,24 +206,24 @@ public class UnitSphereSampler implements
SharedStateObjectSampler<double[]> {
@Override
public UnitSphereSampler
withUniformRandomProvider(UniformRandomProvider rng) {
- return new UnitSphereSamplerND(dimension, rng);
+ return new UnitSphereSamplerND(rng, dimension);
}
}
/**
* This instance delegates sampling. Use the factory method
- * {@link #of(int, UniformRandomProvider)} to create an optimal sampler.
+ * {@link #of(UniformRandomProvider, int)} to create an optimal sampler.
*
* @param dimension Space dimension.
* @param rng Generator for the individual components of the vectors.
* A shallow copy will be stored in this instance.
* @throws IllegalArgumentException If {@code dimension <= 0}
- * @deprecated Use {@link #of(int, UniformRandomProvider)}.
+ * @deprecated Use {@link #of(UniformRandomProvider, int)}.
*/
@Deprecated
public UnitSphereSampler(int dimension,
UniformRandomProvider rng) {
- delegate = of(dimension, rng);
+ delegate = of(rng, dimension);
}
/**
@@ -265,16 +265,16 @@ public class UnitSphereSampler implements
SharedStateObjectSampler<double[]> {
/**
* Create a unit sphere sampler for the given dimension.
*
- * @param dimension Space dimension.
* @param rng Generator for the individual components of the vectors. A
shallow
* copy will be stored in the sampler.
+ * @param dimension Space dimension.
* @return the sampler
* @throws IllegalArgumentException If {@code dimension <= 0}
*
* @since 1.4
*/
- public static UnitSphereSampler of(int dimension,
- UniformRandomProvider rng) {
+ public static UnitSphereSampler of(UniformRandomProvider rng,
+ int dimension) {
if (dimension <= 0) {
throw new IllegalArgumentException("Dimension must be strictly
positive");
} else if (dimension == ONE_D) {
@@ -284,6 +284,6 @@ public class UnitSphereSampler implements
SharedStateObjectSampler<double[]> {
} else if (dimension == THREE_D) {
return new UnitSphereSampler3D(rng);
}
- return new UnitSphereSamplerND(dimension, rng);
+ return new UnitSphereSamplerND(rng, dimension);
}
}
diff --git
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/UnitSphereSamplerTest.java
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/UnitSphereSamplerTest.java
index 5ba33c4..2a304e8 100644
---
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/UnitSphereSamplerTest.java
+++
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/UnitSphereSamplerTest.java
@@ -45,7 +45,7 @@ public class UnitSphereSamplerTest {
*/
@Test(expected = IllegalArgumentException.class)
public void testInvalidDimensionThrowsWithFactoryConstructor() {
- UnitSphereSampler.of(0, null);
+ UnitSphereSampler.of(null, 0);
}
/**
@@ -385,7 +385,7 @@ public class UnitSphereSamplerTest {
}
};
- UnitSphereSampler.of(dimension, bad).sample();
+ UnitSphereSampler.of(bad, dimension).sample();
}
/**
@@ -430,7 +430,7 @@ public class UnitSphereSamplerTest {
}
};
- final double[] vector = UnitSphereSampler.of(dimension, bad).sample();
+ final double[] vector = UnitSphereSampler.of(bad, dimension).sample();
Assert.assertEquals(dimension, vector.length);
Assert.assertEquals(1.0, length(vector), 1e-10);
}
@@ -539,7 +539,7 @@ public class UnitSphereSamplerTest {
private static UnitSphereSampler createUnitSphereSampler(int dimension,
UniformRandomProvider rng,
boolean factoryConstructor) {
return factoryConstructor ?
- UnitSphereSampler.of(dimension, rng) : new
UnitSphereSampler(dimension, rng);
+ UnitSphereSampler.of(rng, dimension) : new
UnitSphereSampler(dimension, rng);
}
/**
diff --git
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/BoxSamplerTest.java
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/BoxSamplerTest.java
index 59ce874..c841d55 100644
---
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/BoxSamplerTest.java
+++
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/BoxSamplerTest.java
@@ -193,7 +193,7 @@ public class BoxSamplerTest {
private static void testDistributionND(int dimension) {
final UniformRandomProvider rng = RandomSource.JSF_64.create(0xdabfab);
- final UnitSphereSampler sphere = UnitSphereSampler.of(dimension, rng);
+ final UnitSphereSampler sphere = UnitSphereSampler.of(rng, dimension);
final double[] a = sphere.sample();
final double[] b = sphere.sample();
diff --git
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/LineSamplerTest.java
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/LineSamplerTest.java
index 32f9137..ef3e802 100644
---
a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/LineSamplerTest.java
+++
b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/shape/LineSamplerTest.java
@@ -217,7 +217,7 @@ public class LineSamplerTest {
a = new double[] {rng.nextDouble()};
b = new double[] {-rng.nextDouble()};
} else {
- final UnitSphereSampler sphere = UnitSphereSampler.of(dimension,
rng);
+ final UnitSphereSampler sphere = UnitSphereSampler.of(rng,
dimension);
a = sphere.sample();
b = sphere.sample();
}