Scroll to navigation

std::gamma_distribution< _RealType >(3cxx) std::gamma_distribution< _RealType >(3cxx)

NAME

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

SYNOPSIS

#include <random.h>

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 $ lpha$ and $ 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 $ lpha$ of the distribution. _RealType beta () const
Returns 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|lpha,ac{1}{
(x/^{-x/ ]

Definition at line 2396 of file random.h.

Member Typedef Documentation

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

The type of the range of the distribution.

Definition at line 2403 of file random.h.

Constructor & Destructor Documentation

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

Constructs a gamma distribution with parameters 1 and 1.

Definition at line 2452 of file random.h.

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 $lpha$ and $

Definition at line 2459 of file random.h.

template<typename _RealType = double> std::gamma_distribution< _RealType >::gamma_distribution (const param_type & __p) [inline], [explicit]

Definition at line 2465 of file random.h.

Member Function Documentation

template<typename _RealType = double> template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void std::gamma_distribution< _RealType >::__generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator & __urng) [inline]

Definition at line 2535 of file random.h.

template<typename _RealType = double> template<typename _ForwardIterator , typename _UniformRandomNumberGenerator > void std::gamma_distribution< _RealType >::__generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator & __urng, const param_type & __p) [inline]

Definition at line 2542 of file random.h.

template<typename _RealType = double> template<typename _UniformRandomNumberGenerator > void std::gamma_distribution< _RealType >::__generate (result_type * __f, result_type * __t, _UniformRandomNumberGenerator & __urng, const param_type & __p) [inline]

Definition at line 2549 of file random.h.

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

Returns the $lpha$ of the distribution.

Definition at line 2480 of file random.h.

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

Returns the $ distribution.

Definition at line 2487 of file random.h.

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

Returns the least upper bound value of the distribution.

Definition at line 2516 of file random.h.

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.

Definition at line 2509 of file random.h.

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

Generating functions.

Definition at line 2524 of file random.h.

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.

Definition at line 2346 of file bits/random.tcc.

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.

Definition at line 2494 of file random.h.

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.

Definition at line 2502 of file random.h.

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

Resets the distribution state.

Definition at line 2473 of file random.h.

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().

Friends And Related Symbol 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 std::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> bool operator== (const gamma_distribution< _RealType > & __d1, const gamma_distribution< _RealType > & __d2) [friend]

Return true if two gamma distributions have the same parameters and the sequences that would be generated are equal.

Definition at line 2560 of file random.h.

template<typename _RealType = double> template<typename _RealType1 , typename _CharT , typename _Traits > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > & __is, std::gamma_distribution< _RealType1 > & __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.

Author

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

libstdc++