std::normal_distribution - Man Page

A normal continuous distribution for random numbers.

Synopsis

#include <random>

Classes

struct param_type

Public Types

typedef _RealType result_type

Public Member Functions

normal_distribution (const param_type &__p)
normal_distribution (result_type __mean, result_type __stddev=result_type(1))
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)
result_type max () const
Returns the least upper bound value of the distribution.
_RealType mean () const
Returns the mean 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)
template<typename _UniformRandomNumberGenerator > normal_distribution< _RealType >::result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__param)
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.
_RealType stddev () const
Returns the standard deviation of the distribution.

Friends

template<typename _RealType1 , typename _CharT , typename _Traits > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::normal_distribution< _RealType1 > &__x)
Inserts a normal_distribution random number distribution __x into the output stream __os.
template<typename _RealType1 > bool operator== (const std::normal_distribution< _RealType1 > &__d1, const std::normal_distribution< _RealType1 > &__d2)
Return true if two normal 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::normal_distribution< _RealType1 > &__x)
Extracts a normal_distribution random number distribution __x from the input stream __is.

Detailed Description

template<typename _RealType = double>

class std::normal_distribution< _RealType >"A normal continuous distribution for random numbers.

The formula for the normal probability density function is    [
   p(x|mu,sigma) = ac{1}{sigma sqrt{2 pi}}
          e^{- ac{{x - mu}^ {2}}{2 sigma ^ {2}} }  ]

Since

C++11

Member Typedef Documentation

template<typename _RealType  = double> _RealType std::normal_distribution< _RealType >::result_type

The type of the range of the distribution.

Constructor & Destructor Documentation

template<typename _RealType  = double> std::normal_distribution< _RealType >::normal_distribution (result_type __mean, result_type __stddev = result_type(1)) [inline], [explicit]

Constructs a normal distribution with parameters $mean$ and standard deviation.

Member Function Documentation

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

Returns the least upper bound value of the distribution.

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

template<typename _RealType  = double> _RealType std::normal_distribution< _RealType >::mean () const [inline]

Returns the mean of the distribution.

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

Returns the greatest lower bound value of the distribution.

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

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

Generating functions.

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

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

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

Polar method due to Marsaglia.

Devroye, L. Non-Uniform Random Variates Generation. Springer-Verlag, New York, 1986, Ch. V, Sect. 4.4.

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

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

Returns the parameter set of the distribution.

template<typename _RealType  = double> void std::normal_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::normal_distribution< _RealType >::reset () [inline]

Resets the distribution state.

Referenced by std::binomial_distribution< _IntType >::reset(), std::gamma_distribution< _RealType >::reset(), std::lognormal_distribution< _RealType >::reset(), std::poisson_distribution< _IntType >::reset(), and std::student_t_distribution< _RealType >::reset().

template<typename _RealType  = double> _RealType std::normal_distribution< _RealType >::stddev () const [inline]

Returns the standard deviation of the distribution.

Author

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

Info

libstdc++