CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
ECALEndcapProperties Class Reference

#include <ECALEndcapProperties.h>

Inheritance diagram for ECALEndcapProperties:
ECALProperties CalorimeterProperties

Public Member Functions

 ECALEndcapProperties (const edm::ParameterSet &fastDet)
 
double lightCollectionEfficiency () const
 Light Collection efficiency [Default : 3.0%]. More...
 
double lightCollectionUniformity () const
 Light Collection uniformity 0.003 for Standard ECAL. More...
 
double photoStatistics () const
 Photostatistics (photons/GeV) in the homegeneous material: 50E3 for Standard ECAL. More...
 
double thickness (double eta) const
 Thickness (in cm): 22.0 for Standard ECAL. More...
 
virtual ~ECALEndcapProperties ()
 
- Public Member Functions inherited from ECALProperties
double criticalEnergy () const
 Critical energy in GeV (2.66E-3*(x0*Z/A)^1.1): 8.74E-3 for Standard ECAL. More...
 
 ECALProperties ()
 
double ehat () const
 ehat = e/mip of the calorimeter. 0 for homogeneous one More...
 
double interactionLength () const
 Interaction length in cm: 18.5 for Standard ECAL. More...
 
bool isHom () const
 a rough estimate of ECAL resolution sigma/E = resE/sqrt(E) More...
 
double moliereRadius () const
 Moliere Radius in cm : 2.190 for Standard ECAL. More...
 
double radLenIncm () const
 Radiation length in cm. More...
 
double radLenIngcm2 () const
 Radiation length in cm but static. More...
 
double resE () const
 a rough estimate of ECAL resolution sigma/E = resE/sqrt(E) More...
 
double rho () const
 Density in g/cm3: 8.280 for Standard ECAL. More...
 
double theAeff () const
 Effective A: 170.87 for Standard ECAL. More...
 
double theFs () const
 Sampling fraction Fs of the calorimeter. 0 for homogeneous one. More...
 
double theZeff () const
 Effective Z: 68.36 for Standard ECAL. More...
 
virtual ~ECALProperties ()
 
- Public Member Functions inherited from CalorimeterProperties
 CalorimeterProperties ()
 
virtual ~CalorimeterProperties ()
 

Additional Inherited Members

- Protected Attributes inherited from ECALProperties
double Aeff_
 
bool bHom_
 
double criticalEnergy_
 
double ehat_
 
double Fs_
 
double interactionLength_
 
double lightColl_
 
double lightCollUnif_
 
double moliereRadius_
 
double photoStatistics_
 
double radLenIncm_
 
double radLenIngcm2_
 
double resE_
 
double rho_
 
const double scaleEnergy_
 
double thickness_
 
double Zeff_
 

Detailed Description

Definition at line 19 of file ECALEndcapProperties.h.

Constructor & Destructor Documentation

ECALEndcapProperties::ECALEndcapProperties ( const edm::ParameterSet fastDet)

Definition at line 9 of file ECALEndcapProperties.cc.

References ECALProperties::Aeff_, ECALProperties::bHom_, ECALProperties::criticalEnergy_, debug, ECALProperties::ehat_, ECALProperties::Fs_, edm::ParameterSet::getParameter(), ECALProperties::interactionLength_, ECALProperties::lightColl_, ECALProperties::lightCollUnif_, LogDebug, ECALProperties::moliereRadius_, ECALProperties::photoStatistics_, ECALProperties::radLenIncm_, ECALProperties::radLenIngcm2_, ECALProperties::resE_, ECALProperties::rho_, ECALProperties::scaleEnergy_, ECALProperties::thickness_, and ECALProperties::Zeff_.

