CMS 3D CMS Logo

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::HFDarkening ( const edm::ParameterSet pset)

Definition at line 15 of file HFDarkening.cc.

References _numberOfRLayers, _numberOfZLayers, HFDoseLayerDarkeningPars, mps_fire::i, muonDTDigis_cfi::pset, dttmaxenums::R, and beamSpotPI::Z.

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

◆ ~HFDarkening()

HFDarkening::~HFDarkening ( )

Definition at line 30 of file HFDarkening.cc.

30 {}

Member Function Documentation

◆ degradation()

double HFDarkening::degradation ( double  mrad)

Definition at line 73 of file HFDarkening.cc.

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

73 { return (exp(-1.44 * pow(mrad / 100, 0.44) * 0.2 / 4.343)); }
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29

◆ dose()

double HFDarkening::dose ( unsigned int  layer,
double  radius 
)

Definition at line 32 of file HFDarkening.cc.

References _numberOfZLayers, HFDoseLayerDarkeningPars, nano_mu_digi_cff::layer, and CosmicsPD_Skims::radius.

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

◆ int_lumi()

double HFDarkening::int_lumi ( double  intlumi)

Definition at line 75 of file HFDarkening.cc.

References submitPVValidationJobs::intlumi.

75 { return (intlumi / 500.); }

Member Data Documentation

◆ _numberOfRLayers

const unsigned int HFDarkening::_numberOfRLayers = numberOfRLayers
staticprivate

Definition at line 33 of file HFDarkening.h.

Referenced by HFDarkening().

◆ _numberOfZLayers

const unsigned int HFDarkening::_numberOfZLayers = numberOfZLayers
staticprivate

Definition at line 32 of file HFDarkening.h.

Referenced by dose(), and HFDarkening().

◆ HFDoseLayerDarkeningPars

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

Definition at line 31 of file HFDarkening.h.

Referenced by dose(), and HFDarkening().

◆ lowZLimit

const unsigned int HFDarkening::lowZLimit = 1115
static

Definition at line 27 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().

◆ numberOfRLayers

const unsigned int HFDarkening::numberOfRLayers = 13
static

Definition at line 25 of file HFDarkening.h.

◆ numberOfZLayers

const unsigned int HFDarkening::numberOfZLayers = 33
static

Definition at line 24 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().

◆ upperZLimit

const unsigned int HFDarkening::upperZLimit = 1280
static

Definition at line 28 of file HFDarkening.h.

Referenced by HCalSD::getFromLibrary().