CMS 3D CMS Logo

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

#include <HcalNoiseAlgo.h>

Public Member Functions

 HcalNoiseAlgo (const edm::ParameterSet &iConfig)
 
bool isProblematic (const CommonHcalNoiseRBXData &) const
 
bool passEMFThreshold (const CommonHcalNoiseRBXData &) const
 
bool passHighLevelNoiseFilter (const CommonHcalNoiseRBXData &) const
 
bool passLooseHits (const CommonHcalNoiseRBXData &) const
 
bool passLooseNoiseFilter (const CommonHcalNoiseRBXData &) const
 
bool passLooseRatio (const CommonHcalNoiseRBXData &) const
 
bool passLooseRBXRechitR45 (const CommonHcalNoiseRBXData &) const
 
bool passLooseTiming (const CommonHcalNoiseRBXData &) const
 
bool passLooseZeros (const CommonHcalNoiseRBXData &) const
 
bool passRatioThreshold (const CommonHcalNoiseRBXData &) const
 
bool passTightHits (const CommonHcalNoiseRBXData &) const
 
bool passTightNoiseFilter (const CommonHcalNoiseRBXData &) const
 
bool passTightRatio (const CommonHcalNoiseRBXData &) const
 
bool passTightRBXRechitR45 (const CommonHcalNoiseRBXData &) const
 
bool passTightTiming (const CommonHcalNoiseRBXData &) const
 
bool passTightZeros (const CommonHcalNoiseRBXData &) const
 
bool passZerosThreshold (const CommonHcalNoiseRBXData &) const
 
virtual ~HcalNoiseAlgo ()
 

Private Attributes

double hlMaxHPDEMF_
 
double hlMaxRBXEMF_
 
double lMaxHighEHitTime_
 
double lMaxLowEHitTime_
 
double lMaxRatio_
 
double lMinHighEHitTime_
 
int lMinHPDHits_
 
int lMinHPDNoOtherHits_
 
double lMinLowEHitTime_
 
double lMinRatio_
 
int lMinRBXHits_
 
std::vector< double > lMinRBXRechitR45Cuts_
 
int lMinZeros_
 
double minEEMF_
 
double minERatio_
 
double minEZeros_
 
double pMaxHighEHitTime_
 
double pMaxHPDEMF_
 
double pMaxLowEHitTime_
 
double pMaxRatio_
 
double pMaxRBXEMF_
 
double pMinE_
 
double pMinEEMF_
 
double pMinERatio_
 
double pMinEZeros_
 
double pMinHighEHitTime_
 
int pMinHPDHits_
 
int pMinHPDNoOtherHits_
 
double pMinLowEHitTime_
 
double pMinRatio_
 
int pMinRBXHits_
 
int pMinRBXRechitR45Count_
 
double pMinRBXRechitR45EnergyFraction_
 
double pMinRBXRechitR45Fraction_
 
int pMinZeros_
 
double tMaxHighEHitTime_
 
double tMaxLowEHitTime_
 
double tMaxRatio_
 
double tMinHighEHitTime_
 
int tMinHPDHits_
 
int tMinHPDNoOtherHits_
 
double tMinLowEHitTime_
 
double tMinRatio_
 
int tMinRBXHits_
 
std::vector< double > tMinRBXRechitR45Cuts_
 
int tMinZeros_
 

Detailed Description

Definition at line 75 of file HcalNoiseAlgo.h.

Constructor & Destructor Documentation

HcalNoiseAlgo::HcalNoiseAlgo ( const edm::ParameterSet iConfig)

Definition at line 107 of file HcalNoiseAlgo.cc.

References edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), hlMaxHPDEMF_, hlMaxRBXEMF_, lMaxHighEHitTime_, lMaxLowEHitTime_, lMaxRatio_, lMinHighEHitTime_, lMinHPDHits_, lMinHPDNoOtherHits_, lMinLowEHitTime_, lMinRatio_, lMinRBXHits_, lMinRBXRechitR45Cuts_, lMinZeros_, minEEMF_, minERatio_, minEZeros_, pMaxHighEHitTime_, pMaxHPDEMF_, pMaxLowEHitTime_, pMaxRatio_, pMaxRBXEMF_, pMinE_, pMinEEMF_, pMinERatio_, pMinEZeros_, pMinHighEHitTime_, pMinHPDHits_, pMinHPDNoOtherHits_, pMinLowEHitTime_, pMinRatio_, pMinRBXHits_, pMinRBXRechitR45Count_, pMinRBXRechitR45EnergyFraction_, pMinRBXRechitR45Fraction_, pMinZeros_, tMaxHighEHitTime_, tMaxLowEHitTime_, tMaxRatio_, tMinHighEHitTime_, tMinHPDHits_, tMinHPDNoOtherHits_, tMinLowEHitTime_, tMinRatio_, tMinRBXHits_, tMinRBXRechitR45Cuts_, and tMinZeros_.

