CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
NoPileUpPFMEtDataProducer Class Reference

#include <NoPileUpPFMEtDataProducer.h>

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

Public Member Functions

 NoPileUpPFMEtDataProducer (const edm::ParameterSet &)
 
 ~NoPileUpPFMEtDataProducer () 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
 

Private Member Functions

void produce (edm::Event &, const edm::EventSetup &) override
 

Private Attributes

double dZcut_
 
std::string jetEnOffsetCorrLabel_
 
PileupJetIdentifier::Id jetIdSelection_
 
PFJetIDSelectionFunctorlooseJetIdAlgo_
 
int maxWarnings_
 
double minJetPt_
 
double minJetPtForMEtCov_
 
std::string moduleLabel_
 
int numWarnings_
 
PFMEtSignInterfaceBasepfMEtSignInterface_
 
edm::EDGetTokenT< reco::VertexCollectionsrcHardScatterVertex_
 
edm::EDGetTokenT< edm::ValueMap< int > > srcJetIds_
 
edm::EDGetTokenT< reco::PFJetCollectionsrcJets_
 
edm::EDGetTokenT< reco::PFJetCollectionsrcJetsForMEtCov_
 
edm::EDGetTokenT< reco::PFCandidateCollectionsrcPFCandidates_
 
edm::EDGetTokenT< edm::View< reco::PFCandidate > > srcPFCandidatesView_
 
edm::EDGetTokenT< PFCandToVertexAssMapsrcPFCandToVertexAssociations_
 
int verbosity_
 

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

Produce input objects used to compute MVA/No-PU MET

Authors
Phil Harris, CERN Christian Veelken, LLR

Definition at line 41 of file NoPileUpPFMEtDataProducer.h.

Constructor & Destructor Documentation

◆ NoPileUpPFMEtDataProducer()

NoPileUpPFMEtDataProducer::NoPileUpPFMEtDataProducer ( const edm::ParameterSet cfg)

Definition at line 15 of file NoPileUpPFMEtDataProducer.cc.

16  : moduleLabel_(cfg.getParameter<std::string>("@module_label")),
17  looseJetIdAlgo_(nullptr),
18  pfMEtSignInterface_(nullptr) {
19  srcJets_ = consumes<reco::PFJetCollection>(cfg.getParameter<edm::InputTag>("srcJets"));
20  srcJetIds_ = consumes<edm::ValueMap<int> >(cfg.getParameter<edm::InputTag>("srcJetIds"));
21  minJetPt_ = cfg.getParameter<double>("minJetPt");
22  std::string jetIdSelection_string = cfg.getParameter<std::string>("jetIdSelection");
23  if (jetIdSelection_string == "loose")
25  else if (jetIdSelection_string == "medium")
27  else if (jetIdSelection_string == "tight")
29  else
30  throw cms::Exception("NoPileUpPFMEtDataProducer")
31  << "Invalid Configuration Parameter 'jetIdSelection' = " << jetIdSelection_string << " !!\n";
32  jetEnOffsetCorrLabel_ = cfg.getParameter<std::string>("jetEnOffsetCorrLabel");
33 
34  srcPFCandidates_ = consumes<reco::PFCandidateCollection>(cfg.getParameter<edm::InputTag>("srcPFCandidates"));
35  srcPFCandidatesView_ = consumes<edm::View<reco::PFCandidate> >(cfg.getParameter<edm::InputTag>("srcPFCandidates"));
37  consumes<PFCandToVertexAssMap>(cfg.getParameter<edm::InputTag>("srcPFCandToVertexAssociations"));
38  srcJetsForMEtCov_ = mayConsume<reco::PFJetCollection>(cfg.getParameter<edm::InputTag>("srcJetsForMEtCov"));
39  minJetPtForMEtCov_ = cfg.getParameter<double>("minJetPtForMEtCov");
40  srcHardScatterVertex_ = consumes<reco::VertexCollection>(cfg.getParameter<edm::InputTag>("srcHardScatterVertex"));
41  dZcut_ = cfg.getParameter<double>("dZcut");
42 
43  edm::ParameterSet cfgPFJetIdAlgo;
44  cfgPFJetIdAlgo.addParameter<std::string>("version", "FIRSTDATA");
45  cfgPFJetIdAlgo.addParameter<std::string>("quality", "LOOSE");
46  looseJetIdAlgo_ = new PFJetIDSelectionFunctor(cfgPFJetIdAlgo);
47 
48  pfMEtSignInterface_ = new PFMEtSignInterfaceBase(cfg.getParameter<edm::ParameterSet>("resolution"));
49 
50  maxWarnings_ = (cfg.exists("maxWarnings")) ? cfg.getParameter<int>("maxWarnings") : 1;
51  numWarnings_ = 0;
52 
53  verbosity_ = (cfg.exists("verbosity")) ? cfg.getParameter<int>("verbosity") : 0;
54 
55  produces<reco::PUSubMETCandInfoCollection>("jetInfos");
56  produces<reco::PUSubMETCandInfoCollection>("pfCandInfos");
57 }

