1 #ifndef PhysicsTools_PatUtils_PATJetCorrExtractor_h
2 #define PhysicsTools_PatUtils_PATJetCorrExtractor_h
41 for (
unsigned iEntry = 0; iEntry <
numEntries; ++iEntry ) {
42 retVal.append(v[iEntry]);
43 if ( iEntry < (numEntries - 1) ) retVal.append(
", ");
57 double jetCorrEtaMax = 9.9,
61 return jetCorrExtractor(rawJet, jetCorr, jetCorrEtaMax, rawJetP4_specified);
65 double jetCorrEtaMax = 9.9,
72 if(rawJetP4_specified !=
nullptr) {
76 double corrFactor = corrJetP4.pt()/rawJetP4.pt();
77 corrJetP4 = (*rawJetP4_specified);
78 corrJetP4 *= corrFactor;
80 edm::LogWarning(
"PATJetCorrExtractor") <<
"Negative jet energy scale correction noticed" <<
".\n";
85 <<
"The JEC level " << jetCorrLabel <<
" does not exist !!\n"
const LorentzVector correctedP4(const std::string &level, const std::string &flavor="none", const std::string &set="") const
Long64_t numEntries(TFile *hdl, std::string const &trname)
const std::vector< std::string > availableJECLevels(const int &set=0) const
std::string format_vstring(const std::vector< std::string > &vs)
Analysis-level calorimeter jet class.
math::XYZTLorentzVector LorentzVector
Lorentz vector.