Class SmallMeanPoissonSampler

java.lang.Object
org.apache.commons.rng.sampling.distribution.SmallMeanPoissonSampler
All Implemented Interfaces:
DiscreteSampler

public class SmallMeanPoissonSampler
extends java.lang.Object
implements DiscreteSampler
Sampler for the Poisson distribution.
  • For small means, a Poisson process is simulated using uniform deviates, as described here. The Poisson process (and hence, the returned value) is bounded by 1000 * mean.

This sampler is suitable for mean < 40. For large means, LargeMeanPoissonSampler should be used instead.

Sampling uses UniformRandomProvider.nextDouble().

Since:
1.1
  • Constructor Summary

    Constructors 
    Constructor Description
    SmallMeanPoissonSampler​(UniformRandomProvider rng, double mean)  
  • Method Summary

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

    Methods inherited from class java.lang.Object

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

    • SmallMeanPoissonSampler

      public SmallMeanPoissonSampler​(UniformRandomProvider rng, double mean)
      Parameters:
      rng - Generator of uniformly distributed random numbers.
      mean - Mean.
      Throws:
      java.lang.IllegalArgumentException - if mean <= 0 or Math.exp(-mean) is not positive.
  • Method Details

    • sample

      public int sample()
      Creates a sample.
      Specified by:
      sample in interface DiscreteSampler
      Returns:
      a sample.
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object