18 short_R.push_back(0.995);
20 short_R_29.push_back(0.995);
21 short_Energy_Thresh.clear();
22 short_Energy_Thresh.push_back(50);
23 short_ET_Thresh.clear();
24 short_ET_Thresh.push_back(0);
27 long_R.push_back(0.995);
29 long_R_29.push_back(0.995);
30 long_Energy_Thresh.clear();
31 long_Energy_Thresh.push_back(50);
32 long_ET_Thresh.clear();
33 long_ET_Thresh.push_back(0);
38 std::vector<double> shortEnergyParams,
39 std::vector<double> shortETParams,
40 std::vector<double> longR,
41 std::vector<double> longEnergyParams,
42 std::vector<double> longETParams,
44 std::vector<double> shortR29,
45 std::vector<double> longR29)
50 short_R_29 = shortR29;
54 short_Energy_Thresh.clear();
55 short_ET_Thresh.clear();
56 long_Energy_Thresh.clear();
57 long_ET_Thresh.clear();
60 short_Energy_Thresh=shortEnergyParams;
61 short_ET_Thresh=shortETParams;
62 long_Energy_Thresh=longEnergyParams;
63 long_ET_Thresh=longETParams;
65 flagsToSkip_=flagsToSkip;
84 double ET = energy/fabs(cosh(fEta));
87 double ETthresh=0, Energythresh=0;
91 Energythresh = long_Energy_Thresh[
abs(ieta)-29];
92 ETthresh = long_ET_Thresh[
abs(ieta)-29];
96 Energythresh = short_Energy_Thresh[
abs(ieta)-29];
97 ETthresh = short_ET_Thresh[
abs(ieta)-29];
100 if (energy<Energythresh || ET < ETthresh)
125 if ((flagsToSkip_&part->flags())==0)
126 Ratio=(energy-part->energy())/(energy+part->energy());
129 double RatioThresh=0;
133 if (depth==1) RatioThresh=CalcThreshold(energy,long_R_29);
134 else if (depth==2) RatioThresh=CalcThreshold(energy,short_R_29);
138 if (depth==1) RatioThresh=CalcThreshold(energy,long_R);
139 else if (depth==2) RatioThresh=CalcThreshold(energy,short_R);
141 if (Ratio<=RatioThresh)
166 threshold+=params[
i]*
pow(abs_x, (
int)
i);
void setFlagField(uint32_t value, int base, int width=1)
std::vector< T >::const_iterator const_iterator
uint32_t rawId() const
get the raw id
void HFSetFlagFromPET(HFRecHit &hf, HFRecHitCollection &rec, HcalChannelQuality *myqual, const HcalSeverityLevelComputer *mySeverity)
int depth() const
get the tower depth
int ieta() const
get the cell ieta
bool dropChannel(const uint32_t &mystatus) const
const_iterator end() const
int iphi() const
get the cell iphi
static const double theHFEtaBounds[]
iterator find(key_type k)
HcalDetId id() const
get the id
uint32_t getValue() const
const Item * getValues(DetId fId) const
Power< A, B >::type pow(const A &a, const B &b)
double CalcThreshold(double abs_energy, std::vector< double > params)