libstdc++: std::gamma_distribution< _RealType > Class Template Reference (original) (raw)

#include <[random](a00167%5Fsource.html)>

Public Member Functions
gamma_distribution ()
gamma_distribution (_RealType __alpha_val, _RealType __beta_val=_RealType(1))
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
_RealType beta () const
result_type max () const
result_type min () const
template<typename _UniformRandomNumberGenerator >
result_type operator() (_UniformRandomNumberGenerator &__urng)
template<typename _UniformRandomNumberGenerator >
result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__p)
param_type param () const
void param (const param_type &__param)
void reset ()
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)
bool operator== (const gamma_distribution &__d1, const gamma_distribution &__d2)
template<typename _RealType1 , typename _CharT , typename _Traits >
std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::gamma_distribution< _RealType1 > &__x)

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) = \frac{1}{\beta\Gamma(\alpha)}
                        (x/\beta)^{\alpha - 1} e^{-x/\beta} 
]

Since

C++11

Definition at line 2570 of file random.h.

result_type

template<typename _RealType = double>

The type of the range of the distribution.

Definition at line 2577 of file random.h.

template<typename _RealType = double>

Constructs a gamma distribution with parameters 1 and 1.

Definition at line 2628 of file random.h.

gamma_distribution() [2/3]

template<typename _RealType = double>

std::gamma_distribution< _RealType >::gamma_distribution ( _RealType __alpha_val, _RealType __beta_val = _RealType(1) ) inlineexplicit

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

Definition at line 2635 of file random.h.

gamma_distribution() [3/3]

template<typename _RealType = double>

__generate() [1/3]

template<typename _RealType = double>

template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >

void std::gamma_distribution< _RealType >::__generate ( _ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator & __urng ) inline

__generate() [2/3]

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

__generate() [3/3]

template<typename _RealType = double>

template<typename _UniformRandomNumberGenerator >

alpha()

template<typename _RealType = double>

Returns the $\alpha$ of the distribution.

Definition at line 2656 of file random.h.

beta()

template<typename _RealType = double>

Returns the $\beta$ of the distribution.

Definition at line 2663 of file random.h.

max()

template<typename _RealType = double>

min()

template<typename _RealType = double>

Returns the greatest lower bound value of the distribution.

Definition at line 2685 of file random.h.

operator()() [1/2]

template<typename _RealType = double>

template<typename _UniformRandomNumberGenerator >

operator()() [2/2]

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 2355 of file bits/random.tcc.

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

param() [1/2]

template<typename _RealType = double>

param() [2/2]

template<typename _RealType = double>

Sets the parameter set of the distribution.

Parameters

__param The new parameter set of the distribution.

Definition at line 2678 of file random.h.

reset()

template<typename _RealType = double>

operator<<

template<typename _RealType = double>

template<typename _RealType1 , typename _CharT , typename _Traits >

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.

operator==

template<typename _RealType = double>

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

Definition at line 2736 of file random.h.

operator>>

template<typename _RealType = double>

template<typename _RealType1 , typename _CharT , typename _Traits >

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.


The documentation for this class was generated from the following files: