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 Details
-
ChengBetaSampler
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 Details
-
sample
public double sample()Creates a sample.- Specified by:
samplein interfaceContinuousSampler- Returns:
- a sample.
-
toString
public java.lang.String toString()- Overrides:
toStringin classSamplerBase
-