108 {
109  pMinERatio_ = iConfig.getParameter<double>("pMinERatio");
110  pMinEZeros_ = iConfig.getParameter<double>("pMinEZeros");
111  pMinEEMF_ = iConfig.getParameter<double>("pMinEEMF");
112 
113  minERatio_ = iConfig.getParameter<double>("minERatio");
114  minEZeros_ = iConfig.getParameter<double>("minEZeros");
115  minEEMF_ = iConfig.getParameter<double>("minEEMF");
116 
117  pMinE_ = iConfig.getParameter<double>("pMinE");
118  pMinRatio_ = iConfig.getParameter<double>("pMinRatio");
119  pMaxRatio_ = iConfig.getParameter<double>("pMaxRatio");
120  pMinHPDHits_ = iConfig.getParameter<int>("pMinHPDHits");
121  pMinRBXHits_ = iConfig.getParameter<int>("pMinRBXHits");
122  pMinHPDNoOtherHits_ = iConfig.getParameter<int>("pMinHPDNoOtherHits");
123  pMinZeros_ = iConfig.getParameter<int>("pMinZeros");
124  pMinLowEHitTime_ = iConfig.getParameter<double>("pMinLowEHitTime");
125  pMaxLowEHitTime_ = iConfig.getParameter<double>("pMaxLowEHitTime");
126  pMinHighEHitTime_ = iConfig.getParameter<double>("pMinHighEHitTime");
127  pMaxHighEHitTime_ = iConfig.getParameter<double>("pMaxHighEHitTime");
128  pMaxHPDEMF_ = iConfig.getParameter<double>("pMaxHPDEMF");
129  pMaxRBXEMF_ = iConfig.getParameter<double>("pMaxRBXEMF");
130 
131  if(iConfig.existsAs<int>("pMinRBXRechitR45Count"))
132  pMinRBXRechitR45Count_ = iConfig.getParameter<int>("pMinRBXRechitR45Count");
133  else
135  if(iConfig.existsAs<double>("pMinRBXRechitR45Fraction"))
136  pMinRBXRechitR45Fraction_ = iConfig.getParameter<double>("pMinRBXRechitR45Fraction");
137  else
139  if(iConfig.existsAs<double>("pMinRBXRechitR45EnergyFraction"))
140  pMinRBXRechitR45EnergyFraction_ = iConfig.getParameter<double>("pMinRBXRechitR45EnergyFraction");
141  else
143 
144  lMinRatio_ = iConfig.getParameter<double>("lMinRatio");
145  lMaxRatio_ = iConfig.getParameter<double>("lMaxRatio");
146  lMinHPDHits_ = iConfig.getParameter<int>("lMinHPDHits");
147  lMinRBXHits_ = iConfig.getParameter<int>("lMinRBXHits");
148  lMinHPDNoOtherHits_ = iConfig.getParameter<int>("lMinHPDNoOtherHits");
149  lMinZeros_ = iConfig.getParameter<int>("lMinZeros");
150  lMinLowEHitTime_ = iConfig.getParameter<double>("lMinLowEHitTime");
151  lMaxLowEHitTime_ = iConfig.getParameter<double>("lMaxLowEHitTime");
152  lMinHighEHitTime_ = iConfig.getParameter<double>("lMinHighEHitTime");
153  lMaxHighEHitTime_ = iConfig.getParameter<double>("lMaxHighEHitTime");
154 
155  if(iConfig.existsAs<std::vector<double> >("lRBXRecHitR45Cuts"))
156  lMinRBXRechitR45Cuts_ = iConfig.getParameter<std::vector<double> >("lRBXRecHitR45Cuts");
157  else
158  {
159  double defaultCut[4] = {-999, -999, -999, -999};
160  lMinRBXRechitR45Cuts_ = std::vector<double>(defaultCut, defaultCut + 4);
161  }
162 
163  tMinRatio_ = iConfig.getParameter<double>("tMinRatio");
164  tMaxRatio_ = iConfig.getParameter<double>("tMaxRatio");
165  tMinHPDHits_ = iConfig.getParameter<int>("tMinHPDHits");
166  tMinRBXHits_ = iConfig.getParameter<int>("tMinRBXHits");
167  tMinHPDNoOtherHits_ = iConfig.getParameter<int>("tMinHPDNoOtherHits");
168  tMinZeros_ = iConfig.getParameter<int>("tMinZeros");
169  tMinLowEHitTime_ = iConfig.getParameter<double>("tMinLowEHitTime");
170  tMaxLowEHitTime_ = iConfig.getParameter<double>("tMaxLowEHitTime");
171  tMinHighEHitTime_ = iConfig.getParameter<double>("tMinHighEHitTime");
172  tMaxHighEHitTime_ = iConfig.getParameter<double>("tMaxHighEHitTime");
173 
174  if(iConfig.existsAs<std::vector<double> >("tRBXRecHitR45Cuts"))
175  tMinRBXRechitR45Cuts_ = iConfig.getParameter<std::vector<double> >("tRBXRecHitR45Cuts");
176  else
177  {
178  double defaultCut[4] = {-999, -999, -999, -999};
179  tMinRBXRechitR45Cuts_ = std::vector<double>(defaultCut, defaultCut + 4);
180  }
181 
182  hlMaxHPDEMF_ = iConfig.getParameter<double>("hlMaxHPDEMF");
183  hlMaxRBXEMF_ = iConfig.getParameter<double>("hlMaxRBXEMF");
184 }
T getParameter(std::string const &) const
double pMaxHPDEMF_
bool existsAs(std::string const &parameterName, bool trackiness=true) const
checks if a parameter exists as a given type
Definition: ParameterSet.h:186
double hlMaxRBXEMF_
double pMinERatio_
int pMinRBXRechitR45Count_
double pMinHighEHitTime_
std::vector< double > lMinRBXRechitR45Cuts_
double tMaxHighEHitTime_
double lMaxHighEHitTime_
double pMinEZeros_
double pMinRBXRechitR45EnergyFraction_
double tMinHighEHitTime_
double pMaxHighEHitTime_
std::vector< double > tMinRBXRechitR45Cuts_
double lMinLowEHitTime_
double pMinRBXRechitR45Fraction_
double tMinLowEHitTime_
double pMaxLowEHitTime_
double pMinLowEHitTime_
double pMaxRBXEMF_
double lMaxLowEHitTime_
double lMinHighEHitTime_
double tMaxLowEHitTime_
double hlMaxHPDEMF_
virtual HcalNoiseAlgo::~HcalNoiseAlgo ( )
inlinevirtual

