RandGaussQ


Class defining methods RandGaussQ, which is derived from RandGauss.
The user interface is identical; but RandGaussQ is faster and a bit less accurate.

If a fast good engine takes 1 usec, RandGauss::fire() adds 1 usec while RandGaussQ::fire() adds only .4 usec.

Author

Mark Fischler

See also

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

Distributions: HepRandom, RandBinomial, RandBit, RandBreitWigner, RandChiSquare, RandExponential, RandFlat, RandGamma, RandGauss, RandGaussT, RandGeneral, RandLandau, RandPoisson, RandPoissonQ, RandPoissonT, RandStudentT

Functions: HepStat

Declaration

#include "CLHEP/Random/RandGaussQ.h"

class RandGaussQ : public RandGauss

Public Member Functions

Constructors
inline RandGaussQ(HepRandomEngine& anEngine, HepDouble mean=0.0, HepDouble stdDev=1.0)
inline RandGaussQ(HepRandomEngine* anEngine, HepDouble mean=0.0, HepDouble stdDev=1.0)
These constructors should be used to instantiate a RandGaussQ distribution object defining a local engine for it.
The static generator will be skipped using the non-static methods defined below.
If the engine is passed by pointer the corresponding engine object will be deleted by the RandGaussQ destructor.
If the engine is passed by reference the corresponding engine object will not be deleted by the RandGaussQ destructor.
Destructor
virtual ~RandGaussQ()
()
virtual HepDouble operator()()
virtual HepDouble operator()(HepDouble mean, HepDouble stdDev)
Instance methods using the localEngine to instead of the static generator, and the default mean and stdDev established at construction.
fire
inline HepDouble fire()
inline HepDouble fire(HepDouble mean, HepDouble stdDev)
Instance methods using the localEngine to instead of the static generator, and the default mean and stdDev established at construction.
fireArray
void fireArray(const HepInt size, HepDouble* vect)
void fireArray(const HepInt size, HepDouble* vect, HepDouble mean, HepDouble stdDev )
Instance methods using the localEngine to instead of the static generator, and the default mean and stdDev established at construction.
shoot
static inline HepDouble shoot()
static inline HepDouble shoot(HepDouble mean, HepDouble stdDev)
Static methods to shoot random values using the static generator.

static inline HepDouble shoot(HepRandomEngine* anotherEngine)
static inline HepDouble shoot(HepRandomEngine* anotherEngine, HepDouble mean, HepDouble stdDev)
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=0.0, HepDouble stdDev=1.0)
Static method to shoot random values using the static generator.

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

Example

CLHEP/Random/test/testRandDists.cc


19 June 2001
EVC