References edm::ParameterSet::addParameter(), looper::cfg, dZcut_, Exception, jetEnOffsetCorrLabel_, jetIdSelection_, PileupJetIdentifier::kLoose, PileupJetIdentifier::kMedium, PileupJetIdentifier::kTight, looseJetIdAlgo_, maxWarnings_, minJetPt_, minJetPtForMEtCov_, numWarnings_, pfMEtSignInterface_, srcHardScatterVertex_, srcJetIds_, srcJets_, srcJetsForMEtCov_, srcPFCandidates_, srcPFCandidatesView_, srcPFCandToVertexAssociations_, AlCaHLTBitMon_QueryRunRegistry::string, and verbosity_.

◆ ~NoPileUpPFMEtDataProducer()

NoPileUpPFMEtDataProducer::~NoPileUpPFMEtDataProducer ( )
override

Definition at line 59 of file NoPileUpPFMEtDataProducer.cc.

59  {
60  delete looseJetIdAlgo_;
61  delete pfMEtSignInterface_;
62 }

References looseJetIdAlgo_, and pfMEtSignInterface_.

Member Function Documentation

◆ produce()

void NoPileUpPFMEtDataProducer::produce ( edm::Event evt,
const edm::EventSetup es 
)
overrideprivate

Definition at line 130 of file NoPileUpPFMEtDataProducer.cc.

