CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/FastSimulation/CalorimeterProperties/interface/ECALProperties.h

Go to the documentation of this file.
00001 #ifndef ECALProperties_H
00002 #define ECALProperties_H
00003 
00004 #include "FastSimulation/CalorimeterProperties/interface/CalorimeterProperties.h"
00005 
00015 class ECALProperties : public CalorimeterProperties 
00016 {
00017 
00018  public:
00019 
00020   ECALProperties() { } 
00021 
00022   virtual ~ECALProperties() {
00023   }
00024 
00026   inline double theAeff() const { return 170.87; }
00027 
00029   inline double theZeff() const { return 68.36; }
00030 
00032   inline double rho() const { return 8.280; }
00033 
00035   //  inline double radLenIncm()  const { return radiationLengthIncm(); }
00036   inline double radLenIncm()  const { return 0.89; }
00037 
00039   // This is needed in Calorimetry/CrystalSegment. Patrick, if you don't like it, give
00040   // me an other solution to access the ECALProperties efficiently. 
00041   // static inline double radiationLengthIncm() { return 0.89; }
00042 
00044   inline double radLenIngcm2() const { return 7.37; }
00045 
00047   inline   double moliereRadius() const { return 2.190; }
00048   //inline double moliereRadius()  const { return 2.4; }
00049 
00051   inline double criticalEnergy() const { return 8.74E-3; }
00052 
00054   inline double interactionLength() const { return 18.5; }
00055 
00057   virtual double photoStatistics() const=0;
00058 
00060   virtual double lightCollectionEfficiency() const=0;
00061 
00063   virtual double lightCollectionUniformity() const=0;
00064 
00065  protected:
00066 
00067   double lightColl;
00068 
00069 };
00070 
00071 #endif