CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
HcalSiPMRadiationDamage Class Reference

#include <HcalSiPMRadiationDamage.h>

Public Member Functions

double getDarkCurrent (double intlumi, unsigned index) const
 
 HcalSiPMRadiationDamage ()
 
 HcalSiPMRadiationDamage (std::vector< double > darkCurrentBase, const edm::ParameterSet &p)
 
 ~HcalSiPMRadiationDamage ()
 

Private Attributes

std::vector< double > darkCurrentBase_
 
std::vector< double > depVsNeutrons_
 
double depVsTemp_
 
double intlumiOffset_
 
double intlumiToNeutrons_
 
double temperatureBase_
 
double temperatureNew_
 

Detailed Description

Definition at line 14 of file HcalSiPMRadiationDamage.h.

Constructor & Destructor Documentation

◆ HcalSiPMRadiationDamage() [1/2]

HcalSiPMRadiationDamage::HcalSiPMRadiationDamage ( )

Definition at line 7 of file HcalSiPMRadiationDamage.cc.

◆ HcalSiPMRadiationDamage() [2/2]

HcalSiPMRadiationDamage::HcalSiPMRadiationDamage ( std::vector< double >  darkCurrentBase,
const edm::ParameterSet p 
)

Definition at line 10 of file HcalSiPMRadiationDamage.cc.

11  : darkCurrentBase_(darkCurrentBase),
12  temperatureBase_(p.getParameter<double>("temperatureBase")),
13  temperatureNew_(p.getParameter<double>("temperatureNew")),
14  intlumiOffset_(p.getParameter<double>("intlumiOffset")),
15  depVsTemp_(p.getParameter<double>("depVsTemp")),
16  intlumiToNeutrons_(p.getParameter<double>("intlumiToNeutrons")),
17  depVsNeutrons_(p.getParameter<std::vector<double>>("depVsNeutrons")) {}

◆ ~HcalSiPMRadiationDamage()

HcalSiPMRadiationDamage::~HcalSiPMRadiationDamage ( )
inline

Definition at line 18 of file HcalSiPMRadiationDamage.h.

18 {}

Member Function Documentation

◆ getDarkCurrent()

double HcalSiPMRadiationDamage::getDarkCurrent ( double  intlumi,
unsigned  index 
) const

Definition at line 20 of file HcalSiPMRadiationDamage.cc.

20  {
21  intlumi -= intlumiOffset_;
22  if (intlumi <= 0)
23  return darkCurrentBase_.at(index);
24  double darkCurrentNewLumi = darkCurrentBase_.at(index) + depVsNeutrons_.at(index) * (intlumi * intlumiToNeutrons_);
25  double darkCurrentNewTemp = darkCurrentNewLumi * std::exp(depVsTemp_ * (temperatureNew_ - temperatureBase_));
26  return darkCurrentNewTemp;
27 }

References darkCurrentBase_, depVsNeutrons_, depVsTemp_, JetChargeProducer_cfi::exp, intlumiOffset_, intlumiToNeutrons_, temperatureBase_, and temperatureNew_.

Referenced by HcalHardcodeParameters::darkCurrent().

Member Data Documentation

◆ darkCurrentBase_

std::vector<double> HcalSiPMRadiationDamage::darkCurrentBase_
private

Definition at line 25 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ depVsNeutrons_

std::vector<double> HcalSiPMRadiationDamage::depVsNeutrons_
private

Definition at line 31 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ depVsTemp_

double HcalSiPMRadiationDamage::depVsTemp_
private

Definition at line 29 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ intlumiOffset_

double HcalSiPMRadiationDamage::intlumiOffset_
private

Definition at line 28 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ intlumiToNeutrons_

double HcalSiPMRadiationDamage::intlumiToNeutrons_
private

Definition at line 30 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ temperatureBase_

double HcalSiPMRadiationDamage::temperatureBase_
private

Definition at line 26 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

◆ temperatureNew_

double HcalSiPMRadiationDamage::temperatureNew_
private

Definition at line 27 of file HcalSiPMRadiationDamage.h.

Referenced by getDarkCurrent().

HcalSiPMRadiationDamage::depVsTemp_
double depVsTemp_
Definition: HcalSiPMRadiationDamage.h:29
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
HcalSiPMRadiationDamage::temperatureNew_
double temperatureNew_
Definition: HcalSiPMRadiationDamage.h:27
HcalSiPMRadiationDamage::darkCurrentBase_
std::vector< double > darkCurrentBase_
Definition: HcalSiPMRadiationDamage.h:25
HcalSiPMRadiationDamage::depVsNeutrons_
std::vector< double > depVsNeutrons_
Definition: HcalSiPMRadiationDamage.h:31
HcalSiPMRadiationDamage::temperatureBase_
double temperatureBase_
Definition: HcalSiPMRadiationDamage.h:26
HcalSiPMRadiationDamage::intlumiOffset_
double intlumiOffset_
Definition: HcalSiPMRadiationDamage.h:28
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
JetChargeProducer_cfi.exp
exp
Definition: JetChargeProducer_cfi.py:6
HcalSiPMRadiationDamage::intlumiToNeutrons_
double intlumiToNeutrons_
Definition: HcalSiPMRadiationDamage.h:30