130  {
131  LogDebug("produce") << "<NoPileUpPFMEtDataProducer::produce>:\n"
132  << " moduleLabel = " << moduleLabel_ << std::endl;
133 
134  // get jets
136  evt.getByToken(srcJets_, jets);
137 
138  typedef edm::ValueMap<int> jetIdMap;
139  edm::Handle<jetIdMap> jetIds;
140  evt.getByToken(srcJetIds_, jetIds);
141 
142  // get jets for computing contributions to PFMEt significance matrix
145  evt.getByToken(srcJetsForMEtCov_, jetsForMEtCov);
146 
147  // get PFCandidates
150 
151  std::vector<int> pfCandidateFlags(pfCandidates->size());
152  std::vector<const reco::PFJet*> pfCandidateToJetAssociations(pfCandidates->size());
153 
155  evt.getByToken(srcPFCandidates_, pfCandidateHandle);
156 
157  // get PFCandidate-to-vertex associations and "the" hard-scatter vertex
158  edm::Handle<PFCandToVertexAssMap> pfCandToVertexAssociations;
159  evt.getByToken(srcPFCandToVertexAssociations_, pfCandToVertexAssociations);
160 
161  noPuUtils::reversedPFCandToVertexAssMap pfCandToVertexAssociations_reversed =
162  noPuUtils::reversePFCandToVertexAssociation(*pfCandToVertexAssociations);
163 
164  edm::Handle<reco::VertexCollection> hardScatterVertex;
165  evt.getByToken(srcHardScatterVertex_, hardScatterVertex);
166 
167  auto jetInfos = std::make_unique<reco::PUSubMETCandInfoCollection>();
168  auto pfCandInfos = std::make_unique<reco::PUSubMETCandInfoCollection>();
169 
170  const JetCorrector* jetEnOffsetCorrector = nullptr;
171  if (!jetEnOffsetCorrLabel_.empty()) {
172  jetEnOffsetCorrector = JetCorrector::getJetCorrector(jetEnOffsetCorrLabel_, es);
173  if (!jetEnOffsetCorrector)
174  throw cms::Exception("NoPileUpPFMEtDataProducer::produce")
175  << "Failed to access Jet corrections for = " << jetEnOffsetCorrLabel_ << " !!\n";
176  }
177 
178  size_t numJets = jets->size();
179  for (size_t iJet = 0; iJet < numJets; ++iJet) {
180  reco::PFJetRef jet(jets, iJet);
181  if (!(jet->pt() > minJetPt_))
182  continue;
183 
184  bool passesLooseJetId = (*looseJetIdAlgo_)(*jet);
185  if (!passesLooseJetId) {
186  setPFCandidateFlag(*jet, *pfCandidates, pfCandidateFlags, flag_isWithinFakeJet, numWarnings_, maxWarnings_);
187  }
188  setPFCandidateFlag(*jet, *pfCandidates, pfCandidateFlags, flag_isWithinSelectedJet, numWarnings_, maxWarnings_);
189 
190  reco::PUSubMETCandInfo jetInfo;
191  jetInfo.setP4(jet->p4());
192  int jetId = (*jetIds)[jet];
193  bool jetIdSelection_passed = PileupJetIdentifier::passJetId(jetId, jetIdSelection_);
194  jetInfo.setType((jetIdSelection_passed) ? reco::PUSubMETCandInfo::kHS : reco::PUSubMETCandInfo::kPU);
195  jetInfo.setPassesLooseJetId(passesLooseJetId);
196  double jetEnergy_uncorrected = jet->chargedHadronEnergy() + jet->neutralHadronEnergy() + jet->photonEnergy() +
197  jet->electronEnergy() + jet->muonEnergy() + jet->HFHadronEnergy() +
198  jet->HFEMEnergy();
199  double jetPx_uncorrected = cos(jet->phi()) * sin(jet->theta()) * jetEnergy_uncorrected;
200  double jetPy_uncorrected = sin(jet->phi()) * sin(jet->theta()) * jetEnergy_uncorrected;
201  double jetPz_uncorrected = cos(jet->theta()) * jetEnergy_uncorrected;
203  jetPx_uncorrected, jetPy_uncorrected, jetPz_uncorrected, jetEnergy_uncorrected);
204  reco::PFJet rawJet(*jet);
205  rawJet.setP4(rawJetP4);
206  double jetNeutralEnFrac = (jetEnergy_uncorrected > 0.)
207  ? (jet->neutralEmEnergy() + jet->neutralHadronEnergy()) / jetEnergy_uncorrected
208  : -1.;
209  jetInfo.setChargedEnFrac((1 - jetNeutralEnFrac));
210  jetInfo.setOffsetEnCorr(
211  (jetEnOffsetCorrector) ? rawJet.energy() * (1. - jetEnOffsetCorrector->correction(rawJet, evt, es)) : 0.);
213 
214  jetInfos->push_back(jetInfo);
215  }
216  LogDebug("produce") << "#jetInfos = " << jetInfos->size() << std::endl;
217 
218  for (reco::PFJetCollection::const_iterator jet = jets->begin(); jet != jets->end(); ++jet) {
219  if (jet->pt() > minJetPtForMEtCov_) {
220  setPFCandidateFlag(*jet,
221  *pfCandidates,
222  pfCandidateFlags,
224  numWarnings_,
225  maxWarnings_,
226  &pfCandidateToJetAssociations);
227  }
228  }
229 
230  size_t numPFCandidates = pfCandidates->size();
231  for (size_t iPFCandidate = 0; iPFCandidate < numPFCandidates; ++iPFCandidate) {
232  reco::PFCandidatePtr pfCandidatePtr = pfCandidates->ptrAt(iPFCandidate);
233 
234  int idx = pfCandidatePtr.key();
235  reco::PUSubMETCandInfo pfCandInfo;
236  pfCandInfo.setP4(pfCandidatePtr->p4());
237  pfCandInfo.setCharge(pfCandidatePtr->charge());
238  pfCandInfo.setType(-1);
239  // CV: need to call isVertexAssociated_fast instead of isVertexAssociated function
240  // (makes run-time of MVAPFMEtDataProducer::produce decrease from ~1s per event to ~0.35s per event)
241  //int vtxAssociationType = isVertexAssociated(*pfCandidatePtr, *pfCandToVertexAssociations, *hardScatterVertex, dZcut_);
242  reco::PFCandidateRef pfCandidateRef(pfCandidateHandle, iPFCandidate);
243  int vtxAssociationType = noPuUtils::isVertexAssociated_fast(
244  pfCandidateRef, pfCandToVertexAssociations_reversed, *hardScatterVertex, dZcut_, numWarnings_, maxWarnings_);
245  bool isHardScatterVertex_associated = (vtxAssociationType == noPuUtils::kChHSAssoc);
246  if (pfCandidatePtr->charge() == 0)
248  else if (isHardScatterVertex_associated)
250  else
252  pfCandInfo.setIsWithinJet((pfCandidateFlags[idx] & flag_isWithinSelectedJet));
253  if (pfCandInfo.isWithinJet())
254  pfCandInfo.setPassesLooseJetId((pfCandidateFlags[idx] & flag_isWithinFakeJet));
255  else
256  pfCandInfo.setPassesLooseJetId(true);
257 
258  // CV: for PFCandidates that are within PFJets (of Pt between 'minJetPtForMEtCov' and 'minJetPt'),
259  // take contribution to PFMEt significance matrix from associated PFJet.
260  // (energy uncertainty scaled by ratio of PFCandidate/PFJet energy)
261  const reco::PFJet* jet_matched = pfCandidateToJetAssociations[idx];
262  if (jet_matched) {
263  metsig::SigInputObj pfCandResolution = pfMEtSignInterface_->compResolution(pfCandidatePtr.get());
264  metsig::SigInputObj jetResolution = pfMEtSignInterface_->compResolution(jet_matched);
265 
266  metsig::SigInputObj metSign;
267  metSign.set(pfCandResolution.get_type(),
268  pfCandResolution.get_energy(),
269  pfCandResolution.get_phi(),
270  jetResolution.get_sigma_e() * (pfCandidatePtr->energy() / jet_matched->energy()),
271  jetResolution.get_sigma_tan());
272  pfCandInfo.setMEtSignObj(metSign);
273  } else {
274  pfCandInfo.setMEtSignObj(pfMEtSignInterface_->compResolution(pfCandidatePtr.get()));
275  }
276 
277  pfCandInfos->push_back(pfCandInfo);
278  }
279 
280  LogDebug("produce") << "#pfCandInfos = " << pfCandInfos->size() << std::endl;
281 
282  evt.put(std::move(jetInfos), "jetInfos");
283  evt.put(std::move(pfCandInfos), "pfCandInfos");
284 }

