std::tr1::gamma_distribution(3)

NAME
std::tr1::gamma_distribution - A gamma continuous distribution for random numbers.

SYNOPSIS

  Public Types
typedef _RealType input_type
typedef _RealType result_type

  Public Member Functions
_RealType alpha () const
gamma_distribution (const result_type &__alpha_val=result_type(1))
template<class _UniformRandomNumberGenerator > result_type operator() (_UniformRandomNumberGenerator &__urng)
void reset ()

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

Detailed Description

  template<typename _RealType = double> class std::tr1::gamma_distribution< _RealType >
A gamma continuous distribution for random numbers. The formula for the gamma probability mass function is $ p(x) = ac{1}{Gamma(lpha)} x^{lpha - 1} e^{-x} $.

Definition at line 2329 of file tr1/random.h.

Constructor & Destructor Documentation

  template<typename _RealType = double> std::tr1::gamma_distribution< _RealType >::gamma_distribution (const result_type & __alpha_val = result_type(1)) [inline, explicit]

Constructs a gamma distribution with parameters $ lpha $.

Definition at line 2341 of file tr1/random.h.

Member Function Documentation

  template<typename _RealType = double> _RealType std::tr1::gamma_distribution< _RealType >::alpha () const [inline]

Gets the $ lpha $ of the distribution.

Definition at line 2352 of file tr1/random.h.

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

Cheng's rejection algorithm GB for alpha >= 1 and a modification of Vaduva's rejection from Weibull algorithm due to Devroye for alpha < 1.

References: Cheng, R. C. 'The Generation of Gamma Random Variables with Non-integral Shape Parameter.' Applied Statistics, 26, 71-75, 1977.

Vaduva, I. 'Computer Generation of Gamma Gandom Variables by Rejection and Composition Procedures.' Math. Operationsforschung and Statistik, Series in Statistics, 8, 545-576, 1977.

Devroye, L. 'Non-Uniform Random Variates Generation.' Springer-Verlag, New York, 1986, Ch. IX, Sect. 3.4 (+ Errata!).

Definition at line 1506 of file tr1/random.tcc.

References std::exp(), std::log(), and std::pow().

  template<typename _RealType = double> void std::tr1::gamma_distribution< _RealType >::reset () [inline]

Resets the distribution.

Definition at line 2359 of file tr1/random.h.

Friends And Related Function Documentation

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

Inserts a gamma_distribution random number distribution __x into the output stream __os.

Parameters:
    __os An output stream.
    __x A gamma_distribution random number distribution.

Returns:
    The output stream with the state of __x inserted or in an error state.

  template<typename _RealType = double> template<typename _CharT , typename _Traits > std::basic_istream<_CharT, _Traits>& operator>> (std::basic_istream< _CharT, _Traits > & __is, gamma_distribution< _RealType > & __x) [friend]

Extracts a gamma_distribution random number distribution __x from the input stream __is.

Parameters:
    __is An input stream.
    __x A gamma_distribution random number generator engine.

Returns:
    The input stream with __x extracted or in an error state.

Definition at line 2391 of file tr1/random.h.

Author

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