File indexing completed on 2024-04-06 12:30:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #ifndef SiG4UniversalFluctuation_h
0019 #define SiG4UniversalFluctuation_h
0020
0021 namespace CLHEP {
0022 class HepRandomEngine;
0023 }
0024
0025 class SiG4UniversalFluctuation {
0026 public:
0027 explicit SiG4UniversalFluctuation();
0028
0029
0030 SiG4UniversalFluctuation &operator=(const SiG4UniversalFluctuation &right) = delete;
0031 SiG4UniversalFluctuation(const SiG4UniversalFluctuation &) = delete;
0032
0033 ~SiG4UniversalFluctuation();
0034
0035
0036
0037 double SampleFluctuations(const double momentum,
0038 const double mass,
0039 double &tmax,
0040 const double length,
0041 const double meanLoss,
0042 CLHEP::HepRandomEngine *);
0043
0044 private:
0045 double particleMass;
0046 double chargeSquare;
0047
0048
0049 double ipotFluct;
0050 double electronDensity;
0051
0052 double f1Fluct;
0053 double f2Fluct;
0054 double e1Fluct;
0055 double e2Fluct;
0056 double rateFluct;
0057 double e1LogFluct;
0058 double e2LogFluct;
0059 double ipotLogFluct;
0060 double e0;
0061
0062 double minNumberInteractionsBohr;
0063 double theBohrBeta2;
0064 double minLoss;
0065 double problim;
0066 double sumalim;
0067 double alim;
0068 double nmaxCont1;
0069 double nmaxCont2;
0070 };
0071
0072
0073
0074 #endif