References PFMEtSignInterfaceBase::compResolution(), JetCorrector::correction(), funct::cos(), dZcut_, reco::LeafCandidate::energy(), Exception, flag_isWithinFakeJet, flag_isWithinJetForMEtCov, flag_isWithinSelectedJet, edm::Ptr< T >::get(), metsig::SigInputObj::get_energy(), metsig::SigInputObj::get_phi(), metsig::SigInputObj::get_sigma_e(), metsig::SigInputObj::get_sigma_tan(), metsig::SigInputObj::get_type(), edm::Event::getByToken(), JetCorrector::getJetCorrector(), training_settings::idx, edm::EDGetTokenT< T >::isUninitialized(), noPuUtils::isVertexAssociated_fast(), reco::PUSubMETCandInfo::isWithinJet(), metsig::jet, jetEnOffsetCorrLabel_, PhotonMonitor_cff::jetId, jetIdSelection_, singleTopDQM_cfi::jets, reco::PUSubMETCandInfo::kChHS, noPuUtils::kChHSAssoc, reco::PUSubMETCandInfo::kChPU, edm::Ptr< T >::key(), reco::PUSubMETCandInfo::kHS, reco::PUSubMETCandInfo::kNeutral, reco::PUSubMETCandInfo::kPU, LogDebug, maxWarnings_, minJetPt_, minJetPtForMEtCov_, moduleLabel_, eostools::move(), numWarnings_, PileupJetIdentifier::passJetId(), zmumugammaAnalyzer_cfi::pfCandidates, pfMEtSignInterface_, edm::Event::put(), noPuUtils::reversePFCandToVertexAssociation(), metsig::SigInputObj::set(), reco::PUSubMETCandInfo::setCharge(), reco::PUSubMETCandInfo::setChargedEnFrac(), reco::PUSubMETCandInfo::setIsWithinJet(), reco::PUSubMETCandInfo::setMEtSignObj(), reco::PUSubMETCandInfo::setOffsetEnCorr(), reco::PUSubMETCandInfo::setP4(), reco::LeafCandidate::setP4(), reco::PUSubMETCandInfo::setPassesLooseJetId(), reco::PUSubMETCandInfo::setType(), funct::sin(), srcHardScatterVertex_, srcJetIds_, srcJets_, srcJetsForMEtCov_, srcPFCandidates_, srcPFCandidatesView_, and srcPFCandToVertexAssociations_.