Definition at line 80 of file HcalNoiseAlgo.h.

80 {}

Member Function Documentation

bool HcalNoiseAlgo::isProblematic ( const CommonHcalNoiseRBXData data) const

Definition at line 186 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::energy(), CommonHcalNoiseRBXData::HPDEMF(), CommonHcalNoiseRBXData::maxHighEHitTime(), CommonHcalNoiseRBXData::maxLowEHitTime(), CommonHcalNoiseRBXData::minHighEHitTime(), CommonHcalNoiseRBXData::minLowEHitTime(), CommonHcalNoiseRBXData::numHPDHits(), CommonHcalNoiseRBXData::numHPDNoOtherHits(), CommonHcalNoiseRBXData::numRBXHits(), CommonHcalNoiseRBXData::numZeros(), pMaxHighEHitTime_, pMaxHPDEMF_, pMaxLowEHitTime_, pMaxRatio_, pMaxRBXEMF_, pMinE_, pMinEEMF_, pMinERatio_, pMinEZeros_, pMinHighEHitTime_, pMinHPDHits_, pMinHPDNoOtherHits_, pMinLowEHitTime_, pMinRatio_, pMinRBXHits_, pMinRBXRechitR45Count_, pMinRBXRechitR45EnergyFraction_, pMinRBXRechitR45Fraction_, pMinZeros_, CommonHcalNoiseRBXData::r45Count(), CommonHcalNoiseRBXData::r45EnergyFraction(), CommonHcalNoiseRBXData::r45Fraction(), CommonHcalNoiseRBXData::ratio(), CommonHcalNoiseRBXData::RBXEMF(), and CommonHcalNoiseRBXData::validRatio().

