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 51 of file RecoTauPiZeroStripPlugin2.cc.

Member Typedef Documentation

◆ CandPtrs

Definition at line 61 of file RecoTauPiZeroStripPlugin2.cc.

Constructor & Destructor Documentation

◆ RecoTauPiZeroStripPlugin2()

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

Definition at line 90 of file RecoTauPiZeroStripPlugin2.cc.

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

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 133 of file RecoTauPiZeroStripPlugin2.cc.

133 { 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 138 of file RecoTauPiZeroStripPlugin2.cc.

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

References HLT_FULL_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 191 of file RecoTauPiZeroStripPlugin2.cc.

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

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(), heavyIonCSV_trainingSettings::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::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 67 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by RecoTauPiZeroStripPlugin2().

◆ combinatoricStripMassHypo_

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

Definition at line 83 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ combineStrips_

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

Definition at line 81 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ etaAssociationDistance_

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

Definition at line 74 of file RecoTauPiZeroStripPlugin2.cc.

Referenced by addCandsToStrip(), and RecoTauPiZeroStripPlugin2().

◆ inputParticleIds_

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

Definition at line 73 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ maxStripBuildIterations_

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

Definition at line 78 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ maxStrips_

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

Definition at line 82 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ minGammaEtStripAdd_

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

Definition at line 69 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ minGammaEtStripSeed_

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

Definition at line 68 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ minStripEt_

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

Definition at line 71 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ p4Builder_

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

Definition at line 85 of file RecoTauPiZeroStripPlugin2.cc.

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

◆ phiAssociationDistance_

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

Definition at line 75 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 64 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:754
reco::tau::RecoTauPiZeroStripPlugin2::maxStrips_
int maxStrips_
Definition: RecoTauPiZeroStripPlugin2.cc:82
reco::tau::RecoTauPiZeroStripPlugin2::vertexAssociator_
RecoTauVertexAssociator vertexAssociator_
Definition: RecoTauPiZeroStripPlugin2.cc:64
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:72
min
T min(T a, T b)
Definition: MathUtil.h:58
digitizers_cfi.strip
strip
Definition: digitizers_cfi.py:19
edm::LogPrint
Log< level::Warning, true > LogPrint
Definition: MessageLogger.h:130
CustomPhysics_cfi.gamma
gamma
Definition: CustomPhysics_cfi.py:17
edm::second
U second(std::pair< T, U > const &p)
Definition: ParameterSet.cc:222
reco::tau::RecoTauPiZeroStripPlugin2::verbosity_
int verbosity_
Definition: RecoTauPiZeroStripPlugin2.cc:87
dqmdumpme.first
first
Definition: dqmdumpme.py:55
reco::tau::RecoTauPiZeroStripPlugin2::inputParticleIds_
std::vector< int > inputParticleIds_
Definition: RecoTauPiZeroStripPlugin2.cc:73
heavyIonCSV_trainingSettings.idx
idx
Definition: heavyIonCSV_trainingSettings.py:5
reco::TrackBase::pt
double pt() const
track transverse momentum
Definition: TrackBase.h:637
reco::tau::RecoTauPiZeroStripPlugin2::p4Builder_
AddFourMomenta p4Builder_
Definition: RecoTauPiZeroStripPlugin2.cc:85
reco::tau::RecoTauPiZeroStripPlugin2::combineStrips_
bool combineStrips_
Definition: RecoTauPiZeroStripPlugin2.cc:81
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:68
reco::tau::RecoTauQualityCuts::setPV
void setPV(const reco::VertexRef &vtx)
Update the primary vertex.
Definition: RecoTauQualityCuts.h:47
reco::TrackBase::charge
int charge() const
track electric charge
Definition: TrackBase.h:596
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:622
reco::TrackBase::phi
double phi() const
azimuthal angle of momentum vector
Definition: TrackBase.h:649
reco::tau::RecoTauPiZeroBuilderPlugin::PiZeroVector
boost::ptr_vector< RecoTauPiZero > PiZeroVector
Definition: RecoTauPiZeroPlugins.h:36
HLT_FULL_cff.cands
cands
Definition: HLT_FULL_cff.py:15205
reco::tau::RecoTauQualityCuts::filterCandRefs
Coll filterCandRefs(const Coll &refcoll, bool invert=false) const
Filter a ref vector of Candidates.
Definition: RecoTauQualityCuts.h:86
reco::tau::RecoTauVertexAssociator::associatedVertex
reco::VertexRef associatedVertex(const Jet &jet) const
Definition: RecoTauVertexAssociator.cc:377
edm::ParameterSet
Definition: ParameterSet.h:47
reco::tau::RecoTauPiZeroStripPlugin2::applyElecTrackQcuts_
bool applyElecTrackQcuts_
Definition: RecoTauPiZeroStripPlugin2.cc:67
reco::tau::RecoTauPiZeroStripPlugin2::maxStripBuildIterations_
int maxStripBuildIterations_
Definition: RecoTauPiZeroStripPlugin2.cc:78
reco::tau::RecoTauPiZeroStripPlugin2::updateStripAfterEachDaughter_
bool updateStripAfterEachDaughter_
Definition: RecoTauPiZeroStripPlugin2.cc:77
reco::TrackBase::eta
double eta() const
pseudorapidity of momentum vector
Definition: TrackBase.h:652
cand
Definition: decayParser.h:32
reco::tau::RecoTauPiZeroStripPlugin2::minGammaEtStripAdd_
double minGammaEtStripAdd_
Definition: RecoTauPiZeroStripPlugin2.cc:69
CandPtrs
std::vector< reco::CandidatePtr > CandPtrs
Definition: RecoTauCommonUtilities.cc:13
reco::tau::RecoTauPiZeroStripPlugin2::qcuts_
RecoTauQualityCuts * qcuts_
Definition: RecoTauPiZeroStripPlugin2.cc:66
reco::tau::RecoTauPiZeroStripPlugin2::addCandsToStrip
void addCandsToStrip(RecoTauPiZero &, CandPtrs &, const std::vector< bool > &, std::set< size_t > &, bool &) const
Definition: RecoTauPiZeroStripPlugin2.cc:138
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:593
reco::tau::RecoTauPiZeroStripPlugin2::phiAssociationDistance_
double phiAssociationDistance_
Definition: RecoTauPiZeroStripPlugin2.cc:75
reco::tau::RecoTauVertexAssociator::setEvent
void setEvent(const edm::Event &evt)
Load the vertices from the event.
Definition: RecoTauVertexAssociator.cc:241
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:504
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
edm::RefToBase< reco::Track >
reco::tau::RecoTauPiZeroStripPlugin2::etaAssociationDistance_
double etaAssociationDistance_
Definition: RecoTauPiZeroStripPlugin2.cc:74
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:83
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:608
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
reco::tau::RecoTauPiZeroStripPlugin2::minStripEt_
double minStripEt_
Definition: RecoTauPiZeroStripPlugin2.cc:71
reco::RecoTauPiZero::kStrips
Definition: RecoTauPiZero.h:14