Member Data Documentation

◆ dZcut_

double NoPileUpPFMEtDataProducer::dZcut_
private

Definition at line 63 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ jetEnOffsetCorrLabel_

std::string NoPileUpPFMEtDataProducer::jetEnOffsetCorrLabel_
private

Definition at line 55 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ jetIdSelection_

PileupJetIdentifier::Id NoPileUpPFMEtDataProducer::jetIdSelection_
private

Definition at line 54 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ looseJetIdAlgo_

PFJetIDSelectionFunctor* NoPileUpPFMEtDataProducer::looseJetIdAlgo_
private

◆ maxWarnings_

int NoPileUpPFMEtDataProducer::maxWarnings_
private

Definition at line 69 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ minJetPt_

double NoPileUpPFMEtDataProducer::minJetPt_
private

Definition at line 53 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ minJetPtForMEtCov_

double NoPileUpPFMEtDataProducer::minJetPtForMEtCov_
private

Definition at line 61 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ moduleLabel_

std::string NoPileUpPFMEtDataProducer::moduleLabel_
private

◆ numWarnings_

int NoPileUpPFMEtDataProducer::numWarnings_
private

Definition at line 70 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ pfMEtSignInterface_

PFMEtSignInterfaceBase* NoPileUpPFMEtDataProducer::pfMEtSignInterface_
private

◆ srcHardScatterVertex_

edm::EDGetTokenT<reco::VertexCollection> NoPileUpPFMEtDataProducer::srcHardScatterVertex_
private

Definition at line 62 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcJetIds_

edm::EDGetTokenT<edm::ValueMap<int> > NoPileUpPFMEtDataProducer::srcJetIds_
private

Definition at line 52 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcJets_

edm::EDGetTokenT<reco::PFJetCollection> NoPileUpPFMEtDataProducer::srcJets_
private

Definition at line 51 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcJetsForMEtCov_

edm::EDGetTokenT<reco::PFJetCollection> NoPileUpPFMEtDataProducer::srcJetsForMEtCov_
private

Definition at line 60 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcPFCandidates_

edm::EDGetTokenT<reco::PFCandidateCollection> NoPileUpPFMEtDataProducer::srcPFCandidates_
private

Definition at line 57 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcPFCandidatesView_

edm::EDGetTokenT<edm::View<reco::PFCandidate> > NoPileUpPFMEtDataProducer::srcPFCandidatesView_
private

Definition at line 58 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ srcPFCandToVertexAssociations_

edm::EDGetTokenT<PFCandToVertexAssMap> NoPileUpPFMEtDataProducer::srcPFCandToVertexAssociations_
private

Definition at line 59 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer(), and produce().

◆ verbosity_

int NoPileUpPFMEtDataProducer::verbosity_
private

Definition at line 72 of file NoPileUpPFMEtDataProducer.h.

Referenced by NoPileUpPFMEtDataProducer().

