CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Attributes | Private Attributes | Static Private Attributes
HFDarkening Class Reference

#include <HFDarkening.h>

Public Member Functions

double degradation (double mrad)
 
double dose (unsigned int layer, double radius)
 
 HFDarkening (const edm::ParameterSet &pset)
 
double int_lumi (double intlumi)
 
 ~HFDarkening ()
 

Static Public Attributes

static const unsigned int lowZLimit = 1115
 
static const unsigned int numberOfRLayers = 13
 
static const unsigned int numberOfZLayers = 33
 
static const unsigned int upperZLimit = 1280
 

Private Attributes

double HFDoseLayerDarkeningPars [numberOfZLayers][numberOfRLayers]
 

Static Private Attributes

static const unsigned int _numberOfRLayers = numberOfRLayers
 
static const unsigned int _numberOfZLayers = numberOfZLayers
 

Detailed Description

Definition at line 14 of file HFDarkening.h.

Constructor & Destructor Documentation

HFDarkening::HFDarkening ( const edm::ParameterSet pset)

Definition at line 17 of file HFDarkening.cc.

References edm::ParameterSet::getParameter(), mps_fire::i, dttmaxenums::R, and BeamSpotPI::Z.

17  {
18  //HF area of consideration is 1115 cm from interaction point to 1280cm in z-axis
19  //Radius (cm) - 13 cm from Beam pipe to 130cm (the top of HF active area)
20  //Dose in MRad
21 
22  vecOfDoubles HFDosePars = pset.getParameter<vecOfDoubles>("doseLayerDepth");
23  int i = 0;
24  for (int Z = 0; Z != _numberOfZLayers; ++Z) {
25  for (int R = 0; R != _numberOfRLayers; ++R) {
26  HFDoseLayerDarkeningPars[Z][R] = HFDosePars[i];
27  ++i;
28  }
29  }
30 }
std::vector< double > vecOfDoubles
static const unsigned int _numberOfZLayers
Definition: HFDarkening.h:32
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
double HFDoseLayerDarkeningPars[numberOfZLayers][numberOfRLayers]
Definition: HFDarkening.h:31
static const unsigned int _numberOfRLayers
Definition: HFDarkening.h:33
HFDarkening::~HFDarkening ( )

Definition at line 32 of file HFDarkening.cc.

32 {}

Member Function Documentation

double HFDarkening::degradation ( double  mrad)

Definition at line 75 of file HFDarkening.cc.

References funct::exp(), and funct::pow().

75 { return (exp(-1.44 * pow(mrad / 100, 0.44) * 0.2 / 4.343)); }
Exp< T >::type exp(const T &t)
Definition: Exp.h:22
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
double HFDarkening::dose ( unsigned int  layer,
double  radius 
)

Definition at line 34 of file HFDarkening.cc.

References phase1PixelTopology::layer, and CosmicsPD_Skims::radius.

34  {
35  // Radii are 13-17, 17-20, 20-24, 24-29, 29-34, 34-41, 41-48, 48-58, 58-69, 69-82, 82-98, 98-116, 116-130
36  // These radii are specific to the geometry of the dose map, which closely matches HF Tower Geometry,
37  // but not exactly.
38  if (layer > (_numberOfZLayers - 1)) {
39  return 0.;
40  }
41 
42  int radius = 0;
43  if (Radius <= 17.0)
44  radius = 0;
45  else if (Radius <= 20.0)
46  radius = 1;
47  else if (Radius <= 24.0)
48  radius = 2;
49  else if (Radius <= 29.0)
50  radius = 3;
51  else if (Radius <= 34.0)
52  radius = 4;
53  else if (Radius <= 41.0)
54  radius = 5;
55  else if (Radius <= 48.0)
56  radius = 6;
57  else if (Radius <= 58.0)
58  radius = 7;
59  else if (Radius <= 69.0)
60  radius = 8;
61  else if (Radius <= 82.0)
62  radius = 9;
63  else if (Radius <= 98.0)
64  radius = 10;
65  else if (Radius <= 116.0)
66  radius = 11;
67  else if (Radius <= 130.0)
68  radius = 12;
69  else
70  return 0.;
71 
73 }
constexpr std::array< uint8_t, layerIndexSize > layer
static const unsigned int _numberOfZLayers
Definition: HFDarkening.h:32
double HFDoseLayerDarkeningPars[numberOfZLayers][numberOfRLayers]
Definition: HFDarkening.h:31
double HFDarkening::int_lumi ( double  intlumi)

Definition at line 77 of file HFDarkening.cc.

77 { return (intlumi / 500.); }

Member Data Documentation

const unsigned int HFDarkening::_numberOfRLayers = numberOfRLayers
staticprivate

Definition at line 33 of file HFDarkening.h.

const unsigned int HFDarkening::_numberOfZLayers = numberOfZLayers
staticprivate

Definition at line 32 of file HFDarkening.h.

double HFDarkening::HFDoseLayerDarkeningPars[numberOfZLayers][numberOfRLayers]
private

Definition at line 31 of file HFDarkening.h.

const unsigned int HFDarkening::lowZLimit = 1115
static

Definition at line 27 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().

const unsigned int HFDarkening::numberOfRLayers = 13
static

Definition at line 25 of file HFDarkening.h.

const unsigned int HFDarkening::numberOfZLayers = 33
static

Definition at line 24 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().

const unsigned int HFDarkening::upperZLimit = 1280
static

Definition at line 28 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().