CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Types | Private Attributes
HLTHcalTowerNoiseCleanerWithrechit Class Reference

#include <HLTHcalTowerNoiseCleanerWithrechit.h>

Inheritance diagram for HLTHcalTowerNoiseCleanerWithrechit:
edm::stream::EDProducer<>

Classes

struct  noisedatacomp
 

Public Member Functions

 HLTHcalTowerNoiseCleanerWithrechit (const edm::ParameterSet &)
 
void produce (edm::Event &, const edm::EventSetup &) override
 
 ~HLTHcalTowerNoiseCleanerWithrechit () override
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 

Private Types

typedef std::set< CommonHcalNoiseRBXData, noisedatacompnoisedataset_t
 

Private Attributes

edm::InputTag HcalNoiseRBXCollectionTag_
 
std::vector< double > hltMinRBXRechitR45Cuts_
 
edm::EDGetTokenT< CaloTowerCollectionm_theCaloTowerCollectionToken
 
edm::EDGetTokenT< reco::HcalNoiseRBXCollectionm_theHcalNoiseToken
 
double maxHighEHitTime_
 
int maxNumRBXs_
 
double maxRatio_
 
double maxRBXEMF_
 
double minHighEHitTime_
 
double minHighHitE_
 
int minHPDHits_
 
int minHPDNoOtherHits_
 
double minLowHitE_
 
double minR45HitE_
 
double minRatio_
 
double minRBXEnergy_
 
int minRBXHits_
 
double minRecHitE_
 
int minZeros_
 
bool needEMFCoincidence_
 
int numRBXsToConsider_
 
int severity_
 
edm::InputTag TowerCollectionTag_
 
double TS4TS5EnergyThreshold_
 
std::vector< std::pair< double, double > > TS4TS5LowerCut_
 
std::vector< std::pair< double, double > > TS4TS5UpperCut_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Detailed Description

Description: HLT filter module for cleaning HCal Noise from MET or MHT

Implementation: <Notes on="" implementation>="">

Definition at line 23 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Member Typedef Documentation

◆ noisedataset_t

Definition at line 67 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Constructor & Destructor Documentation

◆ HLTHcalTowerNoiseCleanerWithrechit()

HLTHcalTowerNoiseCleanerWithrechit::HLTHcalTowerNoiseCleanerWithrechit ( const edm::ParameterSet iConfig)
explicit

Definition at line 52 of file HLTHcalTowerNoiseCleanerWithrechit.cc.

