RandChiSquare


Class defining methods for shooting Chi^2 distributed random values, given a number of degrees of freedom a (default=1.0). Default values are used for operator()().

Valid values of a satisfy a > 1. When invalid values are presented, the code silently returns -1.0.

Author

John Marraffino

See also

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

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

Declaration

#include "CLHEP/Random/RandChiSquare.h"

class RandChiSquare : public HepRandom

Public Member Functions

Constructors
inline RandChiSquare(HepRandomEngine& anEngine, HepDouble a=1)
inline RandChiSquare(HepRandomEngine* anEngine, HepDouble a=1)
These constructors should be used to instantiate a RandChiSquare 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 RandChiSquare destructor.
If the engine is passed by reference the corresponding engine object will not be deleted by the RandChiSquare destructor.
Destructor
virtual ~RandChiSquare()
()
inline HepDouble operator()()
inline HepDouble operator()(HepDouble a)
Methods using the localEngine to shoot random values, by-passing the static generator.
fire
inline HepDouble fire()
HepDouble fire(HepDouble a)
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 a)
Methods using the localEngine to shoot random values, by-passing the static generator.
shoot
static inline HepDouble shoot()
static HepDouble shoot(HepDouble a)
Static methods to shoot random values using the static generator

static inline HepDouble shoot(HepRandomEngine* anEngine)
static HepDouble shoot(HepRandomEngine* anEngine, HepDouble a)
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 p=1.0)
Static method to shoot random values using the static generator

static void shootArray(HepRandomEngine* anEngine, const HepInt size, HepDouble* vect, HepDouble p=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