CMS 3D CMS Logo

HDRShower.h
Go to the documentation of this file.
1 #ifndef HDRShower_H
2 #define HDRShower_H
3 
4 //FastSimulation Headers
6 
7 #include <vector>
8 
14 #define NEnergyScan 7
15 // 7 lambda
16 #define R_range 100
17 
18 class EcalHitMaker;
19 class HcalHitMaker;
21 
22 class HDRShower {
23 public:
25  HDShowerParametrization* myParam,
26  EcalHitMaker* myGrid,
27  HcalHitMaker* myHcalHitMaker,
28  int onECAL,
29  double epart);
30 
31  virtual ~HDRShower() { ; }
32 
33  bool computeShower();
34  bool setHit(float espot, float theta);
35  void thetaFunction(int nthetaStep);
36  float getR();
37  void setFuncParam();
38 
39 private:
40  // Input
44  int onEcal;
45  double e; // Input energy to distribute
46 
47 private:
48  // const ECALProperties* theECALproperties;
49  // const HCALProperties* theHCALproperties;
50 
52  double depthStart;
53  float eHDspot;
54  float EsCut;
55  float EcalShift;
57 
58  float thetaStep;
60  std::vector<int> thetaSpots;
61  std::vector<float> elastspot;
62  float rpdf[R_range];
63  bool qstatus;
64  float decal;
65 
73 
74  // The famos random engine
76 };
77 
78 #endif
float Theta1amp[7]
Definition: HDRShower.h:67
double lambdaHD
Definition: HDRShower.h:51
int nthetaStep
Definition: HDRShower.h:56
double x0HD
Definition: HDRShower.h:51
HcalHitMaker * theHcalHitMaker
Definition: HDRShower.h:43
#define R_range
Definition: HDRShower.h:16
bool qstatus
Definition: HDRShower.h:63
float ThetaLam21[7]
Definition: HDRShower.h:71
float eHDspot
Definition: HDRShower.h:53
double depthStart
Definition: HDRShower.h:52
int onEcal
Definition: HDRShower.h:44
float Theta1ampSig[7]
Definition: HDRShower.h:68
#define NEnergyScan
Definition: HDRShower.h:14
std::vector< int > thetaSpots
Definition: HDRShower.h:60
double e
Definition: HDRShower.h:45
float ThetaLam21Sig[7]
Definition: HDRShower.h:72
float Theta1LambdaSig[7]
Definition: HDRShower.h:70
void thetaFunction(int nthetaStep)
Definition: HDRShower.cc:134
float depthECAL
Definition: HDRShower.h:59
void setFuncParam()
Definition: HDRShower.cc:204
float EgridTable[7]
Definition: HDRShower.h:66
bool setHit(float espot, float theta)
Definition: HDRShower.cc:91
EcalHitMaker * theGrid
Definition: HDRShower.h:42
HDShowerParametrization * theParam
Definition: HDRShower.h:41
float getR()
Definition: HDRShower.cc:119
float thetaStep
Definition: HDRShower.h:58
float EsCut
Definition: HDRShower.h:54
float EcalShift
Definition: HDRShower.h:55
HDRShower(const RandomEngineAndDistribution *engine, HDShowerParametrization *myParam, EcalHitMaker *myGrid, HcalHitMaker *myHcalHitMaker, int onECAL, double epart)
Definition: HDRShower.cc:23
float maxDepth
Definition: HDRShower.h:59
double x0EM
Definition: HDRShower.h:51
std::vector< float > elastspot
Definition: HDRShower.h:61
float rpdf[100]
Definition: HDRShower.h:62
float Theta1Lambda[7]
Definition: HDRShower.h:69
float depthGAP
Definition: HDRShower.h:59
const RandomEngineAndDistribution * random
Definition: HDRShower.h:75
virtual ~HDRShower()
Definition: HDRShower.h:31
float decal
Definition: HDRShower.h:64
double lambdaEM
Definition: HDRShower.h:51
bool computeShower()
Definition: HDRShower.cc:41