RandExponential


Class defining methods for shooting exponential distributed random values, given a mean (default mean = 1). Default mean is used for operator()().

Author

Gabriele Cosmo

See also

Engines: HepRandomEngine, DRand48Engine , DualRand HepJamesRandom Hurd160Engine Hurd288Engine MTwistEngine RandEngine RanecuEngine RanluxEngine Ranlux64Engine RanshiEngine TripleRand

Distributions: HepRandom, RandBinomial RandBreitWigner RandChiSquare RandFlat RandGamma RandGauss RandGeneral RandPoisson RandStudentT

Declaration

#include "CLHEP/Random/RandExponential.h"

class RandExponential : public HepRandom

Public Member Functions

Constructor
inline RandExponential(HepRandomEngine& anEngine, HepDouble mean=1.0)
inline RandExponential(HepRandomEngine* anEngine, HepDouble mean=1.0)
These constructors should be used to instantiate a RandExponential distribution object defining a local engine for it. The static generator will be skeeped using the non-static methods defined below.
If the engine is passed by pointer the corresponding engine object will be deleted by the RandExponential destructor.
If the engine is passed by reference the corresponding engine object will not be deleted by the RandExponential destructor.
Destructor
virtual ~RandExponential()
()
HepDouble operator()()
HepDouble operator()(HepDouble mean)
Methods using the localEngine to shoot random values, by-passing the static generator.
fire
inline HepDouble fire()
inline HepDouble fire(HepDouble mean)
Methods using the localEngine to shoot random values, by-passing the static generator.
fireArray
void fireArray(const HepInt size, HepDouble* vect)
void fireArray(const HepInt size, HepDouble* vect, HepDouble mean)
Methods using the localEngine to shoot random values, by-passing the static generator.
shoot
static HepDouble shoot()
static HepDouble shoot(HepDouble mean)
Static methods to shoot random values using the static generator.

static inline HepDouble shoot(HepRandomEngine* anEngine)
static inline HepDouble shoot(HepRandomEngine* anEngine, HepDouble mean)
Static methods to shoot random values using a given engine by-passing the static generator.
shootArray
static void shootArray(const HepInt size, HepDouble* vect, HepDouble mean=1.0);
Static method to shoot random values using the static generator.

static void shootArray(HepRandomEngine* anEngine,const HepInt size, HepDouble* vect, HepDouble mean=1.0)
Static method to shoot random values using a given engine by-passing the static generator.

Example

CLHEP/test/testRandom.cc


04 May 1999
EVC