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

    Modifier and Type Method Description
    double sample()
    Creates a sample.
    java.lang.String toString()

    Methods inherited from class org.apache.commons.rng.sampling.distribution.SamplerBase

    nextDouble, nextInt, nextInt, nextLong

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • 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 - if alpha <= 0 or beta <= 0
  • Method Details