Chaste  Release::2018.1
boost::random::exponential_distribution_v165< RealType > Class Template Reference

#include <Boost165ExponentialDistribution.hpp>

+ Collaboration diagram for boost::random::exponential_distribution_v165< RealType >:

Classes

class  param_type
 

Public Types

typedef RealType input_type
 
typedef RealType result_type
 

Public Member Functions

 exponential_distribution_v165 (RealType lambda_arg=RealType(1.0))
 
 exponential_distribution_v165 (const param_type &parm)
 
RealType lambda () const
 
RealType min BOOST_PREVENT_MACRO_SUBSTITUTION () const
 
RealType max BOOST_PREVENT_MACRO_SUBSTITUTION () const
 
param_type param () const
 
void param (const param_type &parm)
 
void reset ()
 
template<class Engine >
result_type operator() (Engine &eng) const
 
template<class Engine >
result_type operator() (Engine &eng, const param_type &parm) const
 
 BOOST_RANDOM_DETAIL_OSTREAM_OPERATOR (os, exponential_distribution_v165, ed)
 
 BOOST_RANDOM_DETAIL_ISTREAM_OPERATOR (is, exponential_distribution_v165, ed)
 
 BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR (exponential_distribution_v165, lhs, rhs)
 

Private Attributes

result_type _lambda
 

Detailed Description

template<class RealType = double>
class boost::random::exponential_distribution_v165< RealType >

The exponential distribution is a model of with a single parameter lambda.

It has $\displaystyle p(x) = \lambda e^{-\lambda x}$

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.

Definition at line 267 of file Boost165ExponentialDistribution.hpp.

Constructor & Destructor Documentation

template<class RealType = double>
boost::random::exponential_distribution_v165< RealType >::exponential_distribution_v165 ( RealType  lambda_arg = RealType(1.0))
inlineexplicit

Constructs an exponential_distribution with a given lambda.

Requires: lambda > 0

Definition at line 321 of file Boost165ExponentialDistribution.hpp.

Referenced by boost::random::exponential_distribution_v165< RealType >::operator()().

template<class RealType = double>
boost::random::exponential_distribution_v165< RealType >::exponential_distribution_v165 ( const param_type parm)
inlineexplicit

Constructs an exponential_distribution from its parameters

Definition at line 327 of file Boost165ExponentialDistribution.hpp.

Member Function Documentation

template<class RealType = double>
RealType min boost::random::exponential_distribution_v165< RealType >::BOOST_PREVENT_MACRO_SUBSTITUTION ( ) const
inline

Returns the smallest value that the distribution can produce.

Definition at line 336 of file Boost165ExponentialDistribution.hpp.

template<class RealType = double>
RealType max boost::random::exponential_distribution_v165< RealType >::BOOST_PREVENT_MACRO_SUBSTITUTION ( ) const
inline

Returns the largest value that the distribution can produce.

Definition at line 341 of file Boost165ExponentialDistribution.hpp.

template<class RealType = double>
boost::random::exponential_distribution_v165< RealType >::BOOST_RANDOM_DETAIL_EQUALITY_OPERATOR ( exponential_distribution_v165< RealType >  ,
lhs  ,
rhs   
)
inline

Returns true iff the two distributions will produce identical sequences of values given equal generators.

Definition at line 396 of file Boost165ExponentialDistribution.hpp.

template<class RealType = double>
boost::random::exponential_distribution_v165< RealType >::BOOST_RANDOM_DETAIL_ISTREAM_OPERATOR ( is  ,
exponential_distribution_v165< RealType >  ,
ed   
)
inline

Reads the distribution from a std::istream.

Definition at line 386 of file Boost165ExponentialDistribution.hpp.

template<class RealType = double>
boost::random::exponential_distribution_v165< RealType >::BOOST_RANDOM_DETAIL_OSTREAM_OPERATOR ( os  ,
exponential_distribution_v165< RealType >  ,
ed   
)
inline

Writes the distribution to a std::ostream.

Definition at line 379 of file Boost165ExponentialDistribution.hpp.

template<class RealType = double>
RealType boost::random::exponential_distribution_v165< RealType >::lambda ( ) const
inline

Returns the lambda parameter of the distribution.

Definition at line 333 of file Boost165ExponentialDistribution.hpp.

References boost::random::exponential_distribution_v165< RealType >::param_type::_lambda.

template<class RealType = double>
template<class Engine >
result_type boost::random::exponential_distribution_v165< RealType >::operator() ( Engine &  eng) const
inline

Returns a random variate distributed according to the exponential distribution.

Definition at line 362 of file Boost165ExponentialDistribution.hpp.

References boost::random::exponential_distribution_v165< RealType >::param_type::_lambda.

template<class RealType = double>
template<class Engine >
result_type boost::random::exponential_distribution_v165< RealType >::operator() ( Engine &  eng,
const param_type parm 
) const
inline

Returns a random variate distributed according to the exponential distribution with parameters specified by param.

Definition at line 373 of file Boost165ExponentialDistribution.hpp.

References boost::random::exponential_distribution_v165< RealType >::exponential_distribution_v165().

template<class RealType = double>
void boost::random::exponential_distribution_v165< RealType >::param ( const param_type parm)
inline
template<class RealType = double>
void boost::random::exponential_distribution_v165< RealType >::reset ( )
inline

Effects: Subsequent uses of the distribution do not depend on values produced by any engine prior to invoking reset.

Definition at line 355 of file Boost165ExponentialDistribution.hpp.

Member Data Documentation

template<class RealType = double>
result_type boost::random::exponential_distribution_v165< RealType >::_lambda
private

Returns true iff the two distributions will produce different sequences of values given equal generators.

Definition at line 408 of file Boost165ExponentialDistribution.hpp.


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