std::tr1::binomial_distribution

NAME

std::tr1::binomial_distribution -

SYNOPSIS


Detailed Description

template<typename _IntType = int, typename _RealType = double> class std::tr1::binomial_distribution< _IntType, _RealType >

The formula for the binomial probability mass function is $ p(i) = \binom{n}{i} p^i (1 - p)^{t - i} $ where $ t $ and $ p $ are the parameters of the distribution.
Definition at line 1911 of file random.

Public Types

typedef _RealType input_type
typedef _IntType result_type

Public Member Functions

binomial_distribution (_IntType __t=1, const _RealType &__p=_RealType(0.5))
template<class _UniformRandomNumberGenerator> result_type operator() (_UniformRandomNumberGenerator &__urng)
_RealType p () const
void reset ()
_IntType t () const

Friends

template<typename _IntType1, typename _RealType1, typename _CharT, typename _Traits> std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const binomial_distribution< _IntType1, _RealType1 > &__x)
template<typename _IntType1, typename _RealType1, typename _CharT, typename _Traits> std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, binomial_distribution< _IntType1, _RealType1 > &__x)

Member Function Documentation

template<typename _IntType, typename _RealType> template<class _UniformRandomNumberGenerator> binomial_distribution< _IntType, _RealType >::result_type std::tr1::binomial_distribution< _IntType, _RealType >::operator() (_UniformRandomNumberGenerator & __urng) [inline]

A rejection algorithm when t * p >= 8 and a simple waiting time method - the second in the referenced book - otherwise. NB: The former is available only if _GLIBCXX_USE_C99_MATH_TR1 is defined.
Reference: Devroye, L. 'Non-Uniform Random Variates Generation.' Springer-Verlag, New York, 1986, Ch. X, Sect. 4 (+ Errata!).
Definition at line 1131 of file random.tcc.
References std::abs(), std::numeric_limits< _Tp >::epsilon(), std::floor(), std::log(), and std::numeric_limits< _Tp >::max().

template<typename _IntType = int, typename _RealType = double> _RealType std::tr1::binomial_distribution< _IntType, _RealType >::p () const [inline]

Gets the distribution p parameter.
Definition at line 1939 of file random.

template<typename _IntType = int, typename _RealType = double> _IntType std::tr1::binomial_distribution< _IntType, _RealType >::t () const [inline]

Gets the distribution t parameter.
Definition at line 1932 of file random.

Friends And Related Function Documentation

template<typename _IntType = int, typename _RealType = double> template<typename _IntType1, typename _RealType1, typename _CharT, typename _Traits> std::basic_ostream<_CharT, _Traits>& operator<< (std::basic_ostream< _CharT, _Traits > & __os, const binomial_distribution< _IntType1, _RealType1 > & __x) [friend]

Inserts a binomial_distribution random number distribution __x into the output stream __os.
Parameters:
__os An output stream.
__x A binomial_distribution random number distribution.
Returns:
The output stream with the state of __x inserted or in an error state.

template<typename _IntType = int, typename _RealType = double> template<typename _IntType1, typename _RealType1, typename _CharT, typename _Traits> std::basic_istream<_CharT, _Traits>& operator>> (std::basic_istream< _CharT, _Traits > & __is, binomial_distribution< _IntType1, _RealType1 > & __x) [friend]

Extracts a binomial_distribution random number distribution __x from the input stream __is.
Parameters:
__is An input stream.
__x A binomial_distribution random number generator engine.
Returns:
The input stream with __x extracted or in an error state.

Author

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