Referenced by reco::HcalNoiseInfoProducer::produce().

187 {
188  if(data.energy()>pMinE_) return true;
189  if(data.validRatio() && data.energy()>pMinERatio_ && data.ratio()<pMinRatio_) return true;
190  if(data.validRatio() && data.energy()>pMinERatio_ && data.ratio()>pMaxRatio_) return true;
191  if(data.numHPDHits()>=pMinHPDHits_) return true;
192  if(data.numRBXHits()>=pMinRBXHits_) return true;
193  if(data.numHPDNoOtherHits()>=pMinHPDNoOtherHits_) return true;
194  if(data.numZeros()>=pMinZeros_ && data.energy()>pMinEZeros_) return true;
195  if(data.minLowEHitTime()<pMinLowEHitTime_) return true;
196  if(data.maxLowEHitTime()>pMaxLowEHitTime_) return true;
197  if(data.minHighEHitTime()<pMinHighEHitTime_) return true;
198  if(data.maxHighEHitTime()>pMaxHighEHitTime_) return true;
199  if(data.HPDEMF()<pMaxHPDEMF_ && data.energy()>pMinEEMF_) return true;
200  if(data.RBXEMF()<pMaxRBXEMF_ && data.energy()>pMinEEMF_) return true;
201  if(data.r45Count() >= pMinRBXRechitR45Count_) return true;
202  if(data.r45Fraction() >= pMinRBXRechitR45Fraction_) return true;
203  if(data.r45EnergyFraction() >= pMinRBXRechitR45EnergyFraction_) return true;
204 
205  return false;
206 }
double HPDEMF(void) const
Definition: HcalNoiseAlgo.h:38
double pMaxHPDEMF_
double minLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:29
double pMinERatio_
double maxHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:34
double maxLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:30
int pMinRBXRechitR45Count_
double pMinHighEHitTime_
double r45EnergyFraction(void) const
Definition: HcalNoiseAlgo.h:43
double ratio(void) const
Definition: HcalNoiseAlgo.h:21
double RBXEMF(void) const
Definition: HcalNoiseAlgo.h:37
int numRBXHits(void) const
Definition: HcalNoiseAlgo.h:26
double pMinEZeros_
double pMinRBXRechitR45EnergyFraction_
double pMaxHighEHitTime_
double pMinRBXRechitR45Fraction_
int numHPDNoOtherHits(void) const
Definition: HcalNoiseAlgo.h:27
int numZeros(void) const
Definition: HcalNoiseAlgo.h:28
double pMaxLowEHitTime_
double pMinLowEHitTime_
int r45Count(void) const
Definition: HcalNoiseAlgo.h:41
double pMaxRBXEMF_
double energy(void) const
Definition: HcalNoiseAlgo.h:20
double minHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:33
int numHPDHits(void) const
Definition: HcalNoiseAlgo.h:25
bool validRatio(void) const
Definition: HcalNoiseAlgo.h:24
double r45Fraction(void) const
Definition: HcalNoiseAlgo.h:42
bool HcalNoiseAlgo::passEMFThreshold ( const CommonHcalNoiseRBXData data) const

Definition at line 338 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::energy(), and minEEMF_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passHighLevelNoiseFilter().

339 {
340  return (data.energy()>minEEMF_);
341 }
double energy(void) const
Definition: HcalNoiseAlgo.h:20
bool HcalNoiseAlgo::passHighLevelNoiseFilter ( const CommonHcalNoiseRBXData data) const

Definition at line 219 of file HcalNoiseAlgo.cc.

References hlMaxHPDEMF_, hlMaxRBXEMF_, CommonHcalNoiseRBXData::HPDEMF(), passEMFThreshold(), and CommonHcalNoiseRBXData::RBXEMF().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and reco::HcalNoiseInfoProducer::produce().

220 {
221  if(passEMFThreshold(data)) {
222  if(data.HPDEMF()<hlMaxHPDEMF_) return false;
223  if(data.RBXEMF()<hlMaxRBXEMF_) return false;
224  }
225  return true;
226 }
double HPDEMF(void) const
Definition: HcalNoiseAlgo.h:38
double hlMaxRBXEMF_
double RBXEMF(void) const
Definition: HcalNoiseAlgo.h:37
bool passEMFThreshold(const CommonHcalNoiseRBXData &) const
double hlMaxHPDEMF_
bool HcalNoiseAlgo::passLooseHits ( const CommonHcalNoiseRBXData data) const

