CLHEP VERSION Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // $Id: Randomize.h,v 1.4 2011/05/31 20:57:00 garren Exp $ 00002 // -*- C++ -*- 00003 // 00004 // ----------------------------------------------------------------------- 00005 // HEP Random 00006 // ----------------------------------------------------------------------- 00007 // This file is part of Geant4 (simulation toolkit for HEP). 00008 // 00009 // This file must be included to make use of the HEP Random module 00010 // On some compilers the static instance of the HepRandom generator 00011 // needs to be created explicitly in the client code. The static 00012 // generator is assured to be correctly initialized by including this 00013 // header in the client code. 00014 00015 // ======================================================================= 00016 // Gabriele Cosmo - Created: 5th September 1995 00017 // Gabriele Cosmo - Last change: 13th February 1996 00018 // Ken Smith - Added Ranshi and DualRand engines: 4th June 1998 00019 // - Added Ranlux64 and MTwist engines: 14th July 1998 00020 // - Added Hurd160, Hurd288m and TripleRand 6th Aug 1998 00021 // ======================================================================= 00022 00023 #ifndef Rndmze_h 00024 #define Rndmze_h 1 00025 00026 // Including Engines ... 00027 00028 #include "CLHEP/Random/defs.h" 00029 #include "CLHEP/Random/DRand48Engine.h" 00030 #include "CLHEP/Random/DualRand.h" 00031 #include "CLHEP/Random/Hurd160Engine.h" 00032 #include "CLHEP/Random/Hurd288Engine.h" 00033 #include "CLHEP/Random/JamesRandom.h" 00034 #include "CLHEP/Random/MTwistEngine.h" 00035 #include "CLHEP/Random/RandEngine.h" 00036 #include "CLHEP/Random/RanecuEngine.h" 00037 #include "CLHEP/Random/RanluxEngine.h" 00038 #include "CLHEP/Random/Ranlux64Engine.h" 00039 #include "CLHEP/Random/RanshiEngine.h" 00040 #include "CLHEP/Random/TripleRand.h" 00041 00042 // Including distributions ... 00043 00044 #include "CLHEP/Random/RandBinomial.h" 00045 #include "CLHEP/Random/RandBreitWigner.h" 00046 #include "CLHEP/Random/RandChiSquare.h" 00047 #include "CLHEP/Random/RandExponential.h" 00048 #include "CLHEP/Random/RandFlat.h" 00049 #include "CLHEP/Random/RandBit.h" 00050 #include "CLHEP/Random/RandGamma.h" 00051 #include "CLHEP/Random/RandGauss.h" 00052 #include "CLHEP/Random/RandGaussQ.h" 00053 #include "CLHEP/Random/RandGaussT.h" 00054 #include "CLHEP/Random/RandGeneral.h" 00055 #include "CLHEP/Random/RandLandau.h" 00056 #include "CLHEP/Random/RandPoissonQ.h" 00057 #include "CLHEP/Random/RandPoissonT.h" 00058 #include "CLHEP/Random/RandSkewNormal.h" 00059 #include "CLHEP/Random/RandStudentT.h" 00060 00061 namespace CLHEP { 00062 00063 #define HepUniformRand() HepRandom::getTheEngine()->flat() 00064 00065 // On some compilers the static instance of the HepRandom generator 00066 // needs to be created explicitly in the client code (i.e. here). 00067 00068 static int HepRandomGenActive = HepRandom::createInstance(); 00069 00070 } // namespace CLHEP 00071 00072 #ifdef ENABLE_BACKWARDS_COMPATIBILITY 00073 // backwards compatibility will be enabled ONLY in CLHEP 1.9 00074 using namespace CLHEP; 00075 #endif 00076 00077 #endif