std::gamma_distribution< _RealType > Class Template Reference

## Classes

struct | param_type

## Public Types

typedef _RealType | result_type

## 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)

## 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:

Definition at line 2404 of file random.h.

## Member Typedef Documentation

## result_type

template<typename _RealType = double>

typedef _RealType std::gamma_distribution< _RealType >::result_type

The type of the range of the distribution.

Definition at line 2411 of file random.h.

## Constructor & Destructor Documentation

## gamma_distribution() [1/2]

template<typename _RealType = double>

std::gamma_distribution< _RealType >::gamma_distribution | ( |  | ) |

inline

Constructs a gamma distribution with parameters 1 and 1.

Definition at line 2460 of file random.h.

## gamma_distribution() [2/2]

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 and .

Definition at line 2467 of file random.h.

## Member Function Documentation

## alpha()

template<typename _RealType = double>

_RealType std::gamma_distribution< _RealType >::alpha | ( |  | ) | const

inline

Returns the of the distribution.

Definition at line 2488 of file random.h.

## beta()

template<typename _RealType = double>

_RealType std::gamma_distribution< _RealType >::beta | ( |  | ) | const

inline

Returns the of the distribution.

Definition at line 2495 of file random.h.

## max()

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 2524 of file random.h.

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

## min()

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 2517 of file random.h.

## operator()() [1/2]

template<typename _RealType = double>
template<typename _UniformRandomNumberGenerator >

result_type std::gamma_distribution< _RealType >::operator() | ( | _UniformRandomNumberGenerator & | __urng | ) |

inline

Generating functions.

Definition at line 2532 of file random.h.

## operator()() [2/2]

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

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

## param() [1/2]

template<typename _RealType = double>

param_type std::gamma_distribution< _RealType >::param | ( |  | ) | const

inline

Returns the parameter set of the distribution.

Definition at line 2502 of file random.h.

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

## param() [2/2]

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 2510 of file random.h.

## reset()

template<typename _RealType = double>

void std::gamma_distribution< _RealType >::reset | ( |  | ) |

inline

Resets the distribution state.

Definition at line 2481 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 Function Documentation

## operator<<

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.

## operator==

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 2568 of file random.h.

## operator>>

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.

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

- random.h
- bits/random.tcc