Definition at line 237 of file HcalNoiseAlgo.cc.

References lMinHPDHits_, lMinHPDNoOtherHits_, lMinRBXHits_, CommonHcalNoiseRBXData::numHPDHits(), CommonHcalNoiseRBXData::numHPDNoOtherHits(), and CommonHcalNoiseRBXData::numRBXHits().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passLooseNoiseFilter().

238 {
239  if(data.numHPDHits()>=lMinHPDHits_) return false;
240  if(data.numRBXHits()>=lMinRBXHits_) return false;
241  if(data.numHPDNoOtherHits()>=lMinHPDNoOtherHits_) return false;
242  return true;
243 }
int numRBXHits(void) const
Definition: HcalNoiseAlgo.h:26
int numHPDNoOtherHits(void) const
Definition: HcalNoiseAlgo.h:27
int numHPDHits(void) const
Definition: HcalNoiseAlgo.h:25
bool HcalNoiseAlgo::passLooseNoiseFilter ( const CommonHcalNoiseRBXData data) const

Definition at line 209 of file HcalNoiseAlgo.cc.

References passLooseHits(), passLooseRatio(), passLooseRBXRechitR45(), passLooseTiming(), and passLooseZeros().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and reco::HcalNoiseInfoProducer::produce().

210 {
211  return (passLooseRatio(data) && passLooseHits(data) && passLooseZeros(data) && passLooseTiming(data) && passLooseRBXRechitR45(data));
212 }
bool passLooseRatio(const CommonHcalNoiseRBXData &) const
bool passLooseRBXRechitR45(const CommonHcalNoiseRBXData &) const
bool passLooseZeros(const CommonHcalNoiseRBXData &) const
bool passLooseHits(const CommonHcalNoiseRBXData &) const
bool passLooseTiming(const CommonHcalNoiseRBXData &) const
bool HcalNoiseAlgo::passLooseRatio ( const CommonHcalNoiseRBXData data) const

Definition at line 228 of file HcalNoiseAlgo.cc.

References lMaxRatio_, lMinRatio_, passRatioThreshold(), CommonHcalNoiseRBXData::ratio(), and CommonHcalNoiseRBXData::validRatio().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passLooseNoiseFilter().

229 {
230  if(passRatioThreshold(data)) {
231  if(data.validRatio() && data.ratio()<lMinRatio_) return false;
232  if(data.validRatio() && data.ratio()>lMaxRatio_) return false;
233  }
234  return true;
235 }
double ratio(void) const
Definition: HcalNoiseAlgo.h:21
bool passRatioThreshold(const CommonHcalNoiseRBXData &) const
bool validRatio(void) const
Definition: HcalNoiseAlgo.h:24
bool HcalNoiseAlgo::passLooseRBXRechitR45 ( const CommonHcalNoiseRBXData data) const

Definition at line 262 of file HcalNoiseAlgo.cc.

References i, lMinRBXRechitR45Cuts_, CommonHcalNoiseRBXData::r45Count(), CommonHcalNoiseRBXData::r45EnergyFraction(), and CommonHcalNoiseRBXData::r45Fraction().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passLooseNoiseFilter().

263 {
264  int Count = data.r45Count();
265  double Fraction = data.r45Fraction();
266  double EnergyFraction = data.r45EnergyFraction();
267 
268  for(int i = 0; i + 3 < (int)lMinRBXRechitR45Cuts_.size(); i = i + 4)
269  {
270  double Value = Count * lMinRBXRechitR45Cuts_[i] + Fraction * lMinRBXRechitR45Cuts_[i+1] + EnergyFraction * lMinRBXRechitR45Cuts_[i+2] + lMinRBXRechitR45Cuts_[i+3];
271  if(Value > 0)
272  return false;
273  }
274 
275  return true;
276 }
int i
Definition: DBlmapReader.cc:9
std::vector< double > lMinRBXRechitR45Cuts_
double r45EnergyFraction(void) const
Definition: HcalNoiseAlgo.h:43
reco::JetExtendedAssociation::JetExtendedData Value
int r45Count(void) const
Definition: HcalNoiseAlgo.h:41
double r45Fraction(void) const
Definition: HcalNoiseAlgo.h:42
bool HcalNoiseAlgo::passLooseTiming ( const CommonHcalNoiseRBXData data) const