53  : HcalNoiseRBXCollectionTag_(iConfig.getParameter<edm::InputTag>("HcalNoiseRBXCollection")),
54  TowerCollectionTag_(iConfig.getParameter<edm::InputTag>("CaloTowerCollection")),
55  severity_(iConfig.getParameter<int>("severity")),
56  maxNumRBXs_(iConfig.getParameter<int>("maxNumRBXs")),
57  numRBXsToConsider_(iConfig.getParameter<int>("numRBXsToConsider")),
58  needEMFCoincidence_(iConfig.getParameter<bool>("needEMFCoincidence")),
59  minRBXEnergy_(iConfig.getParameter<double>("minRBXEnergy")),
60  minRatio_(iConfig.getParameter<double>("minRatio")),
61  maxRatio_(iConfig.getParameter<double>("maxRatio")),
62  minHPDHits_(iConfig.getParameter<int>("minHPDHits")),
63  minRBXHits_(iConfig.getParameter<int>("minRBXHits")),
64  minHPDNoOtherHits_(iConfig.getParameter<int>("minHPDNoOtherHits")),
65  minZeros_(iConfig.getParameter<int>("minZeros")),
66  minHighEHitTime_(iConfig.getParameter<double>("minHighEHitTime")),
67  maxHighEHitTime_(iConfig.getParameter<double>("maxHighEHitTime")),
68  maxRBXEMF_(iConfig.getParameter<double>("maxRBXEMF")),
69  minRecHitE_(iConfig.getParameter<double>("minRecHitE")),
70  minLowHitE_(iConfig.getParameter<double>("minLowHitE")),
71  minHighHitE_(iConfig.getParameter<double>("minHighHitE")),
72  minR45HitE_(5.0),
73  TS4TS5EnergyThreshold_(iConfig.getParameter<double>("TS4TS5EnergyThreshold")) {
74  hltMinRBXRechitR45Cuts_ = iConfig.getParameter<std::vector<double> >("hltRBXRecHitR45Cuts");
75  std::vector<double> TS4TS5UpperThresholdTemp = iConfig.getParameter<std::vector<double> >("TS4TS5UpperThreshold");
76  std::vector<double> TS4TS5UpperCutTemp = iConfig.getParameter<std::vector<double> >("TS4TS5UpperCut");
77  std::vector<double> TS4TS5LowerThresholdTemp = iConfig.getParameter<std::vector<double> >("TS4TS5LowerThreshold");
78  std::vector<double> TS4TS5LowerCutTemp = iConfig.getParameter<std::vector<double> >("TS4TS5LowerCut");
79 
80  for (int i = 0; i < (int)TS4TS5UpperThresholdTemp.size() && i < (int)TS4TS5UpperCutTemp.size(); i++)
81  TS4TS5UpperCut_.push_back(std::pair<double, double>(TS4TS5UpperThresholdTemp[i], TS4TS5UpperCutTemp[i]));
82  sort(TS4TS5UpperCut_.begin(), TS4TS5UpperCut_.end());
83 
84  for (int i = 0; i < (int)TS4TS5LowerThresholdTemp.size() && i < (int)TS4TS5LowerCutTemp.size(); i++)
85  TS4TS5LowerCut_.push_back(std::pair<double, double>(TS4TS5LowerThresholdTemp[i], TS4TS5LowerCutTemp[i]));
86  sort(TS4TS5LowerCut_.begin(), TS4TS5LowerCut_.end());
87 
88  m_theHcalNoiseToken = consumes<reco::HcalNoiseRBXCollection>(HcalNoiseRBXCollectionTag_);
89  m_theCaloTowerCollectionToken = consumes<CaloTowerCollection>(TowerCollectionTag_);
90 
91  if (iConfig.existsAs<double>("minR45HitE"))
92  minR45HitE_ = iConfig.getParameter<double>("minR45HitE");
93 
94  produces<CaloTowerCollection>();
95 }

References edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), HcalNoiseRBXCollectionTag_, hltMinRBXRechitR45Cuts_, mps_fire::i, createfilelist::int, m_theCaloTowerCollectionToken, m_theHcalNoiseToken, minR45HitE_, TowerCollectionTag_, TS4TS5LowerCut_, and TS4TS5UpperCut_.

◆ ~HLTHcalTowerNoiseCleanerWithrechit()

HLTHcalTowerNoiseCleanerWithrechit::~HLTHcalTowerNoiseCleanerWithrechit ( )
overridedefault

Member Function Documentation

◆ fillDescriptions()

void HLTHcalTowerNoiseCleanerWithrechit::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 99 of file HLTHcalTowerNoiseCleanerWithrechit.cc.

