CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_6/src/FastSimulation/CalorimeterProperties/src/PreshowerLayer2Properties.cc

Go to the documentation of this file.
00001 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00002 
00003 //This class header
00004 #include "FastSimulation/CalorimeterProperties/interface/PreshowerLayer2Properties.h"
00005 #include <cmath>
00006 PreshowerLayer2Properties::PreshowerLayer2Properties(const edm::ParameterSet& fastDet) : PreshowerProperties()
00007 {
00008        // Preshower : mumber of Mips / GeV 
00009   mips = fastDet.getParameter<double>("PreshowerLayer2_mipsPerGeV");
00010   thick = fastDet.getParameter<double>("PreshowerLayer2_thickness");
00011   pseeradLenIncm_ = fastDet.getUntrackedParameter<double>("PreshowerEEGapRadLenInCm",63.);
00012   pseeInteractionLength_ = fastDet.getUntrackedParameter<double>("PreshowerEEGapIntLenInCm",111.);
00013 }
00014 
00015 double PreshowerLayer2Properties::thickness(const double eta) const { 
00016   
00017   // eta is the pseudorapidity
00018   double e  = exp(-eta);
00019   double e2 = e*e;
00020   // 1 / cos theta
00021   double cinv  = (1.+e2)/(1.-e2);
00022   //    double c  = (1.-e2)/(1.+e2);
00023   //    double s  = 2.*e/(1.+e2);
00024   //    double t  = 2.*e/(1.-e2);
00025   double feta = fabs(eta);
00026   
00027   if ( 1.637 < feta && feta < 2.625 ) 
00028     {
00029       return thick * fabs(cinv); 
00030     }
00031   else
00032     {
00033       return 0;
00034     }
00035   
00036 }