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 2016/11/15 16:29:15 UTC
[2/7] commons-rng git commit: Moved classes/interfaces from
"o.a.c.rng.sampling" to "o.a.c.rng.sampling.distribution".
Moved classes/interfaces from "o.a.c.rng.sampling" to "o.a.c.rng.sampling.distribution".
Project: http://git-wip-us.apache.org/repos/asf/commons-rng/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-rng/commit/85b94d9f
Tree: http://git-wip-us.apache.org/repos/asf/commons-rng/tree/85b94d9f
Diff: http://git-wip-us.apache.org/repos/asf/commons-rng/diff/85b94d9f
Branch: refs/heads/RNG-30__sampling
Commit: 85b94d9f37e9ffaaa22599dae72bbf64e0c309f3
Parents: ff7ee3d
Author: Gilles <er...@apache.org>
Authored: Mon Nov 14 01:20:24 2016 +0100
Committer: Gilles <er...@apache.org>
Committed: Mon Nov 14 01:20:24 2016 +0100
----------------------------------------------------------------------
.../commons/rng/sampling/ContinuousSampler.java | 29 ---------
.../commons/rng/sampling/DiscreteSampler.java | 29 ---------
.../commons/rng/sampling/SamplerBase.java | 62 --------------------
.../AhrensDieterExponentialSampler.java | 2 -
.../AhrensDieterMarsagliaTsangGammaSampler.java | 2 -
.../distribution/BoxMullerGaussianSampler.java | 2 -
.../distribution/BoxMullerLogNormalSampler.java | 2 -
.../sampling/distribution/ChengBetaSampler.java | 2 -
.../distribution/ContinuousSampler.java | 29 +++++++++
.../distribution/ContinuousUniformSampler.java | 2 -
.../sampling/distribution/DiscreteSampler.java | 29 +++++++++
.../distribution/DiscreteUniformSampler.java | 2 -
.../InverseTransformContinuousSampler.java | 2 -
.../InverseTransformDiscreteSampler.java | 2 -
.../InverseTransformParetoSampler.java | 2 -
.../sampling/distribution/PoissonSampler.java | 3 -
.../RejectionInversionZipfSampler.java | 2 -
.../rng/sampling/distribution/SamplerBase.java | 62 ++++++++++++++++++++
.../ContinuousSamplerParametricTest.java | 2 -
.../distribution/ContinuousSamplerTestData.java | 2 -
.../distribution/ContinuousSamplersList.java | 1 -
.../DiscreteSamplerParametricTest.java | 2 -
.../distribution/DiscreteSamplerTestData.java | 2 -
.../distribution/DiscreteSamplersList.java | 1 -
24 files changed, 120 insertions(+), 155 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/ContinuousSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/ContinuousSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/ContinuousSampler.java
deleted file mode 100644
index 502c168..0000000
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/ContinuousSampler.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.rng.sampling;
-
-/**
- * Sampler that generates values of type {@code double}.
- */
-public interface ContinuousSampler {
- /**
- * Creates a sample.
- *
- * @return a sample.
- */
- double sample();
-}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/DiscreteSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/DiscreteSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/DiscreteSampler.java
deleted file mode 100644
index b79b2fb..0000000
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/DiscreteSampler.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.rng.sampling;
-
-/**
- * Sampler that generates values of type {@code int}.
- */
-public interface DiscreteSampler {
- /**
- * Creates a sample.
- *
- * @return a sample.
- */
- int sample();
-}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/SamplerBase.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/SamplerBase.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/SamplerBase.java
deleted file mode 100644
index 06cd396..0000000
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/SamplerBase.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.commons.rng.sampling;
-
-import org.apache.commons.rng.UniformRandomProvider;
-
-/**
- * Base class for a sampler.
- */
-public class SamplerBase {
- /** RNG. */
- private final UniformRandomProvider rng;
-
- /**
- * @param rng Generator of uniformly distributed random numbers.
- */
- protected SamplerBase(UniformRandomProvider rng) {
- this.rng = rng;
- }
-
- /**
- * @return a random value from a uniform distribution in the
- * interval {@code [0, 1)}.
- */
- protected double nextUniform() {
- return rng.nextDouble();
- }
-
- /**
- * @return a random {@code int} value.
- */
- protected int nextInt() {
- return rng.nextInt();
- }
-
- /**
- * @return a random {@code int} value in the interval {@code [0, max)}.
- */
- protected int nextInt(int max) {
- return rng.nextInt(max);
- }
-
- /** {@inheritDoc} */
- @Override
- public String toString() {
- return "[" + rng.toString() + "]";
- }
-}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterExponentialSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterExponentialSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterExponentialSampler.java
index e517397..e43dee2 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterExponentialSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterExponentialSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* Sampling from an exponential distribution.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterMarsagliaTsangGammaSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterMarsagliaTsangGammaSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterMarsagliaTsangGammaSampler.java
index 156e60d..526b94a 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterMarsagliaTsangGammaSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/AhrensDieterMarsagliaTsangGammaSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* <p>
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerGaussianSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerGaussianSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerGaussianSampler.java
index 5b69701..65cbd5a 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerGaussianSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerGaussianSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* <a href="https://en.wikipedia.org/wiki/Box%E2%80%93Muller_transform">
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerLogNormalSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerLogNormalSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerLogNormalSampler.java
index 5cb869f..63e9280 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerLogNormalSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/BoxMullerLogNormalSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* <a href="https://en.wikipedia.org/wiki/Box%E2%80%93Muller_transform">
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ChengBetaSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ChengBetaSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ChengBetaSampler.java
index 1252a0c..827752c 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ChengBetaSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ChengBetaSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* Utility class implementing Cheng's algorithms for beta distribution sampling.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousSampler.java
new file mode 100644
index 0000000..5664013
--- /dev/null
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousSampler.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.rng.sampling.distribution;
+
+/**
+ * Sampler that generates values of type {@code double}.
+ */
+public interface ContinuousSampler {
+ /**
+ * Creates a sample.
+ *
+ * @return a sample.
+ */
+ double sample();
+}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousUniformSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousUniformSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousUniformSampler.java
index 8441f81..a2287f7 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousUniformSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/ContinuousUniformSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* Sampling from a uniform distribution.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteSampler.java
new file mode 100644
index 0000000..0314066
--- /dev/null
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteSampler.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.rng.sampling.distribution;
+
+/**
+ * Sampler that generates values of type {@code int}.
+ */
+public interface DiscreteSampler {
+ /**
+ * Creates a sample.
+ *
+ * @return a sample.
+ */
+ int sample();
+}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteUniformSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteUniformSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteUniformSampler.java
index 10a421a..c620eea 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteUniformSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/DiscreteUniformSampler.java
@@ -18,8 +18,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.SamplerBase;
-import org.apache.commons.rng.sampling.DiscreteSampler;
/**
* Discrete uniform distribution sampler.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformContinuousSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformContinuousSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformContinuousSampler.java
index 8bea875..1d057bb 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformContinuousSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformContinuousSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-import org.apache.commons.rng.sampling.SamplerBase;
/**
* Distribution sampler that uses the
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformDiscreteSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformDiscreteSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformDiscreteSampler.java
index 82a819d..2dc0a20 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformDiscreteSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformDiscreteSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.SamplerBase;
-import org.apache.commons.rng.sampling.DiscreteSampler;
/**
* Distribution sampler that uses the
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformParetoSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformParetoSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformParetoSampler.java
index 82c68f1..4c4ae39 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformParetoSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/InverseTransformParetoSampler.java
@@ -17,8 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.SamplerBase;
-import org.apache.commons.rng.sampling.ContinuousSampler;
/**
* Sampling from a <a href="https://en.wikipedia.org/wiki/Pareto_distribution">Pareto distribution</a>.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/PoissonSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/PoissonSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/PoissonSampler.java
index 2576640..bd2161b 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/PoissonSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/PoissonSampler.java
@@ -17,9 +17,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.SamplerBase;
-import org.apache.commons.rng.sampling.DiscreteSampler;
-import org.apache.commons.rng.sampling.ContinuousSampler;
/**
* Sampler for the <a href="http://mathworld.wolfram.com/PoissonDistribution.html">Poisson distribution</a>.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/RejectionInversionZipfSampler.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/RejectionInversionZipfSampler.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/RejectionInversionZipfSampler.java
index 292c11d..c939028 100644
--- a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/RejectionInversionZipfSampler.java
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/RejectionInversionZipfSampler.java
@@ -18,8 +18,6 @@
package org.apache.commons.rng.sampling.distribution;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.SamplerBase;
-import org.apache.commons.rng.sampling.DiscreteSampler;
/**
* Implementation of the <a href="https://en.wikipedia.org/wiki/Zipf's_law">Zipf distribution</a>.
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/SamplerBase.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/SamplerBase.java b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/SamplerBase.java
new file mode 100644
index 0000000..6ff9a67
--- /dev/null
+++ b/commons-rng-sampling/src/main/java/org/apache/commons/rng/sampling/distribution/SamplerBase.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.rng.sampling.distribution;
+
+import org.apache.commons.rng.UniformRandomProvider;
+
+/**
+ * Base class for a sampler.
+ */
+public class SamplerBase {
+ /** RNG. */
+ private final UniformRandomProvider rng;
+
+ /**
+ * @param rng Generator of uniformly distributed random numbers.
+ */
+ protected SamplerBase(UniformRandomProvider rng) {
+ this.rng = rng;
+ }
+
+ /**
+ * @return a random value from a uniform distribution in the
+ * interval {@code [0, 1)}.
+ */
+ protected double nextUniform() {
+ return rng.nextDouble();
+ }
+
+ /**
+ * @return a random {@code int} value.
+ */
+ protected int nextInt() {
+ return rng.nextInt();
+ }
+
+ /**
+ * @return a random {@code int} value in the interval {@code [0, max)}.
+ */
+ protected int nextInt(int max) {
+ return rng.nextInt(max);
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public String toString() {
+ return "[" + rng.toString() + "]";
+ }
+}
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerParametricTest.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerParametricTest.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerParametricTest.java
index b371cdf..2cc18ce 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerParametricTest.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerParametricTest.java
@@ -26,8 +26,6 @@ import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-
/**
* Tests for random deviates generators.
*/
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerTestData.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerTestData.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerTestData.java
index a3dd651..d4d15d9 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerTestData.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplerTestData.java
@@ -18,8 +18,6 @@ package org.apache.commons.rng.sampling.distribution;
import java.util.Arrays;
-import org.apache.commons.rng.sampling.ContinuousSampler;
-
/**
* Data store for {@link ContinuousSamplerParametricTest}.
*/
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplersList.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplersList.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplersList.java
index 5cb322c..306ef0c 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplersList.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/ContinuousSamplersList.java
@@ -22,7 +22,6 @@ import java.util.ArrayList;
import java.util.Collections;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.ContinuousSampler;
import org.apache.commons.rng.simple.RandomSource;
/**
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerParametricTest.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerParametricTest.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerParametricTest.java
index 93dd71b..6f39d06 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerParametricTest.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerParametricTest.java
@@ -28,8 +28,6 @@ import org.junit.runners.Parameterized.Parameters;
import org.apache.commons.math3.distribution.ChiSquaredDistribution;
-import org.apache.commons.rng.sampling.DiscreteSampler;
-
/**
* Tests for random deviates generators.
*/
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerTestData.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerTestData.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerTestData.java
index 1857afc..a34104c 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerTestData.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplerTestData.java
@@ -18,8 +18,6 @@ package org.apache.commons.rng.sampling.distribution;
import java.util.Arrays;
-import org.apache.commons.rng.sampling.DiscreteSampler;
-
/**
* Data store for {@link DiscreteSamplerParametricTest}.
*/
http://git-wip-us.apache.org/repos/asf/commons-rng/blob/85b94d9f/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplersList.java
----------------------------------------------------------------------
diff --git a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplersList.java b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplersList.java
index 10e4588..e1fa88f 100644
--- a/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplersList.java
+++ b/commons-rng-sampling/src/test/java/org/apache/commons/rng/sampling/distribution/DiscreteSamplersList.java
@@ -24,7 +24,6 @@ import java.util.Collections;
import org.apache.commons.math3.util.MathArrays;
import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.rng.sampling.DiscreteSampler;
import org.apache.commons.rng.simple.RandomSource;
/**