Geant4 Cross Reference |
1 // -*- C++ -*- 1 2 // 3 // ------------------------------------------- 4 // HEP Random 5 // --- RandExponential - 6 // inlined functions implement 7 // ------------------------------------------- 8 // This file is part of Geant4 (simulation too 9 10 // =========================================== 11 // Gabriele Cosmo - Created: 19th August 1998 12 // =========================================== 13 14 #include <cmath> // for log() 15 16 namespace CLHEP { 17 18 inline RandExponential::RandExponential(HepRan 19 double 20 : HepRandom(), localEngine(&anEngine, do_nothi 21 22 inline RandExponential::RandExponential(HepRan 23 double 24 : HepRandom(), localEngine(anEngine), defaultM 25 26 //------------- 27 28 inline double RandExponential::shoot(HepRandom 29 return -std::log(anEngine->flat()); 30 } 31 32 inline double RandExponential::shoot(HepRandom 33 double 34 return -std::log(anEngine->flat())*mean; 35 } 36 37 //------------- 38 39 inline double RandExponential::fire() { 40 return -std::log(localEngine->flat())*defaul 41 } 42 43 inline double RandExponential::fire(double mea 44 return -std::log(localEngine->flat())*mean; 45 } 46 47 } // namespace CLHEP 48