![]() |
Home | Libraries | People | FAQ | More |
boost::random::exponential_distribution
// In header: <boost/random/exponential_distribution.hpp> template<typename RealType> class exponential_distribution { public: // types typedef ; typedef ; // member classes/structs/unions class param_type { public: // types typedef exponential_distribution ; // construct/copy/destruct ( = ); // public member functions () ; // friend functions template<typename CharT, typename Traits> (, param_type &); template<typename CharT, typename Traits> (, param_type &); (param_type &, param_type &); (param_type &, param_type &); }; // construct/copy/destruct ( = ); (param_type &); // public member functions () ; () ; () ; param_type () ; (param_type &); (); template<typename Engine> () ; template<typename Engine> (, param_type &) ; // friend functions template<typename CharT, typename Traits> (, exponential_distribution &); template<typename CharT, typename Traits> (, exponential_distribution &); (exponential_distribution &, exponential_distribution &); (exponential_distribution &, exponential_distribution &); };
The exponential distribution is a model of random distribution with a single parameter lambda.
It has
The implementation uses the "ziggurat" algorithm, as described in
"The Ziggurat Method for Generating Random Variables", George Marsaglia and Wai Wan Tsang, Journal of Statistical Software Volume 5, Number 8 (2000), 1-7.
exponential_distribution
public
construct/copy/destruct( lambda = );
Constructs an exponential_distribution
with a given lambda.
Requires: lambda > 0
(param_type & param);
Constructs an exponential_distribution
from its parameters
exponential_distribution
public member functions() ;
Returns the lambda parameter of the distribution.
() ;
Returns the smallest value that the distribution can produce.
() ;
Returns the largest value that the distribution can produce.
param_type () ;
Returns the parameters of the distribution.
(param_type & param);
Sets the parameters of the distribution.
();
Effects: Subsequent uses of the distribution do not depend on values produced by any engine prior to invoking reset.
template<typename Engine> ( eng) ;
Returns a random variate distributed according to the exponential distribution.
template<typename Engine> ( eng, param_type & param) ;
Returns a random variate distributed according to the exponential distribution with parameters specified by param.
exponential_distribution
friend functionstemplate<typename CharT, typename Traits> ( os, exponential_distribution & ed);
Writes the distribution to a std::ostream.
template<typename CharT, typename Traits> ( is, exponential_distribution & ed);
Reads the distribution from a std::istream.
(exponential_distribution & lhs, exponential_distribution & rhs);
Returns true iff the two distributions will produce identical sequences of values given equal generators.
(exponential_distribution & lhs, exponential_distribution & rhs);
Returns true iff the two distributions will produce different sequences of values given equal generators.