CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SmearedPFCandidateProducerForPFNoPUMEt.h
Go to the documentation of this file.
1 #ifndef PhysicsTools_PatUtils_SmearedPFCandidateProducerForPFNoPUMEt_h
2 #define PhysicsTools_PatUtils_SmearedPFCandidateProducerForPFNoPUMEt_h
3 
34 
36 
38 
40 
41 #include <string>
42 #include <vector>
43 
44 template <typename T, typename Textractor>
46 {
47  typedef std::vector<T> JetCollection;
48 
49  public:
50 
53 
54  private:
55 
56  void produce(edm::Event&, const edm::EventSetup&);
57 
59 
60 //--- configuration parameters
61 
62  // collection of pat::Jets (with L2L3/L2L3Residual corrections applied)
65 
66  TFile* inputFile_;
67  TH2* lut_;
68 
70  TRandom3 rnd_;
71 
73  edm::EDGetTokenT<reco::JetCorrector> jetCorrToken_; // e.g. 'ak5CaloJetL1FastL2L3' (MC) / 'ak5CaloJetL1FastL2L3Residual' (Data)
74  double jetCorrEtaMax_; // do not use JEC factors for |eta| above this threshold (recommended default = 4.7),
75  // in order to work around problem with CMSSW_4_2_x JEC factors at high eta,
76  // reported in
77  // https://hypernews.cern.ch/HyperNews/CMS/get/jes/270.html
78  // https://hypernews.cern.ch/HyperNews/CMS/get/JetMET/1259/1.html
79  Textractor jetCorrExtractor_;
80 
81  double sigmaMaxGenJetMatch_; // maximum difference between energy of reconstructed jet and matched generator level jet
82  // (if the difference between reconstructed and generated jet energy exceeds this threshold,
83  // the jet is considered to have substantial pile-up contributions are is considered to be unmatched)
84 
85  double smearBy_; // option to "smear" jet energy by N standard-deviations, useful for template morphing
86 
87  double shiftBy_; // option to increase/decrease within uncertainties the jet energy resolution used for smearing
88 
89  StringCutObjectSelector<T>* skipJetSelection_; // jets passing this cut are **not** smeared
90  double skipRawJetPtThreshold_; // jets with transverse momenta below this value (either on "raw" or "corrected" level)
91  double skipCorrJetPtThreshold_; // are **not** smeared
92 
93  int verbosity_; // flag to enabled/disable debug output
94 
96 
97 };
98 
99 #endif
100 
101 
102 
103 
edm::EDGetTokenT< reco::PFCandidateCollection > srcPFCandidates_
void produce(edm::Event &, const edm::EventSetup &)
SmearedJetProducer_namespace::GenJetMatcherT< T > genJetMatcher_
SmearedJetProducer_namespace::JetResolutionExtractorT< T > jetResolutionExtractor_