Class PoissonSampler

  • All Implemented Interfaces:
    DiscreteSampler, SharedStateDiscreteSampler, SharedStateSampler<SharedStateDiscreteSampler>

    public class PoissonSampler
    extends SamplerBase
    implements SharedStateDiscreteSampler
    Sampler for the Poisson distribution.
    • For small means, a Poisson process is simulated using uniform deviates, as described in
      Knuth (1969). Seminumerical Algorithms. The Art of Computer Programming, Volume 2. Chapter 3.4.1.F.3 Important integer-valued distributions: The Poisson distribution. Addison Wesley.
      The Poisson process (and hence, the returned value) is bounded by 1000 * mean.
    • For large means, we use the rejection algorithm described in
      Devroye, Luc. (1981). The Computer Generation of Poisson Random Variables
      Computing vol. 26 pp. 197-207.

    Sampling uses:

    • UniformRandomProvider.nextDouble()
    • UniformRandomProvider.nextLong() (large means only)
    Since:
    1.0