std::gamma_distribution - Man Page

A gamma continuous distribution for random numbers.

Synopsis

#include <random>

Classes

struct param_type

Public Types

typedef _RealType result_type

Public Member Functions

gamma_distribution ()
Constructs a gamma distribution with parameters 1 and 1.
gamma_distribution (_RealType __alpha_val, _RealType __beta_val=_RealType(1))
Constructs a gamma distribution with parameters $alpha$ and $beta$.
gamma_distribution (const param_type &__p)
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)
_RealType alpha () const
Returns the $alpha$ of the distribution.
_RealType beta () const
Returns the $beta$ of the distribution.
result_type max () const
Returns the least upper bound value of the distribution.
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)
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 _RealType1 , typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::gamma_distribution< _RealType1 > &__x)
Inserts a gamma_distribution random number distribution __x into the output stream __os.
bool operator== (const gamma_distribution &__d1, const gamma_distribution &__d2)
Return true if two gamma distributions have the same parameters and the sequences that would be generated are equal.
template<typename _RealType1 , typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::gamma_distribution< _RealType1 > &__x)
Extracts a gamma_distribution random number distribution __x from the input stream __is.

Detailed Description

template<typename _RealType = double>

class std::gamma_distribution< _RealType >"A gamma continuous distribution for random numbers.

The formula for the gamma probability density function is:  [
   p(x|alpha,beta) = ac{1}{betaGamma(alpha)}
                       (x/beta)^{alpha - 1} e^{-x/beta}  ]

Since

C++11

Member Typedef Documentation

template<typename _RealType  = double> typedef _RealType std::gamma_distribution< _RealType >::result_type

The type of the range of the distribution.

Constructor & Destructor Documentation

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

Constructs a gamma distribution with parameters 1 and 1.

template<typename _RealType  = double> std::gamma_distribution< _RealType >::gamma_distribution (_RealType __alpha_val, _RealType __beta_val = _RealType(1)) [inline], [explicit]

Constructs a gamma distribution with parameters $alpha$ and $beta$.

Member Function Documentation

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

Returns the $alpha$ of the distribution.

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

Returns the $beta$ of the distribution.

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

Returns the least upper bound value of the distribution.

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

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

Returns the greatest lower bound value of the distribution.

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

Generating functions.

References std::gamma_distribution< _RealType >::operator()().

Referenced by std::gamma_distribution< _RealType >::operator()().

template<typename _RealType > template<typename _UniformRandomNumberGenerator > gamma_distribution< _RealType >::result_type std::gamma_distribution< _RealType >::operator() (_UniformRandomNumberGenerator & __urng, const param_type & __param)

Marsaglia, G. and Tsang, W. W. 'A Simple Method for Generating Gamma Variables' ACM Transactions on Mathematical Software, 26, 3, 363-372, 2000.

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

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

Returns the parameter set of the distribution.

Referenced by std::chi_squared_distribution< _RealType >::param().

template<typename _RealType  = double> void std::gamma_distribution< _RealType >::param (const param_type & __param) [inline]

Sets the parameter set of the distribution.

Parameters

__param The new parameter set of the distribution.

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

Resets the distribution state.

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

Referenced by std::chi_squared_distribution< _RealType >::reset(), std::fisher_f_distribution< _RealType >::reset(), std::student_t_distribution< _RealType >::reset(), and std::negative_binomial_distribution< _IntType >::reset().

Author

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

Info

libstdc++