99  {
101  desc.add<edm::InputTag>("HcalNoiseRBXCollection", edm::InputTag("hltHcalNoiseInfoProducer"));
102  desc.add<edm::InputTag>("CaloTowerCollection", edm::InputTag("hltTowerMakerForAll"));
103  desc.add<double>("maxTowerNoiseEnergyFraction", 0.5);
104  desc.add<int>("severity", 1);
105  desc.add<int>("maxNumRBXs", 2);
106  desc.add<int>("numRBXsToConsider", 2);
107  desc.add<bool>("needEMFCoincidence", true);
108  desc.add<double>("minRBXEnergy", 50.0);
109  desc.add<double>("minRatio", -999.);
110  desc.add<double>("maxRatio", 999.);
111  desc.add<int>("minHPDHits", 17);
112  desc.add<int>("minRBXHits", 999);
113  desc.add<int>("minHPDNoOtherHits", 10);
114  desc.add<int>("minZeros", 10);
115  desc.add<double>("minHighEHitTime", -9999.0);
116  desc.add<double>("maxHighEHitTime", 9999.0);
117  desc.add<double>("maxRBXEMF", 0.02);
118  desc.add<double>("minRecHitE", 1.5);
119  desc.add<double>("minLowHitE", 10.0);
120  desc.add<double>("minHighHitE", 25.0);
121  desc.add<double>("minR45HitE", 5.0);
122  desc.add<double>("TS4TS5EnergyThreshold", 50.0);
123 
124  double TS4TS5UpperThresholdArray[5] = {70, 90, 100, 400, 4000};
125  double TS4TS5UpperCutArray[5] = {1, 0.8, 0.75, 0.72, 0.72};
126  double TS4TS5LowerThresholdArray[7] = {100, 120, 150, 200, 300, 400, 500};
127  double TS4TS5LowerCutArray[7] = {-1, -0.7, -0.4, -0.2, -0.08, 0, 0.1};
128  double hltRBXRecHitR45CutsArray[8] = {0.0, 1.0, 0.0, -1.0, 0.0, 0.0, 1.0, -1.0};
129  std::vector<double> TS4TS5UpperThreshold(TS4TS5UpperThresholdArray, TS4TS5UpperThresholdArray + 5);
130  std::vector<double> TS4TS5UpperCut(TS4TS5UpperCutArray, TS4TS5UpperCutArray + 5);
131  std::vector<double> TS4TS5LowerThreshold(TS4TS5LowerThresholdArray, TS4TS5LowerThresholdArray + 7);
132  std::vector<double> TS4TS5LowerCut(TS4TS5LowerCutArray, TS4TS5LowerCutArray + 7);
133  std::vector<double> hltRBXRecHitR45Cuts(hltRBXRecHitR45CutsArray, hltRBXRecHitR45CutsArray + 8);
134 
135  desc.add<std::vector<double> >("TS4TS5UpperThreshold", TS4TS5UpperThreshold);
136  desc.add<std::vector<double> >("TS4TS5UpperCut", TS4TS5UpperCut);
137  desc.add<std::vector<double> >("TS4TS5LowerThreshold", TS4TS5LowerThreshold);
138  desc.add<std::vector<double> >("TS4TS5LowerCut", TS4TS5LowerCut);
139  desc.add<std::vector<double> >("hltRBXRecHitR45Cuts", hltRBXRecHitR45Cuts);
140  descriptions.add("hltHcalTowerNoiseCleanerWithrechit", desc);
141 }

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), HLT_2018_cff::hltRBXRecHitR45Cuts, HLT_2018_cff::InputTag, HLT_2018_cff::TS4TS5LowerCut, HLT_2018_cff::TS4TS5LowerThreshold, HLT_2018_cff::TS4TS5UpperCut, and HLT_2018_cff::TS4TS5UpperThreshold.

◆ produce()

void HLTHcalTowerNoiseCleanerWithrechit::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 147 of file HLTHcalTowerNoiseCleanerWithrechit.cc.

