CMS 3D CMS Logo

RecoTauSoftTwoProngTausCleanerPlugin.cc
Go to the documentation of this file.
1 /*
2  * RecoTauSoftTwoProngTausCleanerPlugin
3  *
4  * Author: Christian Veelken, NICPB Tallinn
5  *
6  * Remove 2-prong PFTaus with a low pT track, in order to reduce rate of 1-prong taus migrating to 2-prong decay mode
7  */
8 
12 
13 namespace reco {
14  namespace tau {
15 
17  public:
19 
20  // Get ranking value for a given tau Ref
21  double operator()(const reco::PFTauRef&) const override;
22 
23  private:
24  double minTrackPt_;
25  };
26 
30  minTrackPt_ = pset.getParameter<double>("minTrackPt");
31  }
32 
34  double result = 0.;
35  const std::vector<PFRecoTauChargedHadron>& chargedHadrons = tau->signalTauChargedHadronCandidates();
36  if (chargedHadrons.size() == 2) {
37  for (std::vector<PFRecoTauChargedHadron>::const_iterator chargedHadron = chargedHadrons.begin();
38  chargedHadron != chargedHadrons.end();
39  ++chargedHadron) {
41  if (!(track != nullptr && track->pt() > minTrackPt_))
42  result += 1.e+3;
43  }
44  }
45  return result;
46  }
47 
48  } // namespace tau
49 } // namespace reco
50 
51 // Register our plugin
55  "RecoTauSoftTwoProngTausCleanerPlugin");
reco::tau::RecoTauSoftTwoProngTausCleanerPlugin::minTrackPt_
double minTrackPt_
Definition: RecoTauSoftTwoProngTausCleanerPlugin.cc:24
PFTauDiscriminator.h
metsig::tau
Definition: SignAlgoResolutions.h:49
reco::tau::getTrackFromChargedHadron
const reco::Track * getTrackFromChargedHadron(const reco::PFRecoTauChargedHadron &chargedHadron)
Definition: pfRecoTauChargedHadronAuxFunctions.cc:12
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
HPSPFTauProducerPuppi_cfi.chargedHadron
chargedHadron
Definition: HPSPFTauProducerPuppi_cfi.py:7
edm::Ref< PFTauCollection >
MakerMacros.h
reco::Track
Definition: Track.h:27
DEFINE_EDM_PLUGIN
#define DEFINE_EDM_PLUGIN(factory, type, name)
Definition: PluginFactory.h:124
edm::ParameterSet
Definition: ParameterSet.h:36
edmplugin::PluginFactory
Definition: PluginFactory.h:34
reco::tau::RecoTauSoftTwoProngTausCleanerPlugin::RecoTauSoftTwoProngTausCleanerPlugin
RecoTauSoftTwoProngTausCleanerPlugin(const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
Definition: RecoTauSoftTwoProngTausCleanerPlugin.cc:27
RecoTauBuilderPlugins.h
eostools.move
def move(src, dest)
Definition: eostools.py:511
std
Definition: JetResolutionObject.h:76
reco::tau::RecoTauSoftTwoProngTausCleanerPlugin::operator()
double operator()(const reco::PFTauRef &) const override
Definition: RecoTauSoftTwoProngTausCleanerPlugin.cc:33
reco::tau::RecoTauSoftTwoProngTausCleanerPlugin
Definition: RecoTauSoftTwoProngTausCleanerPlugin.cc:16
reco::tau::RecoTauCleanerPlugin
Definition: RecoTauBuilderPlugins.h:116
pfRecoTauChargedHadronAuxFunctions.h
HLT_2018_cff.track
track
Definition: HLT_2018_cff.py:10352
mps_fire.result
result
Definition: mps_fire.py:303
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27