6 encCommonNoiseSub_(
sqrt(1.25)),
23 const double mipEqfC_120 = 120. * 67. *
qe2fc_;
25 const double cellCapacitance_120 = 50;
27 const double cellVolume_120 = 0.52 * (120.e-4);
31 const double mipEqfC_200 = 200. * 70. *
qe2fc_;
33 const double cellCapacitance_200 = 65;
35 const double cellVolume_200 = 1.18 * (200.e-4);
39 const double mipEqfC_300 = 300. * 73. *
qe2fc_;
41 const double cellCapacitance_300 = 45;
43 const double cellVolume_300 = 1.18 * (300.e-4);
65 int layer(cellId.
layer());
66 unsigned int cellThick = cellId.
type();
79 <<
" Fluence is required but no DoseMap has been passed to HGCalSiNoiseMap";
84 auto xy(
ddd()->locateCell(
89 double radius3 = radius * radius2;
90 double radius4 =
pow(radius2, 2);
112 if (gain == GainRange_t::AUTO) {
113 double desiredLSB(S / aimMIPtoADC);
114 std::vector<double> diffToPhysLSB = {fabs(desiredLSB -
lsbPerGain_[GainRange_t::q80fC]),
115 fabs(desiredLSB -
lsbPerGain_[GainRange_t::q160fC]),
116 fabs(desiredLSB -
lsbPerGain_[GainRange_t::q320fC])};
117 size_t gainIdx = std::min_element(diffToPhysLSB.begin(), diffToPhysLSB.end()) - diffToPhysLSB.begin();
double getFluenceValue(const int, const int, const radiiVec &, bool logVal=false)
std::array< double, 8 > radiiVec
const unsigned int & algo()
std::vector< std::vector< double > > cceParam_
std::vector< double > chargeAtFullScaleADCPerGain_
int cellU() const
get the cell #'s in u,v or in x,y
void setDoseMap(const std::string &, const unsigned int &)
overrides base class method with specifics for the configuration of the algo
DetId::Detector subdet() const
get the subdetector
SiCellOpCharacteristics getSiCellOpCharacteristics(const HGCSiliconDetId &did, GainRange_t gain=GainRange_t::AUTO, int aimMIPtoADC=10)
returns the charge collection efficiency and noise if gain range is set to auto, it will find the mos...
int type() const
get the type
int layer() const
get the layer #
std::array< double, 3 > cellCapacitance_
std::array< double, 3 > mipEqfC_
std::vector< std::vector< double > > encsParam_
const double encCommonNoiseSub_
double S(const TLorentzVector &, const TLorentzVector &)
void setDoseMap(const std::string &, const unsigned int)
const HGCalDDDConstants * ddd()
const doseParametersMap & getDoseMap()
std::array< double, 3 > cellVolume_
const double unitToMicro_
Power< A, B >::type pow(const A &a, const B &b)
std::vector< double > ileakParam_
std::vector< double > lsbPerGain_