CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
reco::tau::RecoTauPiZeroStripPlugin2 Class Reference
Inheritance diagram for reco::tau::RecoTauPiZeroStripPlugin2:
reco::tau::RecoTauPiZeroBuilderPlugin reco::tau::RecoTauEventHolderPlugin reco::tau::RecoTauNamedPlugin

Public Member Functions

void beginEvent () override
 Hook called at the beginning of the event. More...
 
return_type operator() (const reco::Jet &) const override
 Build a collection of piZeros from objects in the input jet. More...
 
 RecoTauPiZeroStripPlugin2 (const edm::ParameterSet &, edm::ConsumesCollector &&iC)
 
 ~RecoTauPiZeroStripPlugin2 () override
 
- Public Member Functions inherited from reco::tau::RecoTauPiZeroBuilderPlugin
 RecoTauPiZeroBuilderPlugin (const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
 
 ~RecoTauPiZeroBuilderPlugin () override
 
- Public Member Functions inherited from reco::tau::RecoTauEventHolderPlugin
edm::Eventevt ()
 
const edm::Eventevt () const
 
const edm::EventSetupevtSetup () const
 
 RecoTauEventHolderPlugin (const edm::ParameterSet &pset)
 
void setup (edm::Event &, const edm::EventSetup &)
 
 ~RecoTauEventHolderPlugin () override
 
- Public Member Functions inherited from reco::tau::RecoTauNamedPlugin
const std::string & name () const
 
 RecoTauNamedPlugin (const edm::ParameterSet &pset)
 
virtual ~RecoTauNamedPlugin ()
 

Private Types

typedef std::vector< reco::CandidatePtrCandPtrs
 

Private Member Functions

void addCandsToStrip (RecoTauPiZero &, CandPtrs &, const std::vector< bool > &, std::set< size_t > &, bool &) const
 

Private Attributes

bool applyElecTrackQcuts_
 
double combinatoricStripMassHypo_
 
bool combineStrips_
 
double etaAssociationDistance_
 
std::vector< int > inputParticleIds_
 
int maxStripBuildIterations_
 
int maxStrips_
 
double minGammaEtStripAdd_
 
double minGammaEtStripSeed_
 
double minStripEt_
 
AddFourMomenta p4Builder_
 
double phiAssociationDistance_
 
RecoTauQualityCutsqcuts_
 
bool updateStripAfterEachDaughter_
 
int verbosity_
 
RecoTauVertexAssociator vertexAssociator_
 

Additional Inherited Members

- Public Types inherited from reco::tau::RecoTauPiZeroBuilderPlugin
typedef boost::ptr_vector< RecoTauPiZeroPiZeroVector
 
typedef std::unique_ptr< PiZeroVectorreturn_type
 

Detailed Description

Definition at line 52 of file RecoTauPiZeroStripPlugin2.cc.

Member Typedef Documentation

◆ CandPtrs

Definition at line 62 of file RecoTauPiZeroStripPlugin2.cc.

Constructor & Destructor Documentation

◆ RecoTauPiZeroStripPlugin2()

reco::tau::RecoTauPiZeroStripPlugin2::RecoTauPiZeroStripPlugin2 ( const edm::ParameterSet pset,
edm::ConsumesCollector &&  iC 
)
explicit

Definition at line 91 of file RecoTauPiZeroStripPlugin2.cc.

93  vertexAssociator_(pset.getParameter<edm::ParameterSet>("qualityCuts"), std::move(iC)),
94  qcuts_(nullptr) {
95  minGammaEtStripSeed_ = pset.getParameter<double>("minGammaEtStripSeed");
96  minGammaEtStripAdd_ = pset.getParameter<double>("minGammaEtStripAdd");
97 
98  minStripEt_ = pset.getParameter<double>("minStripEt");
99 
100  edm::ParameterSet qcuts_pset = pset.getParameterSet("qualityCuts").getParameterSet("signalQualityCuts");
101  //-------------------------------------------------------------------------------
102  // CV: disable track quality cuts for PFElectronsPFElectron
103  // (treat PFElectrons like PFGammas for the purpose of building eta-phi strips)
104  applyElecTrackQcuts_ = pset.getParameter<bool>("applyElecTrackQcuts");
105  if (!applyElecTrackQcuts_) {
106  qcuts_pset.addParameter<double>("minTrackPt", std::min(minGammaEtStripSeed_, minGammaEtStripAdd_));
107  qcuts_pset.addParameter<double>("maxTrackChi2", 1.e+9);
108  qcuts_pset.addParameter<double>("maxTransverseImpactParameter", 1.e+9);
109  qcuts_pset.addParameter<double>("maxDeltaZ", 1.e+9);
110  qcuts_pset.addParameter<double>("minTrackVertexWeight", -1.);
111  qcuts_pset.addParameter<unsigned>("minTrackPixelHits", 0);
112  qcuts_pset.addParameter<unsigned>("minTrackHits", 0);
113  }
114  //-------------------------------------------------------------------------------
115  qcuts_pset.addParameter<double>("minGammaEt", std::min(minGammaEtStripSeed_, minGammaEtStripAdd_));
116  qcuts_ = new RecoTauQualityCuts(qcuts_pset);
117 
118  inputParticleIds_ = pset.getParameter<std::vector<int> >("stripCandidatesParticleIds");
119  etaAssociationDistance_ = pset.getParameter<double>("stripEtaAssociationDistance");
120  phiAssociationDistance_ = pset.getParameter<double>("stripPhiAssociationDistance");
121 
122  updateStripAfterEachDaughter_ = pset.getParameter<bool>("updateStripAfterEachDaughter");
123  maxStripBuildIterations_ = pset.getParameter<int>("maxStripBuildIterations");
124 
125  combineStrips_ = pset.getParameter<bool>("makeCombinatoricStrips");
126  if (combineStrips_) {
127  maxStrips_ = pset.getParameter<int>("maxInputStrips");
128  combinatoricStripMassHypo_ = pset.getParameter<double>("stripMassWhenCombining");
129  }
130 
131  verbosity_ = pset.getParameter<int>("verbosity");
132  }

References applyElecTrackQcuts_, combinatoricStripMassHypo_, combineStrips_, etaAssociationDistance_, inputParticleIds_, maxStripBuildIterations_, maxStrips_, min(), minGammaEtStripAdd_, minGammaEtStripSeed_, minStripEt_, phiAssociationDistance_, muonDTDigis_cfi::pset, qcuts_, updateStripAfterEachDaughter_, and verbosity_.

◆ ~RecoTauPiZeroStripPlugin2()

reco::tau::RecoTauPiZeroStripPlugin2::~RecoTauPiZeroStripPlugin2 ( )
override

Definition at line 134 of file RecoTauPiZeroStripPlugin2.cc.

134 { delete qcuts_; }

References qcuts_.

Member Function Documentation

◆ addCandsToStrip()

void reco::tau::RecoTauPiZeroStripPlugin2::addCandsToStrip ( RecoTauPiZero strip,
CandPtrs cands,
const std::vector< bool > &  candFlags,
std::set< size_t > &  candIdsCurrentStrip,
bool &  isCandAdded 
) const
private

Definition at line 139 of file RecoTauPiZeroStripPlugin2.cc.

143  {
144  if (verbosity_ >= 1) {
145  edm::LogPrint("RecoTauPiZeroStripPlugin2") << "<RecoTauPiZeroStripPlugin2::addCandsToStrip>:";
146  }
147  size_t numCands = cands.size();
148  for (size_t candId = 0; candId < numCands; ++candId) {
149  if ((!candFlags[candId]) &&
150  candIdsCurrentStrip.find(candId) == candIdsCurrentStrip.end()) { // do not include same cand twice
151  reco::CandidatePtr cand = cands[candId];
152  if (fabs(strip.eta() - cand->eta()) <
153  etaAssociationDistance_ && // check if cand is within eta-phi window centered on strip
154  fabs(strip.phi() - cand->phi()) < phiAssociationDistance_) {
155  if (verbosity_ >= 2) {
156  edm::LogPrint("RecoTauPiZeroStripPlugin2")
157  << "--> adding PFCand #" << candId << " (" << cand.id() << ":" << cand.key()
158  << "): Et = " << cand->et() << ", eta = " << cand->eta() << ", phi = " << cand->phi();
159  }
160  strip.addDaughter(cand);
163  isCandAdded = true;
164  candIdsCurrentStrip.insert(candId);
165  }
166  }
167  }
168  }

References HLT_2018_cff::cands, etaAssociationDistance_, p4Builder_, phiAssociationDistance_, AddFourMomenta::set(), digitizers_cfi::strip, updateStripAfterEachDaughter_, and verbosity_.

Referenced by operator()().

◆ beginEvent()

void reco::tau::RecoTauPiZeroStripPlugin2::beginEvent ( )
overridevirtual

◆ operator()()

RecoTauPiZeroStripPlugin2::return_type reco::tau::RecoTauPiZeroStripPlugin2::operator() ( const reco::Jet ) const
overridevirtual

Build a collection of piZeros from objects in the input jet.

Implements reco::tau::RecoTauPiZeroBuilderPlugin.

Definition at line 192 of file RecoTauPiZeroStripPlugin2.cc.

192  {
193  if (verbosity_ >= 1) {
194  edm::LogPrint("RecoTauPiZeroStripPlugin2") << "<RecoTauPiZeroStripPlugin2::operator()>:";
195  edm::LogPrint("RecoTauPiZeroStripPlugin2") << " minGammaEtStripSeed = " << minGammaEtStripSeed_;
196  edm::LogPrint("RecoTauPiZeroStripPlugin2") << " minGammaEtStripAdd = " << minGammaEtStripAdd_;
197  edm::LogPrint("RecoTauPiZeroStripPlugin2") << " minStripEt = " << minStripEt_;
198  }
199 
201 
202  // Get the candidates passing our quality cuts
205 
206  // Convert to stl::list to allow fast deletions
207  CandPtrs seedCands;
208  CandPtrs addCands;
209  int idx = 0;
210  for (CandPtrs::iterator cand = candsVector.begin(); cand != candsVector.end(); ++cand) {
211  if (verbosity_ >= 1) {
212  edm::LogPrint("RecoTauPiZeroStripPlugin2")
213  << "PFGamma #" << idx << " (" << cand->id() << ":" << cand->key() << "): Et = " << (*cand)->et()
214  << ", eta = " << (*cand)->eta() << ", phi = " << (*cand)->phi();
215  }
216  if ((*cand)->et() > minGammaEtStripSeed_) {
217  if (verbosity_ >= 2) {
218  edm::LogPrint("RecoTauPiZeroStripPlugin2") << "--> assigning seedCandId = " << seedCands.size();
219  const reco::TrackBaseRef candTrack = getTrack(**cand);
220  if (candTrack.isNonnull()) {
221  edm::LogPrint("RecoTauPiZeroStripPlugin2")
222  << "track: Pt = " << candTrack->pt() << " eta = " << candTrack->eta()
223  << ", phi = " << candTrack->phi() << ", charge = " << candTrack->charge();
224  edm::LogPrint("RecoTauPiZeroStripPlugin2")
225  << " (dZ = " << candTrack->dz(vertexAssociator_.associatedVertex(jet)->position())
226  << ", dXY = " << candTrack->dxy(vertexAssociator_.associatedVertex(jet)->position()) << ","
227  << " numHits = " << candTrack->hitPattern().numberOfValidTrackerHits()
228  << ", numPxlHits = " << candTrack->hitPattern().numberOfValidPixelHits() << ","
229  << " chi2 = " << candTrack->normalizedChi2()
230  << ", dPt/Pt = " << (candTrack->ptError() / candTrack->pt()) << ")";
231  }
232  }
233  seedCands.push_back(*cand);
234  } else if ((*cand)->et() > minGammaEtStripAdd_) {
235  if (verbosity_ >= 2) {
236  edm::LogPrint("RecoTauPiZeroStripPlugin2") << "--> assigning addCandId = " << addCands.size();
237  }
238  addCands.push_back(*cand);
239  }
240  ++idx;
241  }
242 
243  std::vector<bool> seedCandFlags(seedCands.size()); // true/false: seedCand is already/not yet included in strip
244  std::vector<bool> addCandFlags(addCands.size()); // true/false: addCand is already/not yet included in strip
245 
246  std::set<size_t> seedCandIdsCurrentStrip;
247  std::set<size_t> addCandIdsCurrentStrip;
248 
249  size_t idxSeed = 0;
250  while (idxSeed < seedCands.size()) {
251  if (verbosity_ >= 2)
252  edm::LogPrint("RecoTauPiZeroStripPlugin2") << "processing seed #" << idxSeed;
253 
254  seedCandIdsCurrentStrip.clear();
255  addCandIdsCurrentStrip.clear();
256 
257  std::unique_ptr<RecoTauPiZero> strip(new RecoTauPiZero(*seedCands[idxSeed], RecoTauPiZero::kStrips));
258  strip->addDaughter(seedCands[idxSeed]);
259  seedCandIdsCurrentStrip.insert(idxSeed);
260 
261  bool isCandAdded;
262  int stripBuildIteration = 0;
263  do {
264  isCandAdded = false;
265 
266  //if ( verbosity_ >= 2 ) edm::LogPrint("RecoTauPiZeroStripPlugin2") << " adding seedCands to strip..." ;
267  addCandsToStrip(*strip, seedCands, seedCandFlags, seedCandIdsCurrentStrip, isCandAdded);
268  //if ( verbosity_ >= 2 ) edm::LogPrint("RecoTauPiZeroStripPlugin2") << " adding addCands to strip..." ;
269  addCandsToStrip(*strip, addCands, addCandFlags, addCandIdsCurrentStrip, isCandAdded);
270 
272  p4Builder_.set(*strip);
273 
274  ++stripBuildIteration;
275  } while (isCandAdded && (stripBuildIteration < maxStripBuildIterations_ || maxStripBuildIterations_ == -1));
276 
277  if (strip->et() > minStripEt_) { // strip passed Et cuts, add it to the event
278  if (verbosity_ >= 2)
279  edm::LogPrint("RecoTauPiZeroStripPlugin2")
280  << "Building strip: Et = " << strip->et() << ", eta = " << strip->eta() << ", phi = " << strip->phi();
281 
282  // Update the vertex
283  if (strip->daughterPtr(0).isNonnull())
284  strip->setVertex(strip->daughterPtr(0)->vertex());
285  output.push_back(std::move(strip));
286 
287  // Mark daughters as being part of this strip
288  markCandsInStrip(seedCandFlags, seedCandIdsCurrentStrip);
289  markCandsInStrip(addCandFlags, addCandIdsCurrentStrip);
290  } else { // strip failed Et cuts, just skip it
291  if (verbosity_ >= 2)
292  edm::LogPrint("RecoTauPiZeroStripPlugin2")
293  << "Discarding strip: Et = " << strip->et() << ", eta = " << strip->eta() << ", phi = " << strip->phi();
294  }
295 
296  ++idxSeed;
297  while (idxSeed < seedCands.size() && seedCandFlags[idxSeed]) {
298  ++idxSeed; // fast-forward to next seed cand not yet included in any strip
299  }
300  }
301 
302  // Check if we want to combine our strips
303  if (combineStrips_ && output.size() > 1) {
304  PiZeroVector stripCombinations;
305  // Sort the output by descending pt
306  output.sort(
307  output.begin(), output.end(), boost::bind(&RecoTauPiZero::pt, _1) > boost::bind(&RecoTauPiZero::pt, _2));
308  // Get the end of interesting set of strips to try and combine
309  PiZeroVector::const_iterator end_iter = takeNElements(output.begin(), output.end(), maxStrips_);
310 
311  // Look at all the combinations
312  for (PiZeroVector::const_iterator first = output.begin(); first != end_iter - 1; ++first) {
313  for (PiZeroVector::const_iterator second = first + 1; second != end_iter; ++second) {
314  Candidate::LorentzVector firstP4 = first->p4();
315  Candidate::LorentzVector secondP4 = second->p4();
316  // If we assume a certain mass for each strip apply it here.
317  firstP4 = applyMassConstraint(firstP4, combinatoricStripMassHypo_);
318  secondP4 = applyMassConstraint(secondP4, combinatoricStripMassHypo_);
319  Candidate::LorentzVector totalP4 = firstP4 + secondP4;
320  // Make our new combined strip
321  std::unique_ptr<RecoTauPiZero> combinedStrips(
322  new RecoTauPiZero(0,
323  totalP4,
324  Candidate::Point(0, 0, 0),
325  //111, 10001, true, RecoTauPiZero::kCombinatoricStrips));
326  111,
327  10001,
328  true,
330 
331  // Now loop over the strip members
332  for (auto const& gamma : first->daughterPtrVector()) {
333  combinedStrips->addDaughter(gamma);
334  }
335  for (auto const& gamma : second->daughterPtrVector()) {
336  combinedStrips->addDaughter(gamma);
337  }
338  // Update the vertex
339  if (combinedStrips->daughterPtr(0).isNonnull())
340  combinedStrips->setVertex(combinedStrips->daughterPtr(0)->vertex());
341  // Add to our collection of combined strips
342  stripCombinations.push_back(std::move(combinedStrips));
343  }
344  }
345  // When done doing all the combinations, add the combined strips to the
346  // output.
347  output.transfer(output.end(), stripCombinations);
348  }
349 
350  return output.release();
351  }

References addCandsToStrip(), reco::tau::RecoTauVertexAssociator::associatedVertex(), reco::TrackBase::charge(), combinatoricStripMassHypo_, combineStrips_, reco::TrackBase::dxy(), reco::TrackBase::dz(), reco::TrackBase::eta(), reco::tau::RecoTauQualityCuts::filterCandRefs(), dqmdumpme::first, CustomPhysics_cfi::gamma, getTrack(), reco::TrackBase::hitPattern(), charmTagsComputerCvsB_cfi::idx, inputParticleIds_, edm::RefToBase< T >::isNonnull(), metsig::jet, reco::RecoTauPiZero::kStrips, reco::RecoTauPiZero::kUndefined, maxStripBuildIterations_, maxStrips_, minGammaEtStripAdd_, minGammaEtStripSeed_, minStripEt_, eostools::move(), reco::TrackBase::normalizedChi2(), reco::HitPattern::numberOfValidPixelHits(), reco::HitPattern::numberOfValidTrackerHits(), convertSQLitetoXML_cfg::output, p4Builder_, reco::tau::pfCandidates(), reco::TrackBase::phi(), reco::LeafCandidate::pt(), reco::TrackBase::pt(), reco::TrackBase::ptError(), qcuts_, edm::second(), AddFourMomenta::set(), reco::tau::RecoTauQualityCuts::setPV(), digitizers_cfi::strip, reco::tau::takeNElements(), updateStripAfterEachDaughter_, verbosity_, and vertexAssociator_.

Member Data Documentation

◆ applyElecTrackQcuts_

bool reco::tau::RecoTauPiZeroStripPlugin2::applyElecTrackQcuts_
private

Definition at line 68 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by RecoTauPiZeroStripPlugin2().

◆ combinatoricStripMassHypo_

double reco::tau::RecoTauPiZeroStripPlugin2::combinatoricStripMassHypo_
private

Definition at line 84 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ combineStrips_

bool reco::tau::RecoTauPiZeroStripPlugin2::combineStrips_
private

Definition at line 82 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ etaAssociationDistance_

double reco::tau::RecoTauPiZeroStripPlugin2::etaAssociationDistance_
private

Definition at line 75 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by addCandsToStrip(), and RecoTauPiZeroStripPlugin2().

◆ inputParticleIds_

std::vector<int> reco::tau::RecoTauPiZeroStripPlugin2::inputParticleIds_
private

Definition at line 74 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ maxStripBuildIterations_

int reco::tau::RecoTauPiZeroStripPlugin2::maxStripBuildIterations_
private

Definition at line 79 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ maxStrips_

int reco::tau::RecoTauPiZeroStripPlugin2::maxStrips_
private

Definition at line 83 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ minGammaEtStripAdd_

double reco::tau::RecoTauPiZeroStripPlugin2::minGammaEtStripAdd_
private

Definition at line 70 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ minGammaEtStripSeed_

double reco::tau::RecoTauPiZeroStripPlugin2::minGammaEtStripSeed_
private

Definition at line 69 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ minStripEt_

double reco::tau::RecoTauPiZeroStripPlugin2::minStripEt_
private

Definition at line 72 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by operator()(), and RecoTauPiZeroStripPlugin2().

◆ p4Builder_

AddFourMomenta reco::tau::RecoTauPiZeroStripPlugin2::p4Builder_
private

Definition at line 86 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by addCandsToStrip(), and operator()().

◆ phiAssociationDistance_

double reco::tau::RecoTauPiZeroStripPlugin2::phiAssociationDistance_
private

Definition at line 76 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by addCandsToStrip(), and RecoTauPiZeroStripPlugin2().

◆ qcuts_

RecoTauQualityCuts* reco::tau::RecoTauPiZeroStripPlugin2::qcuts_
private

◆ updateStripAfterEachDaughter_

bool reco::tau::RecoTauPiZeroStripPlugin2::updateStripAfterEachDaughter_
private

◆ verbosity_

int reco::tau::RecoTauPiZeroStripPlugin2::verbosity_
private

◆ vertexAssociator_

RecoTauVertexAssociator reco::tau::RecoTauPiZeroStripPlugin2::vertexAssociator_
private

Definition at line 65 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by beginEvent(), and operator()().

reco::tau::RecoTauEventHolderPlugin::evt
const edm::Event * evt() const
Definition: RecoTauPluginsCommon.cc:16
reco::TrackBase::ptError
double ptError() const
error on Pt (set to 1000 TeV if charge==0 for safety)
Definition: TrackBase.h:702
reco::tau::RecoTauPiZeroStripPlugin2::maxStrips_
int maxStrips_
Definition: RecoTauPiZeroStripPlugin2.cc:83
reco::tau::RecoTauPiZeroStripPlugin2::vertexAssociator_
RecoTauVertexAssociator vertexAssociator_
Definition: RecoTauPiZeroStripPlugin2.cc:65
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:32
min
T min(T a, T b)
Definition: MathUtil.h:58
digitizers_cfi.strip
strip
Definition: digitizers_cfi.py:19
CustomPhysics_cfi.gamma
gamma
Definition: CustomPhysics_cfi.py:17
charmTagsComputerCvsB_cfi.idx
idx
Definition: charmTagsComputerCvsB_cfi.py:108
edm::second
U second(std::pair< T, U > const &p)
Definition: ParameterSet.cc:215
reco::tau::RecoTauPiZeroStripPlugin2::verbosity_
int verbosity_
Definition: RecoTauPiZeroStripPlugin2.cc:88
reco::LeafCandidate::pt
double pt() const final
transverse momentum
Definition: LeafCandidate.h:146
dqmdumpme.first
first
Definition: dqmdumpme.py:55
reco::tau::RecoTauPiZeroStripPlugin2::inputParticleIds_
std::vector< int > inputParticleIds_
Definition: RecoTauPiZeroStripPlugin2.cc:74
reco::TrackBase::pt
double pt() const
track transverse momentum
Definition: TrackBase.h:608
reco::tau::RecoTauPiZeroStripPlugin2::p4Builder_
AddFourMomenta p4Builder_
Definition: RecoTauPiZeroStripPlugin2.cc:86
reco::tau::RecoTauPiZeroStripPlugin2::combineStrips_
bool combineStrips_
Definition: RecoTauPiZeroStripPlugin2.cc:82
reco::RecoTauPiZero::kUndefined
Definition: RecoTauPiZero.h:11
reco::tau::RecoTauPiZeroBuilderPlugin::RecoTauPiZeroBuilderPlugin
RecoTauPiZeroBuilderPlugin(const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
Definition: RecoTauPiZeroPlugins.h:40
reco::tau::RecoTauPiZeroStripPlugin2::minGammaEtStripSeed_
double minGammaEtStripSeed_
Definition: RecoTauPiZeroStripPlugin2.cc:69
reco::tau::RecoTauQualityCuts::setPV
void setPV(const reco::VertexRef &vtx)
Update the primary vertex.
Definition: RecoTauQualityCuts.h:46
reco::TrackBase::charge
int charge() const
track electric charge
Definition: TrackBase.h:581
reco::TrackBase::dz
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
Definition: TrackBase.h:602
reco::TrackBase::phi
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:620
reco::tau::RecoTauPiZeroBuilderPlugin::PiZeroVector
boost::ptr_vector< RecoTauPiZero > PiZeroVector
Definition: RecoTauPiZeroPlugins.h:36
reco::tau::RecoTauQualityCuts::filterCandRefs
Coll filterCandRefs(const Coll &refcoll, bool invert=false) const
Filter a ref vector of Candidates.
Definition: RecoTauQualityCuts.h:85
reco::tau::RecoTauVertexAssociator::associatedVertex
reco::VertexRef associatedVertex(const Jet &jet) const
Definition: RecoTauVertexAssociator.cc:378
edm::ParameterSet
Definition: ParameterSet.h:36
reco::tau::RecoTauPiZeroStripPlugin2::applyElecTrackQcuts_
bool applyElecTrackQcuts_
Definition: RecoTauPiZeroStripPlugin2.cc:68
reco::tau::RecoTauPiZeroStripPlugin2::maxStripBuildIterations_
int maxStripBuildIterations_
Definition: RecoTauPiZeroStripPlugin2.cc:79
reco::tau::RecoTauPiZeroStripPlugin2::updateStripAfterEachDaughter_
bool updateStripAfterEachDaughter_
Definition: RecoTauPiZeroStripPlugin2.cc:78
reco::TrackBase::eta
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:623
cand
Definition: decayParser.h:34
reco::tau::RecoTauPiZeroStripPlugin2::minGammaEtStripAdd_
double minGammaEtStripAdd_
Definition: RecoTauPiZeroStripPlugin2.cc:70
CandPtrs
std::vector< reco::CandidatePtr > CandPtrs
Definition: RecoTauCommonUtilities.cc:13
reco::tau::RecoTauPiZeroStripPlugin2::qcuts_
RecoTauQualityCuts * qcuts_
Definition: RecoTauPiZeroStripPlugin2.cc:67
edm::LogPrint
Definition: MessageLogger.h:342
reco::tau::RecoTauPiZeroStripPlugin2::addCandsToStrip
void addCandsToStrip(RecoTauPiZero &, CandPtrs &, const std::vector< bool > &, std::set< size_t > &, bool &) const
Definition: RecoTauPiZeroStripPlugin2.cc:139
reco::TrackBase::normalizedChi2
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
Definition: TrackBase.h:578
reco::tau::RecoTauPiZeroStripPlugin2::phiAssociationDistance_
double phiAssociationDistance_
Definition: RecoTauPiZeroStripPlugin2.cc:76
reco::tau::RecoTauVertexAssociator::setEvent
void setEvent(const edm::Event &evt)
Load the vertices from the event.
Definition: RecoTauVertexAssociator.cc:242
edm::Ptr< Candidate >
getTrack
static const TrackGhostTrackState * getTrack(const BasicGhostTrackState *basic)
Definition: GhostTrackState.cc:49
reco::TrackBase::hitPattern
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
Definition: TrackBase.h:489
reco::tau::takeNElements
InputIterator takeNElements(const InputIterator &begin, const InputIterator &end, size_t N)
Definition: RecoTauCommonUtilities.h:104
eostools.move
def move(src, dest)
Definition: eostools.py:511
reco::HitPattern::numberOfValidTrackerHits
int numberOfValidTrackerHits() const
Definition: HitPattern.h:788
metsig::jet
Definition: SignAlgoResolutions.h:47
edm::RefToBase::isNonnull
bool isNonnull() const
Checks for non-null.
Definition: RefToBase.h:301
AddFourMomenta::set
void set(reco::Candidate &c) const
set up a candidate
Definition: AddFourMomenta.cc:6
HLT_2018_cff.cands
cands
Definition: HLT_2018_cff.py:13762
edm::RefToBase< reco::Track >
reco::tau::RecoTauPiZeroStripPlugin2::etaAssociationDistance_
double etaAssociationDistance_
Definition: RecoTauPiZeroStripPlugin2.cc:75
reco::HitPattern::numberOfValidPixelHits
int numberOfValidPixelHits() const
Definition: HitPattern.h:800
reco::tau::pfCandidates
std::vector< CandidatePtr > pfCandidates(const Jet &jet, int particleId, bool sort=true)
Definition: RecoTauCommonUtilities.cc:59
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
reco::Candidate::Point
math::XYZPoint Point
point in the space
Definition: Candidate.h:40
reco::tau::RecoTauPiZeroStripPlugin2::combinatoricStripMassHypo_
double combinatoricStripMassHypo_
Definition: RecoTauPiZeroStripPlugin2.cc:84
reco::TrackBase::dxy
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
Definition: TrackBase.h:593
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
reco::tau::RecoTauPiZeroStripPlugin2::minStripEt_
double minStripEt_
Definition: RecoTauPiZeroStripPlugin2.cc:72
reco::RecoTauPiZero::kStrips
Definition: RecoTauPiZero.h:14