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 hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () 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(), heavyIonCSV_trainingSettings::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
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
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
edm::EDGetTokenT::isUninitialized
constexpr bool isUninitialized() const noexcept
Definition: EDGetToken.h:99
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
noPuUtils::kChHSAssoc
Definition: NoPileUpMEtAuxFunctions.h:22
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 >
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:46
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
heavyIonCSV_trainingSettings.idx
idx
Definition: heavyIonCSV_trainingSettings.py:5
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
metsig::SigInputObj::get_sigma_e
double get_sigma_e() const
Definition: SigInputObj.h:39
noPuUtils::isVertexAssociated_fast
int isVertexAssociated_fast(const reco::PFCandidateRef &, const noPuUtils::reversedPFCandToVertexAssMap &, const reco::VertexCollection &, double, int &, int)
Definition: NoPileUpMEtAuxFunctions.cc:64
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:535
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:233
edm::ParameterSet
Definition: ParameterSet.h:47
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:135
edm::Event::put
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:133
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
reco::PUSubMETCandInfo::kPU
Definition: PUSubMETData.h:63
reco::PUSubMETCandInfo::kChPU
Definition: PUSubMETData.h:63
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
PileupJetIdentifier::kLoose
Definition: PileupJetIdentifier.h:87
metsig::jet
Definition: SignAlgoResolutions.h:47
edm::ValueMap< int >
Exception
Definition: hltDiff.cc:245
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:40
reco::PUSubMETCandInfo::kChHS
Definition: PUSubMETData.h:63
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
reco::PUSubMETCandInfo::kHS
Definition: PUSubMETData.h:63
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
reco::PUSubMETCandInfo::kNeutral
Definition: PUSubMETData.h:63
flag_isWithinFakeJet
const int flag_isWithinFakeJet
Definition: NoPileUpPFMEtDataProducer.cc:9