Definition at line 253 of file HcalNoiseAlgo.cc.

References lMaxHighEHitTime_, lMaxLowEHitTime_, lMinHighEHitTime_, lMinLowEHitTime_, CommonHcalNoiseRBXData::maxHighEHitTime(), CommonHcalNoiseRBXData::maxLowEHitTime(), CommonHcalNoiseRBXData::minHighEHitTime(), and CommonHcalNoiseRBXData::minLowEHitTime().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passLooseNoiseFilter().

254 {
255  if(data.minLowEHitTime()<lMinLowEHitTime_) return false;
256  if(data.maxLowEHitTime()>lMaxLowEHitTime_) return false;
257  if(data.minHighEHitTime()<lMinHighEHitTime_) return false;
258  if(data.maxHighEHitTime()>lMaxHighEHitTime_) return false;
259  return true;
260 }
double minLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:29
double maxHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:34
double maxLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:30
double lMaxHighEHitTime_
double lMinLowEHitTime_
double minHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:33
double lMaxLowEHitTime_
double lMinHighEHitTime_
bool HcalNoiseAlgo::passLooseZeros ( const CommonHcalNoiseRBXData data) const

Definition at line 245 of file HcalNoiseAlgo.cc.

References lMinZeros_, CommonHcalNoiseRBXData::numZeros(), and passZerosThreshold().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passLooseNoiseFilter().

246 {
247  if(passZerosThreshold(data)) {
248  if(data.numZeros()>=lMinZeros_) return false;
249  }
250  return true;
251 }
int numZeros(void) const
Definition: HcalNoiseAlgo.h:28
bool passZerosThreshold(const CommonHcalNoiseRBXData &) const
bool HcalNoiseAlgo::passRatioThreshold ( const CommonHcalNoiseRBXData data) const

Definition at line 328 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::energy(), and minERatio_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), passLooseRatio(), and passTightRatio().

329 {
330  return (data.energy()>minERatio_);
331 }
double energy(void) const
Definition: HcalNoiseAlgo.h:20
bool HcalNoiseAlgo::passTightHits ( const CommonHcalNoiseRBXData data) const

Definition at line 287 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::numHPDHits(), CommonHcalNoiseRBXData::numHPDNoOtherHits(), CommonHcalNoiseRBXData::numRBXHits(), tMinHPDHits_, tMinHPDNoOtherHits_, and tMinRBXHits_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passTightNoiseFilter().

288 {
289  if(data.numHPDHits()>=tMinHPDHits_) return false;
290  if(data.numRBXHits()>=tMinRBXHits_) return false;
291  if(data.numHPDNoOtherHits()>=tMinHPDNoOtherHits_) return false;
292  return true;
293 }
int numRBXHits(void) const
Definition: HcalNoiseAlgo.h:26
int numHPDNoOtherHits(void) const
Definition: HcalNoiseAlgo.h:27
int numHPDHits(void) const
Definition: HcalNoiseAlgo.h:25
bool HcalNoiseAlgo::passTightNoiseFilter ( const CommonHcalNoiseRBXData data) const

Definition at line 214 of file HcalNoiseAlgo.cc.

References passTightHits(), passTightRatio(), passTightRBXRechitR45(), passTightTiming(), and passTightZeros().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and reco::HcalNoiseInfoProducer::produce().

215 {
216  return (passTightRatio(data) && passTightHits(data) && passTightZeros(data) && passTightTiming(data) && passTightRBXRechitR45(data));
217 }
bool passTightRatio(const CommonHcalNoiseRBXData &) const
bool passTightRBXRechitR45(const CommonHcalNoiseRBXData &) const
bool passTightTiming(const CommonHcalNoiseRBXData &) const
bool passTightZeros(const CommonHcalNoiseRBXData &) const
bool passTightHits(const CommonHcalNoiseRBXData &) const
bool HcalNoiseAlgo::passTightRatio ( const CommonHcalNoiseRBXData data) const

Definition at line 278 of file HcalNoiseAlgo.cc.