reco::PUSubMETCandInfo::setIsWithinJet
void setIsWithinJet(bool isWJ)
Definition: PUSubMETData.h:53
reco::PUSubMETCandInfo::kHS
Definition: PUSubMETData.h:63
zmumugammaAnalyzer_cfi.pfCandidates
pfCandidates
Definition: zmumugammaAnalyzer_cfi.py:11
NoPileUpPFMEtDataProducer::looseJetIdAlgo_
PFJetIDSelectionFunctor * looseJetIdAlgo_
Definition: NoPileUpPFMEtDataProducer.h:65
reco::PUSubMETCandInfo::setPassesLooseJetId
void setPassesLooseJetId(float jetId)
Definition: PUSubMETData.h:54
PileupJetIdentifier::passJetId
static bool passJetId(int flag, Id level)
Definition: PileupJetIdentifier.h:89
reco::PUSubMETCandInfo::setCharge
void setCharge(int charge)
Definition: PUSubMETData.h:50
PileupJetIdentifier::kTight
Definition: PileupJetIdentifier.h:87
noPuUtils::kChHSAssoc
Definition: NoPileUpMEtAuxFunctions.h:22
metsig::SigInputObj::set
void set(const std::string &m_type, const double &m_energy, const double &m_phi, const double &m_sigma_e, const double &m_sigma_tan)
Definition: SigInputObj.h:42
NoPileUpPFMEtDataProducer::pfMEtSignInterface_
PFMEtSignInterfaceBase * pfMEtSignInterface_
Definition: NoPileUpPFMEtDataProducer.h:67
flag_isWithinSelectedJet
const int flag_isWithinSelectedJet
Definition: NoPileUpPFMEtDataProducer.cc:10
NoPileUpPFMEtDataProducer::minJetPt_
double minJetPt_
Definition: NoPileUpPFMEtDataProducer.h:53
NoPileUpPFMEtDataProducer::srcHardScatterVertex_
edm::EDGetTokenT< reco::VertexCollection > srcHardScatterVertex_
Definition: NoPileUpPFMEtDataProducer.h:62
reco::PUSubMETCandInfo::setP4
void setP4(const reco::Candidate::LorentzVector p4)
Definition: PUSubMETData.h:46
edm::Ptr::get
T const * get() const
Returns C++ pointer to the item.
Definition: Ptr.h:139
singleTopDQM_cfi.jets
jets
Definition: singleTopDQM_cfi.py:42
NoPileUpPFMEtDataProducer::verbosity_
int verbosity_
Definition: NoPileUpPFMEtDataProducer.h:72
metsig::SigInputObj::get_energy
double get_energy() const
Definition: SigInputObj.h:37
reco::PUSubMETCandInfo::kPU
Definition: PUSubMETData.h:63
edm::Ptr::key
key_type key() const
Definition: Ptr.h:163
reco::PUSubMETCandInfo::setType
void setType(int type)
Definition: PUSubMETData.h:49
edm::Handle< reco::PFJetCollection >
training_settings.idx
idx
Definition: training_settings.py:16
JetCorrector
Definition: JetCorrector.h:19
NoPileUpPFMEtDataProducer::jetEnOffsetCorrLabel_
std::string jetEnOffsetCorrLabel_
Definition: NoPileUpPFMEtDataProducer.h:55
reco::PUSubMETCandInfo::setChargedEnFrac
void setChargedEnFrac(float chEnF)
Definition: PUSubMETData.h:57
PFMEtSignInterfaceBase::compResolution
metsig::SigInputObj compResolution(const T *particle) const
Definition: PFMEtSignInterfaceBase.h:45
PFJetIDSelectionFunctor
PF Jet selector for pat::Jets.
Definition: PFJetIDSelectionFunctor.h:25
edm::Ref< PFJetCollection >
metsig::SigInputObj::get_phi
double get_phi() const
Definition: SigInputObj.h:38
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
reco::PUSubMETCandInfo
Definition: PUSubMETData.h:21
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
NoPileUpPFMEtDataProducer::maxWarnings_
int maxWarnings_
Definition: NoPileUpPFMEtDataProducer.h:69
reco::PUSubMETCandInfo::kChHS
Definition: PUSubMETData.h:63
metsig::SigInputObj::get_sigma_e
double get_sigma_e() const
Definition: SigInputObj.h:39
edm::EDGetTokenT::isUninitialized
bool isUninitialized() const
Definition: EDGetToken.h:70
noPuUtils::isVertexAssociated_fast
int isVertexAssociated_fast(const reco::PFCandidateRef &, const noPuUtils::reversedPFCandToVertexAssMap &, const reco::VertexCollection &, double, int &, int)
Definition: NoPileUpMEtAuxFunctions.cc:64
reco::PUSubMETCandInfo::kChPU
Definition: PUSubMETData.h:63
NoPileUpPFMEtDataProducer::srcJetsForMEtCov_
edm::EDGetTokenT< reco::PFJetCollection > srcJetsForMEtCov_
Definition: NoPileUpPFMEtDataProducer.h:60
edm::Event::getByToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:528
NoPileUpPFMEtDataProducer::srcPFCandToVertexAssociations_
edm::EDGetTokenT< PFCandToVertexAssMap > srcPFCandToVertexAssociations_
Definition: NoPileUpPFMEtDataProducer.h:59
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
NoPileUpPFMEtDataProducer::srcJetIds_
edm::EDGetTokenT< edm::ValueMap< int > > srcJetIds_
Definition: NoPileUpPFMEtDataProducer.h:52
flag_isWithinJetForMEtCov
const int flag_isWithinJetForMEtCov
Definition: NoPileUpPFMEtDataProducer.cc:11
NoPileUpPFMEtDataProducer::numWarnings_
int numWarnings_
Definition: NoPileUpPFMEtDataProducer.h:70
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:670
edm::ParameterSet
Definition: ParameterSet.h:36
metsig::SigInputObj::get_type
std::string get_type() const
Definition: SigInputObj.h:36
edm::AssociationMap
Definition: AssociationMap.h:48
NoPileUpPFMEtDataProducer::srcPFCandidatesView_
edm::EDGetTokenT< edm::View< reco::PFCandidate > > srcPFCandidatesView_
Definition: NoPileUpPFMEtDataProducer.h:58
edm::ParameterSet::addParameter
void addParameter(std::string const &name, T const &value)
Definition: ParameterSet.h:124
edm::Event::put
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:132
NoPileUpPFMEtDataProducer::srcPFCandidates_
edm::EDGetTokenT< reco::PFCandidateCollection > srcPFCandidates_
Definition: NoPileUpPFMEtDataProducer.h:57
JetCorrector::getJetCorrector
static const JetCorrector * getJetCorrector(const std::string &fName, const edm::EventSetup &fSetup)
retrieve corrector from the event setup. troughs exception if something is missing
Definition: JetCorrector.cc:48
edm::Ptr< PFCandidate >
looper.cfg
cfg
Definition: looper.py:297
reco::PUSubMETCandInfo::setOffsetEnCorr
void setOffsetEnCorr(float offset)
Definition: PUSubMETData.h:55
JetCorrector::correction
virtual double correction(const LorentzVector &fJet) const =0
get correction using Jet information only
NoPileUpPFMEtDataProducer::srcJets_
edm::EDGetTokenT< reco::PFJetCollection > srcJets_
Definition: NoPileUpPFMEtDataProducer.h:51
eostools.move
def move(src, dest)
Definition: eostools.py:511
reco::PUSubMETCandInfo::kNeutral
Definition: PUSubMETData.h:63
PileupJetIdentifier::kLoose
Definition: PileupJetIdentifier.h:87
metsig::jet
Definition: SignAlgoResolutions.h:47
edm::ValueMap< int >
Exception
Definition: hltDiff.cc:246
reco::PFJet
Jets made from PFObjects.
Definition: PFJet.h:20
reco::LeafCandidate::energy
double energy() const final
energy
Definition: LeafCandidate.h:125
PFMEtSignInterfaceBase
Definition: PFMEtSignInterfaceBase.h:39
reco::PUSubMETCandInfo::isWithinJet
bool isWithinJet() const
Definition: PUSubMETData.h:37
NoPileUpPFMEtDataProducer::moduleLabel_
std::string moduleLabel_
Definition: NoPileUpPFMEtDataProducer.h:49
NoPileUpPFMEtDataProducer::dZcut_
double dZcut_
Definition: NoPileUpPFMEtDataProducer.h:63
noPuUtils::reversePFCandToVertexAssociation
noPuUtils::reversedPFCandToVertexAssMap reversePFCandToVertexAssociation(const PFCandToVertexAssMap &)
Definition: NoPileUpMEtAuxFunctions.cc:44
metsig::SigInputObj::get_sigma_tan
double get_sigma_tan() const
Definition: SigInputObj.h:40
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
PhotonMonitor_cff.jetId
jetId
Definition: PhotonMonitor_cff.py:70
PileupJetIdentifier::kMedium
Definition: PileupJetIdentifier.h:87
edm::InputTag
Definition: InputTag.h:15
metsig::SigInputObj
Definition: SigInputObj.h:29
NoPileUpPFMEtDataProducer::minJetPtForMEtCov_
double minJetPtForMEtCov_
Definition: NoPileUpPFMEtDataProducer.h:61
NoPileUpPFMEtDataProducer::jetIdSelection_
PileupJetIdentifier::Id jetIdSelection_
Definition: NoPileUpPFMEtDataProducer.h:54
reco::PUSubMETCandInfo::setMEtSignObj
void setMEtSignObj(metsig::SigInputObj msig)
Definition: PUSubMETData.h:59
flag_isWithinFakeJet
const int flag_isWithinFakeJet
Definition: NoPileUpPFMEtDataProducer.cc:9