CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PreshowerLayer2Properties.cc
Go to the documentation of this file.
2 
3 //This class header
5 #include <cmath>
7  // Preshower : mumber of Mips / GeV
8  mips = fastDet.getParameter<double>("PreshowerLayer2_mipsPerGeV");
9  thick = fastDet.getParameter<double>("PreshowerLayer2_thickness");
10  pseeradLenIncm_ = fastDet.getUntrackedParameter<double>("PreshowerEEGapRadLenInCm", 63.);
11  pseeInteractionLength_ = fastDet.getUntrackedParameter<double>("PreshowerEEGapIntLenInCm", 111.);
12 }
13 
14 double PreshowerLayer2Properties::thickness(const double eta) const {
15  // eta is the pseudorapidity
16  double e = exp(-eta);
17  double e2 = e * e;
18  // 1 / cos theta
19  double cinv = (1. + e2) / (1. - e2);
20  // double c = (1.-e2)/(1.+e2);
21  // double s = 2.*e/(1.+e2);
22  // double t = 2.*e/(1.-e2);
23  double feta = fabs(eta);
24 
25  if (1.637 < feta && feta < 2.625) {
26  return thick * fabs(cinv);
27  } else {
28  return 0;
29  }
30 }
T getUntrackedParameter(std::string const &, T const &) const
Exp< T >::type exp(const T &t)
Definition: Exp.h:22
double thickness(const double eta) const override
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
PreshowerLayer2Properties(const edm::ParameterSet &fastDet)