References passRatioThreshold(), CommonHcalNoiseRBXData::ratio(), tMaxRatio_, tMinRatio_, and CommonHcalNoiseRBXData::validRatio().

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passTightNoiseFilter().

279 {
280  if(passRatioThreshold(data)) {
281  if(data.validRatio() && data.ratio()<tMinRatio_) return false;
282  if(data.validRatio() && data.ratio()>tMaxRatio_) return false;
283  }
284  return true;
285 }
double ratio(void) const
Definition: HcalNoiseAlgo.h:21
bool passRatioThreshold(const CommonHcalNoiseRBXData &) const
bool validRatio(void) const
Definition: HcalNoiseAlgo.h:24
bool HcalNoiseAlgo::passTightRBXRechitR45 ( const CommonHcalNoiseRBXData data) const

Definition at line 312 of file HcalNoiseAlgo.cc.

References i, CommonHcalNoiseRBXData::r45Count(), CommonHcalNoiseRBXData::r45EnergyFraction(), CommonHcalNoiseRBXData::r45Fraction(), and tMinRBXRechitR45Cuts_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passTightNoiseFilter().

313 {
314  int Count = data.r45Count();
315  double Fraction = data.r45Fraction();
316  double EnergyFraction = data.r45EnergyFraction();
317 
318  for(int i = 0; i + 3 < (int)tMinRBXRechitR45Cuts_.size(); i = i + 4)
319  {
320  double Value = Count * tMinRBXRechitR45Cuts_[i] + Fraction * tMinRBXRechitR45Cuts_[i+1] + EnergyFraction * tMinRBXRechitR45Cuts_[i+2] + tMinRBXRechitR45Cuts_[i+3];
321  if(Value > 0)
322  return false;
323  }
324 
325  return true;
326 }
int i
Definition: DBlmapReader.cc:9
double r45EnergyFraction(void) const
Definition: HcalNoiseAlgo.h:43
std::vector< double > tMinRBXRechitR45Cuts_
reco::JetExtendedAssociation::JetExtendedData Value
int r45Count(void) const
Definition: HcalNoiseAlgo.h:41
double r45Fraction(void) const
Definition: HcalNoiseAlgo.h:42
bool HcalNoiseAlgo::passTightTiming ( const CommonHcalNoiseRBXData data) const

Definition at line 303 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::maxHighEHitTime(), CommonHcalNoiseRBXData::maxLowEHitTime(), CommonHcalNoiseRBXData::minHighEHitTime(), CommonHcalNoiseRBXData::minLowEHitTime(), tMaxHighEHitTime_, tMaxLowEHitTime_, tMinHighEHitTime_, and tMinLowEHitTime_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passTightNoiseFilter().

304 {
305  if(data.minLowEHitTime()<tMinLowEHitTime_) return false;
306  if(data.maxLowEHitTime()>tMaxLowEHitTime_) return false;
307  if(data.minHighEHitTime()<tMinHighEHitTime_) return false;
308  if(data.maxHighEHitTime()>tMaxHighEHitTime_) return false;
309  return true;
310 }
double minLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:29
double maxHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:34
double maxLowEHitTime(void) const
Definition: HcalNoiseAlgo.h:30
double tMaxHighEHitTime_
double tMinHighEHitTime_
double tMinLowEHitTime_
double minHighEHitTime(void) const
Definition: HcalNoiseAlgo.h:33
double tMaxLowEHitTime_
bool HcalNoiseAlgo::passTightZeros ( const CommonHcalNoiseRBXData data) const

Definition at line 295 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::numZeros(), passZerosThreshold(), and tMinZeros_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), and passTightNoiseFilter().

296 {
297  if(passZerosThreshold(data)) {
298  if(data.numZeros()>=tMinZeros_) return false;
299  }
300  return true;
301 }
int numZeros(void) const
Definition: HcalNoiseAlgo.h:28
bool passZerosThreshold(const CommonHcalNoiseRBXData &) const
bool HcalNoiseAlgo::passZerosThreshold ( const CommonHcalNoiseRBXData data) const

Definition at line 333 of file HcalNoiseAlgo.cc.

References CommonHcalNoiseRBXData::energy(), and minEZeros_.

Referenced by reco::HcalNoiseInfoProducer::fillOtherSummaryVariables(), passLooseZeros(), and passTightZeros().

334 {
335  return (data.energy()>minEZeros_);
336 }
double energy(void) const
Definition: HcalNoiseAlgo.h:20