147  {
148  using namespace reco;
149 
150  edm::ESHandle<CaloTowerTopology> caloTowerTopology;
151  iSetup.get<HcalRecNumberingRecord>().get(caloTowerTopology);
152 
153  //get the calo MET / MHT
155  iEvent.getByToken(m_theCaloTowerCollectionToken, tower_h);
156 
157  std::set<unsigned int> noisyTowers;
158 
159  if (not tower_h.isValid()) { //No towers MET, don't do anything and accept the event
160  edm::LogError("HLTHcalTowerNoiseCleanerWithrechit") << "Input Tower Collection is not Valid";
161  return;
162  }
163 
164  // get the RBXs produced by RecoMET/METProducers/HcalNoiseInfoProducer
166  iEvent.getByToken(m_theHcalNoiseToken, rbxs_h);
167  if (!rbxs_h.isValid()) {
168  edm::LogWarning("HLTHcalTowerNoiseCleanerWithrechit")
169  << "Could not find HcalNoiseRBXCollection product named " << HcalNoiseRBXCollectionTag_ << "." << std::endl;
170  severity_ = 0;
171  }
172 
173  // create a sorted set of the RBXs, ordered by energy
175  for (auto const& rbx : *rbxs_h) {
177  minRecHitE_,
178  minLowHitE_,
179  minHighHitE_,
183  minR45HitE_);
184  data.insert(d);
185  }
186 
187  // data is now sorted by RBX energy
188  // only consider top N=numRBXsToConsider_ energy RBXs
189  if (severity_ > 0) {
190  for (auto const& it : data) {
191  // Check the Rechit-R45 filter
192  // Taken from http://cmslxr.fnal.gov/lxr/source/RecoMET/METAlgorithms/src/HcalNoiseAlgo.cc?v=CMSSW_7_4_6#0256
193  bool passRechitr45 = true;
194  int r45Count = it.r45Count();
195  double r45Fraction = it.r45Fraction();
196  double r45EnergyFraction = it.r45EnergyFraction();
197  for (int i = 0; i + 3 < (int)hltMinRBXRechitR45Cuts_.size(); i = i + 4) {
198  double Value = r45Count * hltMinRBXRechitR45Cuts_[i] + r45Fraction * hltMinRBXRechitR45Cuts_[i + 1] +
199  r45EnergyFraction * hltMinRBXRechitR45Cuts_[i + 2] + hltMinRBXRechitR45Cuts_[i + 3];
200  if (Value > 0)
201  passRechitr45 = false;
202  }
203 
204  bool passFilter = true;
205  bool passEMF = true;
206  if (it.energy() > minRBXEnergy_) {
207  if (it.validRatio() && it.ratio() < minRatio_)
208  passFilter = false;
209  else if (it.validRatio() && it.ratio() > maxRatio_)
210  passFilter = false;
211  else if (it.numHPDHits() >= minHPDHits_)
212  passFilter = false;
213  else if (it.numRBXHits() >= minRBXHits_)
214  passFilter = false;
215  else if (it.numHPDNoOtherHits() >= minHPDNoOtherHits_)
216  passFilter = false;
217  else if (it.numZeros() >= minZeros_)
218  passFilter = false;
219  else if (it.minHighEHitTime() < minHighEHitTime_)
220  passFilter = false;
221  else if (it.maxHighEHitTime() > maxHighEHitTime_)
222  passFilter = false;
223  else if (passRechitr45 == false)
224  passFilter = false;
225  if (it.RBXEMF() < maxRBXEMF_) {
226  passEMF = false;
227  }
228  }
229 
230  if ((needEMFCoincidence_ && !passEMF && !passFilter) ||
231  (!needEMFCoincidence_ && !passFilter)) { // check for noise
232  LogDebug("") << "HLTHcalTowerNoiseCleanerWithrechit debug: Found a noisy RBX: "
233  << "energy=" << it.energy() << "; "
234  << "ratio=" << it.ratio() << "; "
235  << "# RBX hits=" << it.numRBXHits() << "; "
236  << "# HPD hits=" << it.numHPDHits() << "; "
237  << "# Zeros=" << it.numZeros() << "; "
238  << "min time=" << it.minHighEHitTime() << "; "
239  << "max time=" << it.maxHighEHitTime() << "; "
240  << "RBX EMF=" << it.RBXEMF() << std::endl;
241  // add calotowers associated with this RBX to the noise list
242  edm::RefVector<CaloTowerCollection> noiseTowers = it.rbxTowers();
244  //add these calotowers to the noisy list
245  for (noiseTowersIt = noiseTowers.begin(); noiseTowersIt != noiseTowers.end(); noiseTowersIt++) {
246  edm::Ref<edm::SortedCollection<CaloTower> > tower_ref = *noiseTowersIt;
247  CaloTowerDetId id = tower_ref->id();
248  noisyTowers.insert(caloTowerTopology->denseIndex(id));
249  }
250  }
251  } // done with noise loop
252  } //if(severity_>0)
253 
254  //output collection
255  std::unique_ptr<CaloTowerCollection> OutputTowers(new CaloTowerCollection());
256 
258 
259  for (inTowersIt = tower_h->begin(); inTowersIt != tower_h->end(); inTowersIt++) {
260  const CaloTower& tower = (*inTowersIt);
261  CaloTowerDetId id = tower.id();
262 
263  if (noisyTowers.find(caloTowerTopology->denseIndex(id)) == noisyTowers.end()) { // the tower is not noisy
264  OutputTowers->push_back(*inTowersIt);
265  }
266  }
267  iEvent.put(std::move(OutputTowers));
268 }