10 {
11 
12  using namespace std;
13 
14  edm::ParameterSet fastDetEndcap = fastDet.getParameter<edm::ParameterSet>("EndcapCalorimeterProperties");
15 
16  lightColl_ = fastDetEndcap.getParameter<double>("lightColl");
17  lightCollUnif_ = fastDetEndcap.getParameter<double>("lightCollUnif");
18  photoStatistics_ = fastDetEndcap.getParameter<double>("photoStatistics");
19  thickness_ = fastDetEndcap.getParameter<double>("thickness");
20  interactionLength_ = fastDetEndcap.getParameter<double>("interactionLength");
21 
22  Aeff_ = fastDetEndcap.getParameter<double>("Aeff");
23  Zeff_ = fastDetEndcap.getParameter<double>("Zeff");
24  rho_ = fastDetEndcap.getParameter<double>("rho");
25  radLenIngcm2_ = fastDetEndcap.getParameter<double>("radLenIngcm2");
26 
27  // Parameters that might be calculated out of the formulas
28 
29  radLenIncm_ = fastDetEndcap.getParameter<double>("radLenIncm");
31 
32  criticalEnergy_ = fastDetEndcap.getParameter<double>("criticalEnergy");
33  criticalEnergy_ = (criticalEnergy_ < 0) ? 2.66E-3*TMath::Power((radLenIngcm2_*Zeff_/Aeff_),1.1) : criticalEnergy_;
34 
35  moliereRadius_ = fastDetEndcap.getParameter<double>("moliereRadius");
37 
38  Fs_ = fastDetEndcap.getParameter<double>("Fs");
39  ehat_ = fastDetEndcap.getParameter<double>("ehat");
40  resE_ = fastDetEndcap.getParameter<double>("resE");
41 
42  bHom_ = fastDetEndcap.getParameter<bool>("bHom");
43 
44  bool debug = fastDetEndcap.getParameter<bool>("debug");
45 
46  if (debug)
47  LogDebug("ECALEndcapProperties") <<" ========== Endcap ========= " << endl
48  <<" \t\t isHom ? " << bHom_ << endl
49  <<" lightColl = " << lightColl_ << endl
50  <<" lightCollUnif_ = " << lightCollUnif_ << endl
51  <<" photoStatistics_ = " << photoStatistics_ << endl
52  <<" thickness_ = " << thickness_ << endl
53  <<" interactionLength_ = " << interactionLength_ << endl
54  <<" Aeff_ = " << Aeff_ << endl
55  <<" Zeff_ = " << Zeff_ << endl
56  <<" rho_ = " << rho_ << endl
57  <<" radLenIngcm2_ = " << radLenIngcm2_ << endl
58  <<" radLenIncm_ = " << radLenIncm_ << endl
59  <<" moliereRadius_ = " << moliereRadius_ << endl
60  <<" criticalEnergy_ = " << criticalEnergy_ << endl
61  <<" scaleEnergy_ = " << scaleEnergy_ << endl
62  <<" Fs = " << Fs_ << " ehat = " << ehat_ << " resE = " << resE_ << endl;
63 
64 
65 }
#define LogDebug(id)
T getParameter(std::string const &) const
const double scaleEnergy_
double moliereRadius_
double criticalEnergy_
double radLenIngcm2_
double lightCollUnif_
double interactionLength_
double photoStatistics_
#define debug
Definition: MEtoEDMFormat.h:34
virtual ECALEndcapProperties::~ECALEndcapProperties ( )
inlinevirtual

Definition at line 26 of file ECALEndcapProperties.h.

26 { }

Member Function Documentation

double ECALEndcapProperties::lightCollectionEfficiency ( ) const
inlinevirtual

Light Collection efficiency [Default : 3.0%].

Implements ECALProperties.

Definition at line 35 of file ECALEndcapProperties.h.

References ECALProperties::lightColl_.

35 { return lightColl_; }
double ECALEndcapProperties::lightCollectionUniformity ( ) const
inlinevirtual

Light Collection uniformity 0.003 for Standard ECAL.

Implements ECALProperties.

Definition at line 38 of file ECALEndcapProperties.h.

References ECALProperties::lightCollUnif_.

38 {return lightCollUnif_;}
double lightCollUnif_
double ECALEndcapProperties::photoStatistics ( ) const
inlinevirtual

Photostatistics (photons/GeV) in the homegeneous material: 50E3 for Standard ECAL.

Implements ECALProperties.

Definition at line 32 of file ECALEndcapProperties.h.

References ECALProperties::photoStatistics_.

32 { return photoStatistics_; }
double photoStatistics_
double ECALEndcapProperties::thickness ( double  eta) const
inlinevirtual

Thickness (in cm): 22.0 for Standard ECAL.

Implements CalorimeterProperties.

Definition at line 29 of file ECALEndcapProperties.h.

References ECALProperties::thickness_.

29 { return thickness_; }