Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 13:26:35

0001 #ifndef CalorimeterProperties_H
0002 #define CalorimeterProperties_H
0003 
0004 /** 
0005  * Base class for calorimeter properties
0006  *
0007  * \author Patrick Janot
0008  * \date: 25-Jan-2004
0009  */
0010 
0011 class CalorimeterProperties {
0012 public:
0013   CalorimeterProperties() {}
0014 
0015   virtual ~CalorimeterProperties() { ; }
0016 
0017   /// Effective A
0018   virtual double theAeff() const = 0;
0019 
0020   /// Effective Z
0021   virtual double theZeff() const = 0;
0022 
0023   /// Density in g/cm3
0024   virtual double rho() const = 0;
0025 
0026   /// Radiation length in cm
0027   virtual double radLenIncm() const = 0;
0028 
0029   /// Radiation length in g/cm^2
0030   virtual double radLenIngcm2() const = 0;
0031 
0032   /// Moliere Radius in cm
0033   virtual double moliereRadius() const = 0;
0034 
0035   /// Critical energy in GeV (2.66E-3*(x0*Z/A)^1.1)
0036   virtual double criticalEnergy() const = 0;
0037 
0038   ///Interaction length in cm
0039   virtual double interactionLength() const = 0;
0040 
0041   ///Thickness (in cm) of the homegeneous material as a function of rapidity
0042   virtual double thickness(double eta) const = 0;
0043 
0044 private:
0045 };
0046 
0047 #endif