RandGaussQ.icc

Go to the documentation of this file.
00001 // $Id:$
00002 // -*- C++ -*-
00003 //
00004 // -----------------------------------------------------------------------
00005 //                             HEP Random
00006 //                         --- RandGaussQ ---
00007 //                 inlined functions implementation file
00008 // -----------------------------------------------------------------------
00009 // This file is part of Geant4 (simulation toolkit for HEP).
00010  
00011 // =======================================================================
00012 // M. Fischler    - Created: 24 Janm 2000
00013 //
00014 // M. Fischler    - Modified fire() to use local engine, not getTheEngine()
00015 //                  12/13/04
00016 // =======================================================================
00017 
00018 // Constructors
00019 // ------------
00020 
00021 namespace CLHEP {
00022 
00023 RandGaussQ::RandGaussQ(HepRandomEngine & anEngine, double mean,
00024                                                         double stdDev )
00025 : RandGauss(anEngine, mean, stdDev) {}
00026 
00027 RandGaussQ::RandGaussQ(HepRandomEngine * anEngine, double mean,
00028                                                         double stdDev )
00029 : RandGauss(anEngine, mean, stdDev) {}
00030 
00031 // Getting a Gaussian deviate - static methods
00032 // -------------------------------------------
00033 
00034 double RandGaussQ::shoot()
00035 {
00036   HepRandomEngine* anEngine = HepRandom::getTheEngine();
00037   return transformQuick (anEngine->flat());
00038 }
00039 
00040 double RandGaussQ::shoot( HepRandomEngine* anotherEngine )
00041 { 
00042   return transformQuick  (anotherEngine->flat());
00043 }
00044 
00045 double RandGaussQ::shoot(double mean, double stdDev) {
00046   return shoot()*stdDev + mean;
00047 }
00048 
00049 double RandGaussQ::shoot(HepRandomEngine* anotherEngine,
00050                                   double mean, double stdDev) {
00051   return shoot(anotherEngine)*stdDev + mean;
00052 }
00053 
00054 // Getting a Gaussian deviate - instance methods
00055 // ---------------------------------------------
00056 
00057 double RandGaussQ::fire() {
00058   return transformQuick(localEngine->flat()) * defaultStdDev + defaultMean;
00059 }
00060 
00061 double RandGaussQ::fire(double mean, double stdDev) {
00062   return transformQuick(localEngine->flat()) * stdDev + mean;
00063 }
00064 
00065 }  // namespace CLHEP
00066 

Generated on Mon May 27 17:50:33 2013 for Geant4 by  doxygen 1.4.7