References edm::RefVector< C, T, F >::begin(), edm::SortedCollection< T, SORT >::begin(), ztail::d, data, CaloTowerTopology::denseIndex(), edm::RefVector< C, T, F >::end(), edm::SortedCollection< T, SORT >::end(), edm::EventSetup::get(), get, HcalNoiseRBXCollectionTag_, hltMinRBXRechitR45Cuts_, mps_fire::i, edm::Ref< C, T, F >::id(), iEvent, createfilelist::int, edm::HandleBase::isValid(), LogDebug, m_theCaloTowerCollectionToken, m_theHcalNoiseToken, maxHighEHitTime_, maxRatio_, maxRBXEMF_, minHighEHitTime_, minHighHitE_, minHPDHits_, minHPDNoOtherHits_, minLowHitE_, minR45HitE_, minRatio_, minRBXEnergy_, minRBXHits_, minRecHitE_, minZeros_, eostools::move(), needEMFCoincidence_, severity_, hgcalTowerProducer_cfi::tower, TS4TS5EnergyThreshold_, TS4TS5LowerCut_, and TS4TS5UpperCut_.

Member Data Documentation

◆ HcalNoiseRBXCollectionTag_

edm::InputTag HLTHcalTowerNoiseCleanerWithrechit::HcalNoiseRBXCollectionTag_
private

◆ hltMinRBXRechitR45Cuts_

std::vector<double> HLTHcalTowerNoiseCleanerWithrechit::hltMinRBXRechitR45Cuts_
private

◆ m_theCaloTowerCollectionToken

edm::EDGetTokenT<CaloTowerCollection> HLTHcalTowerNoiseCleanerWithrechit::m_theCaloTowerCollectionToken
private

◆ m_theHcalNoiseToken

edm::EDGetTokenT<reco::HcalNoiseRBXCollection> HLTHcalTowerNoiseCleanerWithrechit::m_theHcalNoiseToken
private

◆ maxHighEHitTime_

double HLTHcalTowerNoiseCleanerWithrechit::maxHighEHitTime_
private

Definition at line 48 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ maxNumRBXs_

int HLTHcalTowerNoiseCleanerWithrechit::maxNumRBXs_
private

Definition at line 37 of file HLTHcalTowerNoiseCleanerWithrechit.h.

◆ maxRatio_

double HLTHcalTowerNoiseCleanerWithrechit::maxRatio_
private

Definition at line 42 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ maxRBXEMF_

double HLTHcalTowerNoiseCleanerWithrechit::maxRBXEMF_
private

Definition at line 49 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minHighEHitTime_

double HLTHcalTowerNoiseCleanerWithrechit::minHighEHitTime_
private

Definition at line 47 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minHighHitE_

double HLTHcalTowerNoiseCleanerWithrechit::minHighHitE_
private

Definition at line 52 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minHPDHits_

int HLTHcalTowerNoiseCleanerWithrechit::minHPDHits_
private

Definition at line 43 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minHPDNoOtherHits_

int HLTHcalTowerNoiseCleanerWithrechit::minHPDNoOtherHits_
private

Definition at line 45 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minLowHitE_

double HLTHcalTowerNoiseCleanerWithrechit::minLowHitE_
private

Definition at line 52 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minR45HitE_

double HLTHcalTowerNoiseCleanerWithrechit::minR45HitE_
private

◆ minRatio_

double HLTHcalTowerNoiseCleanerWithrechit::minRatio_
private

Definition at line 41 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minRBXEnergy_

double HLTHcalTowerNoiseCleanerWithrechit::minRBXEnergy_
private

Definition at line 40 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minRBXHits_

int HLTHcalTowerNoiseCleanerWithrechit::minRBXHits_
private

