std::poisson_distribution - Man Page

A discrete Poisson random number distribution.

Synopsis

#include <random>

Classes

struct param_type

Public Types

typedef _IntType result_type

Public Member Functions

poisson_distribution (const param_type &__p)
poisson_distribution (double __mean)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
template<typename _UniformRandomNumberGenerator > void __generate (result_type *__f, result_type *__t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
result_type max () const
Returns the least upper bound value of the distribution.
double mean () const
Returns the distribution parameter mean.
result_type min () const
Returns the greatest lower bound value of the distribution.
template<typename _UniformRandomNumberGenerator > result_type operator() (_UniformRandomNumberGenerator &__urng)
Generating functions.
template<typename _UniformRandomNumberGenerator > result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__p)
template<typename _UniformRandomNumberGenerator > poisson_distribution< _IntType >::result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__param)
param_type param () const
Returns the parameter set of the distribution.
void param (const param_type &__param)
Sets the parameter set of the distribution.
void reset ()
Resets the distribution state.

Friends

template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::poisson_distribution< _IntType1 > &__x)
Inserts a poisson_distribution random number distribution __x into the output stream __os.
bool operator== (const poisson_distribution &__d1, const poisson_distribution &__d2)
Return true if two Poisson distributions have the same parameters and the sequences that would be generated are equal.
template<typename _IntType1 , typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::poisson_distribution< _IntType1 > &__x)
Extracts a poisson_distribution random number distribution __x from the input stream __is.

Detailed Description

template<typename _IntType = int>

class std::poisson_distribution< _IntType >"A discrete Poisson random number distribution.

The formula for the Poisson probability density function is $p(i|mu) = ac{mu^i}{i!} e^{-mu}$ where $mu$ is the parameter of the distribution.

Since

C++11

Member Typedef Documentation

template<typename _IntType  = int> _IntType std::poisson_distribution< _IntType >::result_type

The type of the range of the distribution.

Member Function Documentation

template<typename _IntType  = int> result_type std::poisson_distribution< _IntType >::max () const [inline]

Returns the least upper bound value of the distribution.

References std::numeric_limits< _Tp >::max().

template<typename _IntType  = int> double std::poisson_distribution< _IntType >::mean () const [inline]

Returns the distribution parameter mean.

template<typename _IntType  = int> result_type std::poisson_distribution< _IntType >::min () const [inline]

Returns the greatest lower bound value of the distribution.

template<typename _IntType  = int> template<typename _UniformRandomNumberGenerator > result_type std::poisson_distribution< _IntType >::operator() (_UniformRandomNumberGenerator & __urng) [inline]

Generating functions.

References std::poisson_distribution< _IntType >::operator()().

Referenced by std::poisson_distribution< _IntType >::operator()().

template<typename _IntType  = int> template<typename _UniformRandomNumberGenerator > poisson_distribution< _IntType >::result_type std::poisson_distribution< _IntType >::operator() (_UniformRandomNumberGenerator & __urng, const param_type & __param)

A rejection algorithm when mean >= 12 and a simple method based upon the multiplication of uniform random variates otherwise. NB: The former is available only if _GLIBCXX_USE_C99_MATH_FUNCS is defined.

Reference: Devroye, L. Non-Uniform Random Variates Generation. Springer-Verlag, New York, 1986, Ch. X, Sects. 3.3 & 3.4 (+ Errata!).

References std::abs(), std::numeric_limits< _Tp >::epsilon(), std::log(), and std::numeric_limits< _Tp >::max().

template<typename _IntType  = int> param_type std::poisson_distribution< _IntType >::param () const [inline]

Returns the parameter set of the distribution.

template<typename _IntType  = int> void std::poisson_distribution< _IntType >::param (const param_type & __param) [inline]

Sets the parameter set of the distribution.

Parameters

__param The new parameter set of the distribution.

template<typename _IntType  = int> void std::poisson_distribution< _IntType >::reset () [inline]

Resets the distribution state.

References std::normal_distribution< _RealType >::reset().

Author

Generated automatically by Doxygen for libstdc++ from the source code.

Info

libstdc++