Class defining methods for shooting or firing Landau distributed
random values.
The Landau distribution is parameterless and describes the fluctuations
in energy loss of a particle, making certain assumptions. For
definitions and algorithms, the following papers could be read:
Landau, Jour Phys VIII, No. 4, p. 201 (1944)
Borsh-Supan, Jour Res. of NBS 65B NO. 4 p. 245 (1961)
Kolbig & Schorr Comp Phys Comm 31 p. 97 (1984)
The algorithm implemented comes form RANLAN in CERNLIB.
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,
RandGaussQ,
RandGaussT,
RandGeneral,
RandPoisson,
RandPoissonQ,
RandPoissonT,
RandStudentT
Functions:
HepStat
Declaration
#include "CLHEP/Random/RandLandau.h"
class RandLandau : public HepRandom
Public Member Functions
- Constructors
- inline RandLandau(HepRandomEngine& anEngine)
- inline RandLandau(HepRandomEngine* anEngine)
- These constructors should be used to instantiate a RandLandau
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 RandLandau destructor.
If the engine is passed by reference the corresponding engine object
will not be deleted by the RandLandau destructor.
- Destructor
- virtual ~RandLandau()
- ()
- inline HepDouble operator()()
- Instance method using the localEngine to instead of the static
generator, and the default mean and stdDev established at
cons static void shootArray ( const HepInt size, HepDouble* vect );
truction.
- fire
- inline HepDouble fire()
- Instance method 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)
- Instance method using the localEngine to instead of the static
generator, and the default mean and stdDev established at
construction.
- shoot
- static inline HepDouble shoot()
- Static method to shoot random values using the static generator.
- static inline HepDouble shoot(HepRandomEngine* anotherEngine)
- Static method to shoot random values using a given engine
by-passing the static generator.
- shootArray
- static void shootArray( const HepInt size, HepDouble* vect)
- Static method to shoot random values using the static generator.
- static void shootArray(HepRandomEngine* anotherEngine,
const HepInt size,
HepDouble* vect)
- Static method to shoot random values using a given engine
by-passing the static generator.
16 May 2000
EVC