Definition at line 44 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minRecHitE_

double HLTHcalTowerNoiseCleanerWithrechit::minRecHitE_
private

Definition at line 52 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ minZeros_

int HLTHcalTowerNoiseCleanerWithrechit::minZeros_
private

Definition at line 46 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ needEMFCoincidence_

bool HLTHcalTowerNoiseCleanerWithrechit::needEMFCoincidence_
private

Definition at line 39 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ numRBXsToConsider_

int HLTHcalTowerNoiseCleanerWithrechit::numRBXsToConsider_
private

Definition at line 38 of file HLTHcalTowerNoiseCleanerWithrechit.h.

◆ severity_

int HLTHcalTowerNoiseCleanerWithrechit::severity_
private

Definition at line 36 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ TowerCollectionTag_

edm::InputTag HLTHcalTowerNoiseCleanerWithrechit::TowerCollectionTag_
private

◆ TS4TS5EnergyThreshold_

double HLTHcalTowerNoiseCleanerWithrechit::TS4TS5EnergyThreshold_
private

Definition at line 54 of file HLTHcalTowerNoiseCleanerWithrechit.h.

Referenced by produce().

◆ TS4TS5LowerCut_

std::vector<std::pair<double, double> > HLTHcalTowerNoiseCleanerWithrechit::TS4TS5LowerCut_
private

◆ TS4TS5UpperCut_

