Class ChengBetaSampler
- java.lang.Object
-
- org.apache.commons.rng.sampling.distribution.SamplerBase
-
- org.apache.commons.rng.sampling.distribution.ChengBetaSampler
-
- All Implemented Interfaces:
ContinuousSampler
public class ChengBetaSampler extends SamplerBase implements ContinuousSampler
Utility class implementing Cheng's algorithms for beta distribution sampling.R. C. H. Cheng, "Generating beta variates with nonintegral shape parameters", Communications of the ACM, 21, 317-322, 1978.
Sampling uses
UniformRandomProvider.nextDouble().- Since:
- 1.0
-
-
Constructor Summary
Constructors Constructor Description ChengBetaSampler(UniformRandomProvider rng, double alpha, double beta)Creates a sampler instance.
-
Method Summary
-
Methods inherited from class org.apache.commons.rng.sampling.distribution.SamplerBase
nextDouble, nextInt, nextInt, nextLong
-
-
-
-
Constructor Detail
-
ChengBetaSampler
public ChengBetaSampler(UniformRandomProvider rng, double alpha, double beta)
Creates a sampler instance.- Parameters:
rng- Generator of uniformly distributed random numbers.alpha- Distribution first shape parameter.beta- Distribution second shape parameter.- Throws:
java.lang.IllegalArgumentException- ifalpha <= 0orbeta <= 0
-
-
Method Detail
-
sample
public double sample()
Creates a sample.- Specified by:
samplein interfaceContinuousSampler- Returns:
- a sample.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classSamplerBase
-
-