Member Data Documentation

double HcalNoiseAlgo::hlMaxHPDEMF_
private

Definition at line 172 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passHighLevelNoiseFilter().

double HcalNoiseAlgo::hlMaxRBXEMF_
private

Definition at line 173 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passHighLevelNoiseFilter().

double HcalNoiseAlgo::lMaxHighEHitTime_
private

Definition at line 153 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseTiming().

double HcalNoiseAlgo::lMaxLowEHitTime_
private

Definition at line 151 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseTiming().

double HcalNoiseAlgo::lMaxRatio_
private

Definition at line 145 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseRatio().

double HcalNoiseAlgo::lMinHighEHitTime_
private

Definition at line 152 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseTiming().

int HcalNoiseAlgo::lMinHPDHits_
private

Definition at line 146 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseHits().

int HcalNoiseAlgo::lMinHPDNoOtherHits_
private

Definition at line 148 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseHits().

double HcalNoiseAlgo::lMinLowEHitTime_
private

Definition at line 150 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseTiming().

double HcalNoiseAlgo::lMinRatio_
private

Definition at line 144 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseRatio().

int HcalNoiseAlgo::lMinRBXHits_
private

Definition at line 147 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseHits().

std::vector<double> HcalNoiseAlgo::lMinRBXRechitR45Cuts_
private

Definition at line 154 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseRBXRechitR45().

int HcalNoiseAlgo::lMinZeros_
private

Definition at line 149 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passLooseZeros().

double HcalNoiseAlgo::minEEMF_
private

Definition at line 121 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passEMFThreshold().

double HcalNoiseAlgo::minERatio_
private

Definition at line 119 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passRatioThreshold().

double HcalNoiseAlgo::minEZeros_
private

Definition at line 120 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passZerosThreshold().

double HcalNoiseAlgo::pMaxHighEHitTime_
private

Definition at line 135 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMaxHPDEMF_
private

Definition at line 136 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMaxLowEHitTime_
private

Definition at line 133 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMaxRatio_
private

Definition at line 127 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMaxRBXEMF_
private

Definition at line 137 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinE_
private

Definition at line 125 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinEEMF_
private

Definition at line 116 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinERatio_
private

Definition at line 114 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinEZeros_
private

Definition at line 115 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinHighEHitTime_
private

Definition at line 134 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

int HcalNoiseAlgo::pMinHPDHits_
private

Definition at line 128 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

int HcalNoiseAlgo::pMinHPDNoOtherHits_
private

Definition at line 130 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinLowEHitTime_
private

Definition at line 132 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinRatio_
private

Definition at line 126 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

int HcalNoiseAlgo::pMinRBXHits_
private

Definition at line 129 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

int HcalNoiseAlgo::pMinRBXRechitR45Count_
private

Definition at line 138 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinRBXRechitR45EnergyFraction_
private

Definition at line 140 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::pMinRBXRechitR45Fraction_
private

Definition at line 139 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

int HcalNoiseAlgo::pMinZeros_
private

Definition at line 131 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and isProblematic().

double HcalNoiseAlgo::tMaxHighEHitTime_
private

Definition at line 167 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightTiming().

double HcalNoiseAlgo::tMaxLowEHitTime_
private

Definition at line 165 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightTiming().

double HcalNoiseAlgo::tMaxRatio_
private

Definition at line 159 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightRatio().

double HcalNoiseAlgo::tMinHighEHitTime_
private

Definition at line 166 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightTiming().

int HcalNoiseAlgo::tMinHPDHits_
private

Definition at line 160 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightHits().

int HcalNoiseAlgo::tMinHPDNoOtherHits_
private

Definition at line 162 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightHits().

double HcalNoiseAlgo::tMinLowEHitTime_
private

Definition at line 164 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightTiming().

double HcalNoiseAlgo::tMinRatio_
private

Definition at line 158 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightRatio().

int HcalNoiseAlgo::tMinRBXHits_
private

Definition at line 161 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightHits().

std::vector<double> HcalNoiseAlgo::tMinRBXRechitR45Cuts_
private

Definition at line 168 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightRBXRechitR45().

int HcalNoiseAlgo::tMinZeros_
private

Definition at line 163 of file HcalNoiseAlgo.h.

Referenced by HcalNoiseAlgo(), and passTightZeros().