std::vector<std::pair<double, double> > HLTHcalTowerNoiseCleanerWithrechit::TS4TS5UpperCut_
private
HLTHcalTowerNoiseCleanerWithrechit::noisedataset_t
std::set< CommonHcalNoiseRBXData, noisedatacomp > noisedataset_t
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:67
mps_fire.i
i
Definition: mps_fire.py:355
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
edm::SortedCollection< CaloTower >::const_iterator
std::vector< CaloTower >::const_iterator const_iterator
Definition: SortedCollection.h:80
HLTHcalTowerNoiseCleanerWithrechit::TowerCollectionTag_
edm::InputTag TowerCollectionTag_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:35
HLT_2018_cff.TS4TS5LowerThreshold
TS4TS5LowerThreshold
Definition: HLT_2018_cff.py:7037
HLTHcalTowerNoiseCleanerWithrechit::m_theHcalNoiseToken
edm::EDGetTokenT< reco::HcalNoiseRBXCollection > m_theHcalNoiseToken
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:31
HLTHcalTowerNoiseCleanerWithrechit::needEMFCoincidence_
bool needEMFCoincidence_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:39
HLTHcalTowerNoiseCleanerWithrechit::HcalNoiseRBXCollectionTag_
edm::InputTag HcalNoiseRBXCollectionTag_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:34
HLTHcalTowerNoiseCleanerWithrechit::severity_
int severity_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:36
edm::RefVector::begin
const_iterator begin() const
Initialize an iterator over the RefVector.
Definition: RefVector.h:223
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
hgcalTowerProducer_cfi.tower
tower
Definition: hgcalTowerProducer_cfi.py:3
edm::RefVector
Definition: EDProductfwd.h:27
HLTHcalTowerNoiseCleanerWithrechit::minRBXEnergy_
double minRBXEnergy_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:40
edm::ParameterSet::existsAs
bool existsAs(std::string const &parameterName, bool trackiness=true) const
checks if a parameter exists as a given type
Definition: ParameterSet.h:160
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
HLTHcalTowerNoiseCleanerWithrechit::minHPDHits_
int minHPDHits_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:43
edm::Handle
Definition: AssociativeIterator.h:50
HLTHcalTowerNoiseCleanerWithrechit::numRBXsToConsider_
int numRBXsToConsider_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:38
edm::Ref
Definition: AssociativeIterator.h:58
HLTHcalTowerNoiseCleanerWithrechit::minR45HitE_
double minR45HitE_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:52
CommonHcalNoiseRBXData
Definition: HcalNoiseAlgo.h:11
HLTHcalTowerNoiseCleanerWithrechit::minHPDNoOtherHits_
int minHPDNoOtherHits_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:45
edm::RefVector::end
const_iterator end() const
Termination of iteration.
Definition: RefVector.h:228
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
HLT_2018_cff.hltRBXRecHitR45Cuts
hltRBXRecHitR45Cuts
Definition: HLT_2018_cff.py:48645
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
CaloTowerCollection
edm::SortedCollection< CaloTower > CaloTowerCollection
Definition: CaloTowerDefs.h:16
edm::ESHandle
Definition: DTSurvey.h:22
HLTHcalTowerNoiseCleanerWithrechit::minRecHitE_
double minRecHitE_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:52
HcalRecNumberingRecord
Definition: HcalRecNumberingRecord.h:23
HLTHcalTowerNoiseCleanerWithrechit::TS4TS5LowerCut_
std::vector< std::pair< double, double > > TS4TS5LowerCut_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:56
edm::LogWarning
Definition: MessageLogger.h:141
HLTHcalTowerNoiseCleanerWithrechit::minHighHitE_
double minHighHitE_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:52
HLT_2018_cff.InputTag
InputTag
Definition: HLT_2018_cff.py:79016
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::LogError
Definition: MessageLogger.h:183
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
HLT_2018_cff.TS4TS5UpperThreshold
TS4TS5UpperThreshold
Definition: HLT_2018_cff.py:7040
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
CaloTower
Definition: CaloTower.h:26
HLTHcalTowerNoiseCleanerWithrechit::minRBXHits_
int minRBXHits_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:44
get
#define get
HLTHcalTowerNoiseCleanerWithrechit::maxRBXEMF_
double maxRBXEMF_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:49
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
HLTHcalTowerNoiseCleanerWithrechit::maxNumRBXs_
int maxNumRBXs_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:37
HLTHcalTowerNoiseCleanerWithrechit::hltMinRBXRechitR45Cuts_
std::vector< double > hltMinRBXRechitR45Cuts_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:59
edm::Ref::id
ProductID id() const
Accessor for product ID.
Definition: Ref.h:244
eostools.move
def move(src, dest)
Definition: eostools.py:511
HLT_2018_cff.TS4TS5LowerCut
TS4TS5LowerCut
Definition: HLT_2018_cff.py:7043
edm::RefVectorIterator
Definition: EDProductfwd.h:33
HLTHcalTowerNoiseCleanerWithrechit::TS4TS5EnergyThreshold_
double TS4TS5EnergyThreshold_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:54
HLTHcalTowerNoiseCleanerWithrechit::minLowHitE_
double minLowHitE_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:52
HLTHcalTowerNoiseCleanerWithrechit::m_theCaloTowerCollectionToken
edm::EDGetTokenT< CaloTowerCollection > m_theCaloTowerCollectionToken
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:32
HLTHcalTowerNoiseCleanerWithrechit::minRatio_
double minRatio_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:41
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
HLTHcalTowerNoiseCleanerWithrechit::maxHighEHitTime_
double maxHighEHitTime_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:48
HLTHcalTowerNoiseCleanerWithrechit::maxRatio_
double maxRatio_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:42
ztail.d
d
Definition: ztail.py:151
reco::JetExtendedAssociation::Value
reco::JetExtendedAssociation::JetExtendedData Value
Definition: JetExtendedAssociation.h:27
HLTHcalTowerNoiseCleanerWithrechit::minZeros_
int minZeros_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:46
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
HLTHcalTowerNoiseCleanerWithrechit::minHighEHitTime_
double minHighEHitTime_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:47
HLT_2018_cff.TS4TS5UpperCut
TS4TS5UpperCut
Definition: HLT_2018_cff.py:7059
edm::InputTag
Definition: InputTag.h:15
CaloTowerTopology::denseIndex
uint32_t denseIndex(const DetId &id) const
Definition: CaloTowerTopology.cc:235
CaloTowerDetId
Definition: CaloTowerDetId.h:12
HLTHcalTowerNoiseCleanerWithrechit::TS4TS5UpperCut_
std::vector< std::pair< double, double > > TS4TS5UpperCut_
Definition: HLTHcalTowerNoiseCleanerWithrechit.h:55