CMS 3D CMS Logo

GflashHadronShowerProfile.h
Go to the documentation of this file.
1 #ifndef GflashHadronShowerProfile_H
2 #define GflashHadronShowerProfile_H
3 
5 
10 
11 #include <vector>
12 
13 class GflashHit;
14 
16 {
17 public:
18  //-------------------------
19  // Constructor, destructor
20  //-------------------------
22  virtual ~GflashHadronShowerProfile ();
23 
24  void initialize(int showerType, double energy, double globalTime, double charge,
26 
27  virtual void loadParameters();
30  std::vector<GflashHit>& getGflashHitList() {return theGflashHitList;};
31 
32 protected:
33  double longitudinalProfile();
34  double hoProfile(double pathLength, double refDepth);
35  void doCholeskyReduction(double **cc, double **vv, const int ndim);
36  void getFluctuationVector(double *lowTriangle, double *correlationVector);
37  void setEnergyScale(double einc, const Gflash3Vector& ssp);
38 
40  double medianLateralArm(double depth, Gflash::CalorimeterNumber kCalor);
42 
43  double fTanh(double einc, const double *par);
44  double fLnE1(double einc, const double *par);
45  double depthScale(double ssp, double ssp0, double length);
46  double gammaProfile(double alpha, double beta, double depth, double lengthUnit);
47  double twoGammaProfile(double *par, double depth, Gflash::CalorimeterNumber kIndex);
48 
49  // SimActivityRegistry::G4StepSignal gflash_g4StepSignal;
50 
51 protected:
53  double theBField;
55 
58 
64 
65  std::vector<GflashHit> theGflashHitList;
66 };
67 
68 #endif
69 
70 
71 
Gflash3Vector locateHitPosition(GflashTrajectoryPoint &point, double lateralArm)
const double beta
double fTanh(double einc, const double *par)
float alpha
Definition: AMPTWrapper.h:95
double lateralPar[Gflash::kNumberCalorimeter][Gflash::Nrpar]
double twoGammaProfile(double *par, double depth, Gflash::CalorimeterNumber kIndex)
double medianLateralArm(double depth, Gflash::CalorimeterNumber kCalor)
const int Nrpar
void setEnergyScale(double einc, const Gflash3Vector &ssp)
void doCholeskyReduction(double **cc, double **vv, const int ndim)
double fLnE1(double einc, const double *par)
double gammaProfile(double alpha, double beta, double depth, double lengthUnit)
const int NPar
std::vector< GflashHit > theGflashHitList
double averageSpotEnergy[Gflash::kNumberCalorimeter]
GflashHadronShowerProfile(const edm::ParameterSet &parSet)
CLHEP::Hep3Vector Gflash3Vector
Definition: Gflash3Vector.h:6
static int position[264][3]
Definition: ReadPGInfo.cc:509
std::vector< GflashHit > & getGflashHitList()
void getFluctuationVector(double *lowTriangle, double *correlationVector)
double depthScale(double ssp, double ssp0, double length)
int getNumberOfSpots(Gflash::CalorimeterNumber kCalor)
double hoProfile(double pathLength, double refDepth)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
void initialize(int showerType, double energy, double globalTime, double charge, Gflash3Vector &position, Gflash3Vector &momentum)
double energyScale[Gflash::kNumberCalorimeter]