Class ChengBetaSampler.ChengBBBetaSampler

java.lang.Object
org.apache.commons.rng.sampling.distribution.ChengBetaSampler.BaseChengBetaSampler
org.apache.commons.rng.sampling.distribution.ChengBetaSampler.ChengBBBetaSampler
All Implemented Interfaces:
ContinuousSampler, SharedStateContinuousSampler, SharedStateSampler<SharedStateContinuousSampler>
Enclosing class:
ChengBetaSampler

private static final class ChengBetaSampler.ChengBBBetaSampler extends ChengBetaSampler.BaseChengBetaSampler
Computes one sample using Cheng's BB algorithm, when beta distribution alpha and beta shape parameters are both larger than 1.
  • Field Details

    • LN_5_P1

      private static final double LN_5_P1
      1 + natural logarithm of 5.
    • beta

      private final double beta
      The algorithm beta factor. This is not the beta distribution beta shape parameter.
    • gamma

      private final double gamma
      The algorithm gamma factor.
  • Constructor Details

    • ChengBBBetaSampler

      ChengBBBetaSampler(UniformRandomProvider rng, boolean aIsAlphaShape, double a, double b)
      Parameters:
      rng - Generator of uniformly distributed random numbers.
      aIsAlphaShape - true if a is the beta distribution alpha shape parameter.
      a - min(alpha, beta) shape parameter.
      b - max(alpha, beta) shape parameter.
    • ChengBBBetaSampler

      private ChengBBBetaSampler(UniformRandomProvider rng, ChengBetaSampler.ChengBBBetaSampler source)
      Parameters:
      rng - Generator of uniformly distributed random numbers.
      source - Source to copy.
  • Method Details

    • sample

      public double sample()
      Description copied from interface: ContinuousSampler
      Creates a double sample.
      Returns:
      a sample.
    • withUniformRandomProvider

      public SharedStateContinuousSampler withUniformRandomProvider(UniformRandomProvider rng)
      Description copied from interface: SharedStateSampler
      Create a new instance of the sampler with the same underlying state using the given uniform random provider as the source of randomness.
      Parameters:
      rng - Generator of uniformly distributed random numbers.
      Returns:
      the sampler