KU CMS EWkinos Jets

*Set ALLOWTOPICVIEW = KansasCMSGroup, CMSwebAccessSimbaGroup <br /> * Set ALLOWTOPICCHANGE = KansasCMSGroup

Table of Contents


SUSY nanoAOD Jet Variables

  • Jets are corrected to latest available JECs and provided with latest available JetID, PU ID, b-tag and QGL.
  • No systematic variations of JECs are stored, but the quantities (rho, area, pt, eta) needed to recompute JECs or JEC systematic variations are available. Dedicated nanoAOD-tools modules exist to compute those quantities.
  • b-jet energy regression, developed for final states with one or more H->bb, is also available.
  • Jets of MC samples are not smeared (dedicated nanoAOD-tools modules exist to apply the smearing)

Var Name Type Description
nFatJet UInt_t slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis
FatJet _area Float_t jet catchment area, for JECs
FatJet _eta Float_t eta
FatJet _mass Float_t mass
FatJet _msoftdrop Float_t Corrected soft drop mass with PUPPI
FatJet _n2b1 Float_t N2 with beta=1
FatJet _n3b1 Float_t N3 with beta=1
FatJet _phi Float_t phi
FatJet _pt Float_t pt
FatJet _rawFactor Float_t 1 - Factor to get back to raw pT
FatJet _tau1 Float_t Nsubjettiness (1 axis)
FatJet _tau2 Float_t Nsubjettiness (2 axis)
FatJet _tau3 Float_t Nsubjettiness (3 axis)
FatJet _tau4 Float_t Nsubjettiness (4 axis)
FatJet _jetId Int_t Jet ID flags bit1 is loose (always false in 2017 since it does not exist), bit2 is tight, bit3 is tightLepVeto
FatJet _subJetIdx1 Int_t index of first subjet
FatJet _subJetIdx2 Int_t index of second subjet
FatJet _btagCSVV2 Float_t pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)
FatJet _btagDDBvL Float_t DeepDoubleX (mass-decorrelated) discriminator for H(Z)->bb vs QCD
FatJet _btagDeepB Float_t DeepCSV b+bb tag discriminator
FatJet _btagHbb Float_t Higgs to BB tagger discriminator
FatJet _deepTagMD_H4qvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger H->4q vs QCD discriminator
FatJet _deepTagMD_HbbvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger H->bb vs QCD discriminator
FatJet _deepTagMD_TvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger top vs QCD discriminator
FatJet _deepTagMD_WvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger W vs QCD discriminator
FatJet _deepTagMD_ZHbbvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger Z/H->bb vs QCD discriminator
FatJet _deepTagMD_ZHccvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger Z/H->cc vs QCD discriminator
FatJet _deepTagMD_ZbbvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger Z->bb vs QCD discriminator
FatJet _deepTagMD_ZvsQCD Float_t Mass-decorrelated DeepBoostedJet tagger Z vs QCD discriminator
FatJet _deepTagMD_bbvsLight Float_t Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->bb vs light flavour discriminator
FatJet _deepTagMD_ccvsLight Float_t Mass-decorrelated DeepBoostedJet tagger Z/H/gluon->cc vs light flavour discriminator
FatJet _deepTag_TvsQCD Float_t DeepBoostedJet tagger top vs QCD discriminator
FatJet _deepTag_WvsQCD Float_t DeepBoostedJet tagger W vs QCD discriminator
FatJet _deepTag_ZvsQCD Float_t DeepBoostedJet tagger Z vs QCD discriminator

Var Name Type Description
nGenJetAK8 UInt_t slimmedGenJetsAK8, i.e. ak8 Jets made with visible genparticles
GenJetAK8 _eta Float_t eta
GenJetAK8 _mass Float_t mass
GenJetAK8 _phi Float_t phi
GenJetAK8 _pt Float_t pt
GenJetAK8 _hadronFlavour UChar_t flavour from hadron ghost clustering
GenJetAK8 _partonFlavour Int_t flavour from parton matching

Var Name Type Description
nGenJet UInt_t slimmedGenJets, i.e. ak4 Jets made with visible genparticles
GenJet _eta Float_t eta
GenJet _mass Float_t mass
GenJet _phi Float_t phi
GenJet _pt Float_t pt
GenJet _hadronFlavour UChar_t flavour from hadron ghost clustering
GenJet _partonFlavour Int_t flavour from parton matching

Var Name Type Description
nSubGenJetAK8 UInt_t slimmedGenJetsAK8SoftDropSubJets, i.e. subjets of ak8 Jets made with visible genparticles
SubGenJetAK8 _eta Float_t eta
SubGenJetAK8 _mass Float_t mass
SubGenJetAK8 _phi Float_t phi
SubGenJetAK8 _pt Float_t pt
Generator_binvar Float_t MC generation binning value

Var Name Type Description
nIsoTrack UInt_t isolated tracks after basic selection (((pt>5 && (abs(pdgId) == 11 or abs(pdgId) = 13)) or pt > 10) && (abs(pdgId) < 15 or abs(eta) < 2.5) && abs(dxy) < 0.2 && abs(dz) < 0.1 && ((pfIsolationDR03().chargedHadronIso < 5 && pt < 25) or pfIsolationDR03().chargedHadronIso/pt < 0.2)) and lepton veto
IsoTrack _dxy Float_t dxy (with sign) wrt first PV, in cm
IsoTrack _dz Float_t dz (with sign) wrt first PV, in cm
IsoTrack _eta Float_t eta
IsoTrack _pfRelIso03_all Float_t PF relative isolation dR=0.3, total (deltaBeta corrections)
IsoTrack _pfRelIso03_chg Float_t PF relative isolation dR=0.3, charged component
IsoTrack _phi Float_t phi
IsoTrack _pt Float_t pt
IsoTrack _miniPFRelIso_all Float_t mini PF relative isolation, total (with scaled rho*EA PU corrections)
IsoTrack _miniPFRelIso_chg Float_t mini PF relative isolation, charged component
IsoTrack _fromPV Int_t isolated track comes from PV
IsoTrack _pdgId Int_t PDG id of PF cand
IsoTrack _isFromLostTrack Bool_t if isolated track comes from a lost track
IsoTrack _isHighPurityTrack Bool_t track is high purity
IsoTrack _isPFcand Bool_t if isolated track is a PF candidate

Var Name Type Description
nJet UInt_t slimmedJets, i.e. ak4 PFJets CHS with JECs applied, after basic selection (pt > 15)
Jet_area Float_t jet catchment area, for JECs
Jet_btagCMVA Float_t CMVA V2 btag discriminator
Jet_btagCSVV2 Float_t pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)
Jet_btagDeepB Float_t DeepCSV b+bb tag discriminator
Jet_btagDeepC Float_t DeepCSV charm btag discriminator
Jet_btagDeepFlavB Float_t DeepFlavour b+bb+lepb tag discriminator
Jet_chEmEF Float_t charged Electromagnetic Energy Fraction
Jet_chHEF Float_t charged Hadron Energy Fraction
Jet_eta Float_t eta
Jet_mass Float_t mass
Jet_muEF Float_t muon Energy Fraction
Jet_neEmEF Float_t neutral Electromagnetic Energy Fraction
Jet_neHEF Float_t neutral Hadron Energy Fraction
Jet_phi Float_t phi
Jet_pt Float_t pt
Jet_qgl Float_t Quark vs Gluon likelihood discriminator
Jet_rawFactor Float_t 1 - Factor to get back to raw pT
Jet_bRegCorr Float_t pt correction for b-jet energy regression
Jet_bRegRes Float_t res on pt corrected with b-jet regression
Jet_electronIdx1 Int_t index of first matching electron
Jet_electronIdx2 Int_t index of second matching electron
Jet_jetId Int_t Jet ID flags bit1 is loose (always false in 2017 since it does not exist), bit2 is tight, bit3 is tightLepVeto
Jet_muonIdx1 Int_t index of first matching muon
Jet_muonIdx2 Int_t index of second matching muon
Jet_nConstituents Int_t Number of particles in the jet
Jet_nElectrons Int_t number of electrons in the jet
Jet_nMuons Int_t number of muons in the jet
Jet_puId Int_t Pilup ID flags
Jet_genJetIdx Int_t index of matched gen jet
Jet_hadronFlavour Int_t flavour from hadron ghost clustering
Jet_partonFlavour Int_t flavour from parton matching

Var Name Type Description
nSubJet UInt_t slimmedJetsAK8, i.e. ak8 fat jets for boosted analysis
SubJet _btagCMVA Float_t CMVA V2 btag discriminator
SubJet _btagCSVV2 Float_t pfCombinedInclusiveSecondaryVertexV2 b-tag discriminator (aka CSVV2)
SubJet _btagDeepB Float_t DeepCSV b+bb tag discriminator
SubJet _eta Float_t eta
SubJet _mass Float_t mass
SubJet _n2b1 Float_t N2 with beta=1
SubJet _n3b1 Float_t N3 with beta=1
SubJet _phi Float_t phi
SubJet _pt Float_t pt
SubJet _rawFactor Float_t 1 - Factor to get back to raw pT
SubJet _tau1 Float_t Nsubjettiness (1 axis)
SubJet _tau2 Float_t Nsubjettiness (2 axis)
SubJet _tau3 Float_t Nsubjettiness (3 axis)
SubJet _tau4 Float_t Nsubjettiness (4 axis)

StopTuplerMaker Jet variables

AK4 Jet Collection from 'slimmedJets' with additional jets from 'patJetsAK4PFCHS', w/ pt<10 and dr < 1.0, that match to a jet in one of the following genjet collections:

prodGenInfo:WtauemuVec
prodGenInfo:genDecayMomRefVec
prodGenInfo:WtauVec
prodGenInfo:WtaunuVec
prodElectronsNoIso:elesLVec
prodGenInfo:genDecayLVec
prodGenInfo:genDecayMomRefVec
AK8 Jet Collection from 'selectedPatJetsAK8PFPuppi' Puppi SubJets Collection from "selectedPatJetsAK8PFPuppiSoftDropPacked"

"No Lepton" collections start with PF Candidates matched to the primary vertex. Using using the pfCandidates collection with CandPtrProjector a new collection first where any candidates produced by prodMuons are vetoed is created and then the same process is done using the no Muon collection where candidates produced by prodElectrons are vetoed to create a no lepton collection. After this the remaining candidates are used to create, first, a no lepton CHS AK4 collection via the addJetCollection. The ak4chs no lepton collection then has a cut of pt > 10 applies.. The no lepton PUPPI AK8 collection and a PUPPI AK8 subject collection is created using the jetToolbox.

Filters

Type Filter Name Description
Int_t NJetsISR; # patJetsAK4PFCHSPt10NoLep jets within dR<0.3 of a selected prunedGenParticles
Int_t nJets_CUT;  
Int_t nJets; # jetsLVec
UInt_t looseJetID; Flag per 2016 Recommendation
UInt_t tightJetID; Flag per 2016 Recommendation
UInt_t tightlepvetoJetID; Flag per 2016 Recommendation
UInt_t looseJetID_NoLep;  
UInt_t tightJetID_NoLep;  
UInt_t tightlepvetoJetID_NoLep;  

Collections

Type Collection Name Description
vector<float> puppitau1; tau1 from puppiJetsLVec jets
vector<float> puppitau2; tau2 from puppiJetsLVec jets
vector<float> puppitau3; tau3 from puppiJetsLVec jets
vector<float> puppisoftDropMass; softDropMass from puppiJetsLVec jets
vector<float> puppiSubJetsBdisc; Bdisc from puppiSubJetsLVec jets
vector<float> recoJetsJecUncLepCleaned;  
vector<float> prodJetsNoLep_qgLikelihood;  
vector<float> prodJetsNoLep_qgPtD;  
vector<float> prodJetsNoLep_qgAxis2;  
vector<float> recoJetschargedHadronEnergyFractionLepCleaned;  
vector<float> recoJetsneutralEmEnergyFractionLepCleaned;  
vector<float> recoJetschargedEmEnergyFractionLepCleaned;  
vector<float> recoJetsmuonEnergyFractionLepCleaned;  
vector<float> recoJetsBtag_0_LepCleaned;  
vector<float> recoJetsCharge_0_LepCleaned;  
vector<float> recoJetsJecScaleRawToFull_LepCleaned;  
vector<float> prodJetsNoLep_puppisoftDropMass; soft drop mass of jets in No Lepton collection
vector<float> prodJetsNoLep_puppitau1; tau1 of jets in No Lepton collection
vector<float> prodJetsNoLep_puppitau2; tau1 of jets in No Lepton collection
vector<float> prodJetsNoLep_puppitau3; tau1 of jets in No Lepton collection
vector<float> prodJetsNoLep_puppiSubJetsBdisc; subjet B disc. of jets in No Lepton collection
vector<TLorentzVector> jetsLVec LVec of all AK4 jet collection*
vector<TLorentzVector> puppiJetsLVec all selectedPatJetsAK8PFPuppi jets
vector<TLorentzVector> puppiSubJetsLVec;* all daughter jets in selectedPatJetsAK8PFPuppiSoftDropPacked jets
vector<TLorentzVector> jetsLVecLepCleaned;  
vector<TLorentzVector> prodJetsNoLep_puppiJetsLVec; LVec of all jets in No Lepton collection
vector<TLorentzVector> prodJetsNoLep_puppiSubJetsLVec; LVec of subjets of all jets in No Lepton collection

Jet collections from miniAOD

https://twiki.cern.ch/twiki/bin/view/CMSPublic/WorkBookJetAnalysis

MiniAOD Analysis Documentation - 2017 VERSION UNDER CONSTRUCTION TWiki> CMSPublic Web> SWGuide> WorkBook > WorkBookMiniAOD > WorkBookMiniAOD2017

High level physics objects in miniAOD are saved in the PAT dataformats, which in turn derive from the RECO/AOD formats, so almost everything that you can find in the WorkBook documentation on PAT and physics objects applies to them direcly.

Jet Label C++ Class Selection Detailed Information
slimmedJets std::vector<pat::Jet> ak4PFJetsCHS with pT > 10 GeV L1+L2+L3+residual corrections are applied; b-tagging and pileup jet id information are embedded. Links are provided to the constituent PF candidates.
slimmedJetsPuppi std::vector<pat::Jet> puppi jets with pT > 20 GeV L1+L2+L3+residual corrections are applied; b-tagging information is embedded. Links are provided to the constituent PF candidates.
slimmedGenJets std::vector<reco::GenJet> ak4GenJetsNoNu with pT > 8 GeV links to constituents (packed gen particles) are available
slimmedJetsAK8 std::vector<pat::Jet> ak8PFJetsPUPPI with pT > 100 GeV (for substructure) L1+L2+L3+residual corrections are applied (AK8PFPuppi corrections used); some precomputed substructure info is provided, and also links to the constituent PF candidates. Subjets themselves are also stored. PF and substructure information is only stored for pT > 170 GeV. For lower pT studies, 3 jets are kept (with minimal information) from 30-100 GeV.
slimmedJetsAK8PFPuppiSoftDropPacked std::vector<pat::Jet> Subjets of PUPPI soft drop algorithm L1+L2+L3+residual corrections are applied (AK4PFpuppi corrections used); b-tagging information is embedded. Links are provided to the constituent PF candidates.
slimmedGenJetsAK8 std::vector<reco::GenJet> ak8GenJetsNoNu with pT > 150 GeV. For lower pT studies, 3 jets are kept (with minimal information) from 30-100 GeV. links to constituents (packed gen particles) are available

Jet ID Recommendations

Recommendations for the 13 TeV data analysis, Run2016 (80X)


More... Close

NEW: For Run2017 see here. For the 13 TeV analysis for promt and rereco data of Run2016 the same recommendations as before are valid for |eta|<2.7 and 3<|eta|<5 (see table below).

For 2.7< |eta|<3 the JetID criteria have been changed (see table below) in order to increase the efficiency and background rejection as well. For more details look here

*For |eta|<2.7 Loose and Tight criteria are identical as before.

The JetID efficiencies for each different run (B-G) estimated and found consistent. For more details look here

Note that the jet ID requirements for |eta|>2.7 are not recommended for PUPPI jets (see e.g. this presentation

For -2.7 <= eta <= 2.7
PF Jet ID Loose Tight TightLepVeto
Neutral Hadron Fraction < 0.99 < 0.90 < 0.90
Neutral EM Fraction < 0.99 < 0.90 < 0.90
Number of Constituents > 1 > 1 > 1
Muon Fraction - - < 0.8
And for -2.4 <= eta <= 2.4 in addition apply      
Charged Hadron Fraction > 0 > 0 > 0
Charged Multiplicity > 0 > 0 > 0
Charged EM Fraction < 0.99 < 0.99 < 0.90
For 2.7 < abs(eta) <= 3.0
PF Jet ID Loose Tight
Neutral EM Fraction > 0.01 > 0.01
Neutral Hadron Fraction < 0.98 < 0.98
Number of Neutral Particles > 2 >2
For abs(eta) > 3.0
PF Jet ID Loose Tight
Neutral EM Fraction < 0.90 < 0.90
Number of Neutral Particles > 10 >10
For |eta|<=2.7 Apply

  • looseJetID = (NHF<0.99 && NEMF<0.99 && NumConst >1) && ((abs(eta)<=2.4 && CHF>0 && CHM>0 && CEMF<0.99) || abs(eta)>2.4) && abs(eta)<=2.7
  • tightJetID = (NHF<0.90 && NEMF<0.90 && NumConst >1) && ((abs(eta)<=2.4 && CHF>0 && CHM>0 && CEMF<0.99) || abs(eta)>2.4) && abs(eta)<=2.7 t
  • tightLepVetoJetID = (NHF<0.90 && NEMF<0.90 && NumConst >1 && MUF<0.8) && ((abs(eta)<=2.4 && CHF>0 && CHM>0 && CEMF<0.90) || abs(eta)>2.4) && abs(eta)<=2.7

    For 2.7<|eta|<= 3.0 Apply

  • looseJetID = (NHF<0.98 && NEMF>0.01 && NumNeutralParticle >2 && abs(eta)>2.7 && abs(eta)<=3.0 )
  • tightJetID = (NHF<0.98 && NEMF>0.01 && NumNeutralParticle >2 && abs(eta)>2.7 && abs(eta)<=3.0 )

    For |eta|> 3.0 Apply

  • looseJetID = (NEMF<0.90 && NumNeutralParticle >10 && abs(eta)>3.0 ) tightJetID = (NEMF<0.90 && NumNeutralParticle >10 && abs(eta)>3.0

    Note: All fractions are calculated with the raw/uncorrected energy of the jet (only then they add up to unity). So the PF JetID has to be applied before the jet energy corrections. To do this on a MINIAOD jet, you can get them as:

  • NHF = pfjet->neutralHadronEnergyFraction();
  • NEMF = pfjet->neutralEmEnergyFraction();
  • CHF = pfjet->chargedHadronEnergyFraction();
  • MUF = pfjet->muonEnergyFraction();
  • CEMF = pfjet->chargedEmEnergyFraction();
  • NumConst = pfjet->chargedMultiplicity()+pfjet->neutralMultiplicity();
  • NumNeutralParticles =pfjet->neutralMultiplicity();
  • CHM = pfjet->chargedMultiplicity();

    OR you can refine them (not reccomended):

  • auto CHF = jet.chargedHadronEnergy() / jet.correctedP4(0).E() ;
  • auto NHF = jet.neutralHadronEnergy() / jet.correctedP4(0).E() ;
  • auto CM = jet.chargedMultiplicity() ; auto NM = jet.neutralMultiplicity() ;
  • auto NEF = jet.neutralEmEnergy() / jet.correctedP4(0).E() ;
  • auto CEF = jet.chargedEmEnergy() / jet.correctedP4(0).E() ;
  • auto MUF = jet.muonEnergy() / jet.correctedP4(0).E() ;
  • auto NumConst = jet.numberOfDaughters() ;

Recommendations for the 13 TeV data analysis, Run2017 (94X) Re-Reco


More... Close

In the following table, the preliminary JetID criteria for AK4CHS and PUPPI jets are listed. These are valid for all runs from B-F. Their efficiency is more than 98-99% for all eta regions, whereas their background rejection is more than 98% for |eta|<3. For more details see here. The criteria have been modified in order to achieve an efficiency of > 98-99% with the higher possible background rejection. For more details, see AN-18-093. Since the tight JetID efficiency is > 99% everywhere, loose is not recommended anymore.

For -2.7 <= eta <= 2.7, for AK4CHS and PUPPI
PF Jet ID Tight TightLepVeto
Neutral Hadron Fraction < 0.90 < 0.90
Neutral EM Fraction < 0.90 < 0.90
Number of Constituents > 1 > 1
Muon Fraction - < 0.80
And for -2.4 <= eta <= 2.4 in addition apply
Charged Hadron Fraction > 0 > 0
Charged Multiplicity > 0 > 0
Charged EM Fraction - < 0.80
For 2.7 < abs(eta) <= 3.0 for AK4CHS
PF Jet ID Tight
Neutral EM Fraction > 0.02 and <0.99
Number of Neutral Particles >2
For abs(eta) > 3.0 for AK4CHS
PF Jet ID Tight
Neutral EM Fraction < 0.90
Neutral Hadron Fraction > 0.02
Number of Neutral Particles >10
For 2.7 < abs(eta) <= 3.0 for PUPPI
PF Jet ID Tight
Neutral Hadron Fraction <0.99
For abs(eta) > 3.0 for PUPPI
PF Jet ID Tight
Neutral EM Fraction < 0.90
Neutral Hadron Fraction > 0.02
Number of Neutral Particles >2 and < 15
Note that for PUPPI jets, weighted multiplicties (of type float) were used which are available starting from CMSSW_9_4_6:

   jet-&gt;userFloat("patPuppiJetSpecificProducer:puppiMultiplicity") 
   jet-&gt;userFloat("patPuppiJetSpecificProducer:neutralPuppiMultiplicity")

The weighted multiplicties are only stored in MiniAOD samples produced with this release or higher by default. However, they can be computed on the fly as in this example.

A selector module for CMSSW is available in PFJetIDSelectionFuncto.

It can be used with such a code sniplet:

  from PhysicsTools.SelectorUtils.pfJetIDSelector_cfi import pfJetIDSelector
  process.goodPatJetsPFlow = cms.EDFilter(    "PFJetIDSelectionFunctorFilter", 
                                                 filterParams = pfJetIDSelector.clone(), 
                                                 src = cms.InputTag("selectedPatJetsPFlow"), 
                                                 filter = cms.bool(True))


Preliminary Recommendations for the 13 TeV data analysis, Run2018 (102X) Re-Reco


More... Close

In the following table, the preliminary JetID criteria for AK4CHS jets are listed. These are valid for all runs from A-D.

Their efficiency is more than 98-99% for all eta regions, whereas their background rejection is more than 98% for |eta| 98-99% with the higher possible background rejection.

We propose the JetIDLepVeto criteria for all analyses, except the ones that perform special cleaning or selections between jets and leptons in which, in order to avoid any kind of biases, we propose JetID without the vetoing on leptons.

For -2.6 <= eta <= 2.6, for AK4CHS
PF Jet ID JetID JetIDLepVeto
Neutral Hadron Fraction < 0.90 < 0.90
Neutral EM Fraction < 0.90 < 0.90
Number of Constituents > 1 > 1
Muon Fraction - < 0.80
Charged Hadron Fraction > 0 > 0
Charged Multiplicity > 0 > 0
Charged EM Fraction - < 0.80
For 2.6 < abs(eta) <= 2.7, for AK4CHS
PF Jet ID JetID JetIDLepVeto
Neutral Hadron Fraction < 0.90 < 0.90
Neutral EM Fraction < 0.99 < 0.99
Muon Fraction - < 0.80
Charged Multiplicity > 0 > 0
Charged EM Fraction - < 0.80
For 2.7 < abs(eta) <= 3.0 for AK4CHS
PF Jet ID JetID
Neutral EM Fraction > 0.02 and <0.99
Number of Neutral Particles >2
For abs(eta) > 3.0 for AK4CHS
PF Jet ID JetID
Neutral EM Fraction < 0.90
Neutral Hadron Fraction > 0.02
Number of Neutral Particles >10
For |eta|<=2.6 Apply

  • tightJetID = (abs(eta)<=2.6 && CEMF<0.8 && CHM>0 && CHF>0 && NumConst >1 && NEMF<0.9 && MUF <0.8 && NHF < 0.9 );

    For 2.6<|eta|<=2.7 Apply

  • tightJetID = ( abs(eta)>2.6 && abs(eta)<=2.7 && CEMF<0.8 && CHM>0 && NEMF<0.99 && MUF <0.8 && NHF < 0.9 );

    For 2.7<|eta|<= 3.0 Apply

  • tightJetID = ( NEMF>0.02 && NEMFNumNeutralParticle >2 && abs(eta)>2.7 && abs(eta)<=3.0 )

    For |eta|> 3.0 Apply

from PhysicsTools.SelectorUtils.pfJetIDSelector_cfi import pfJetIDSelector
process.goodPatJetsPFlow = cms.EDFilter("PFJetIDSelectionFunctorFilter",
                                                filterParams = pfJetIDSelector.clone(),
                                                src = cms.InputTag("selectedPatJetsPFlow"),
                                                filter = cms.bool(True) )


Jet Energy Resolution

Recommendations for Data Analysis

Measurements show that the jet energy resolution (JER) in data is worse than in the simulation and the jets in MC need to be smeared to describe the data.

Smearing procedures


Two different principal methods are utilized to smear reconstructed jets in simulation so that their pT resolution matches the one observed in data.

With the scaling method, corrected four-momentum of a reconstructed jet is rescaled with a factor

Screen_Shot_2019-01-15_at_5.01.57_PM.png

where pT is its transverse momentum, pTptcl is the transverse momentum of the corresponding jet clustered from generator-level particles, and sJER is the data-to-simulation core resolution scale factor. Factor cJER is truncated at zero, i.e. if it is negative, it is set to zero. This method only works if a well-matched particle-level jet is present and can result in a large shift of the response otherwise. The following requirements are imposed for the matching:

Screen_Shot_2019-01-15_at_5.02.32_PM.png

Here Rcone is the jet cone size parameter (for instance, 0.4 for AK4 jets) and σJER is the relative pT resolution as measured in simulation.

An alternative approach, which does not require the presence of a matching particle-level jet, is the stochastic smearing. In this case corrected jet four-momentum is rescaled with a factor

Screen_Shot_2019-01-15_at_5.02.53_PM.png

where σJER and sJER are the relative pT resolution in simulation and data-to-simulation scale factors, and N(0, σ) denotes a random number sampled from a normal distribution with a zero mean and variance σ2. As before, scaling factor cJER is truncated at zero. This method only allows to degrade the resolution.

We recommend following the ?hybrid? method: when matching particle-level jet is found, the scaling method should be used; otherwise the stochastic smearing should be applied. The recommended numbers for sJER and σJER can be retrieved using the MC truth JER tool described below. An example implementation of this approach can be found in class SmearedJetProducerT

The official way to retrieve the jets resolution and scale factors for 13 TeV is documented in this twiki page. You can access them either via the global tag, a database or text files. A github repository has been setup to keep track of the various text files, you can find it here: https://github.com/cms-jet/JERDatabase

The latest pT resolution text files (PtResolution) for 74X can be found here

  • for 76X here

  • for 80X Spring 16 here

  • for 80X Summer16 here

    These github directories also contain jet phi resolution (PhiResolution) text files.

Please note that pT resolutions in the text files are relative ones (sigma_MC_pT/pT), whereas phi resolutions are absolute ones (sigma_MC_phi).


JER Scaling factors and Uncertainty for 13 TeV


2016-2017 JER uncertainty correlations

Last status at CMS week update Dec. 2018

Treat as uncorrelated among years.

2017 data

Values are reported below:

Fall17_V3 (94X, 2017, BCDEF, "17Nov" ReReco) DATA/MC SFs. Included in MC GT: 94X_mc2017_realistic_v17

abs(eta) region   0.000-0.522   0.522-0.783   0.783-1.131   1.131-1.305   1.305-1.740   1.740-1.930   1.930-2.043   2.043-2.322   2.322-2.500   2.500-2.853   2.853-2.964   2.964-3.139   3.139-5.191
Data/MC SF   1.1432   1.1815   1.0989   1.1137   1.1307   1.1600   1.2393   1.2604   1.4085   1.9909   2.2923   1.2696   1.1542
Stat.Unc   0.0018   0.0046   0.0031   0.0080   0.0047   0.0187   0.0459   0.0241   0.0159   0.0232   0.0586   0.0164   0.0217
Syst.Unc   0.0222   0.0481   0.0455   0.1394   0.1470   0.0958   0.1853   0.1481   0.2013   0.5679   0.3696   0.1077   0.1508
Total.Unc   0.0222   0.0484   0.0456   0.1397   0.1470   0.0976   0.1909   0.1501   0.2020   0.5684   0.3743   0.1089   0.1524
Based on data vs MC(Pythia8) JER comparison with dijet data. Documented in the November 26th, 2018 JERC meeting slides

The corresponding scale factor text file can be found here

2016 data

Summer16_25nsV1 (80X, 2016, BCDEFGH, 07Aug ReReco) DATA/MC SFs. Included in MC GT: 80X_mcRun2_asymptotic_2016_TrancheIV_v8, 94X_mc2017_realistic_v15 (under temporary name "Fall17_25nsV1")

abs(eta) region 0.000?0.522 0.522 - 0.783 0.783?1.131 1.131-1.305 1.305?1.740 1.740 - 1.930 1.930?2.043 2.043 - 2.322 2.322 - 2.5 2.5?2.853 2.853-2.964 2.964-3.139 3.139-5.191
Data/MC SF 1.1595 1.1948 1.1464 1.1609 1.1278 1.1000 1.1426 1.1512 1.2963 1.3418 1.7788 1.1869 1.1922
Stat.Unc +-0.0052 +-0.0113 +-0.0084 +-0.0161 +-0.0099 +-0.0263 +-0.0512 +-0.0306 +-0.0814 +-0.0619 +-0.0648 +-0.0197 +-0.0386
Syst.Unc +-0.0642 +-0.0642 +-0.0627 +-0.0982 +-0.0979 +-0.1028 +-0.1099 +-0.1008 +-0.2064 +-0.1559 +-0.1900 +-0.1228 +-0.1437
Total.Unc +-0.0645 +-0.0652 +-0.0632 +-0.1025 +-0.0986 +-0.1079 +-0.1214 +-0.1140 +-0.2371 +-0.2091 +-0.2008 +-0.1243 +-0.1488
These are documented in the April 23th, 2018 JERC meeting slides

The corresponding scale factor text file can be found here

Spring16_25nsV10 (80X, 2016, BCD+GH PromtReco) DATA/MC SFs.

abs(eta) region 0.0?0.5 0.5-0.8 0.8?1.1 1.1-1.3 1.3?1.7 1.7 - 1.9 1.9?2.1 2.1 - 2.3 2.3 - 2.5 2.5?2.8 2.8-3.0 3.0-3.2 3.2-5.0
Data/MC SF ± stat. unc. 1.109 +-0.008 1.138 +-0.013 1.114 +-0.013 1.123 +-0.024 1.084 +-0.011 1.082 +-0.035 1.140 +-0.047 1.067 +-0.053 1.177 +-0.041 1.364 +-0.039 1.857 +-0.071 1.328 +-0.022 1.16 +-0.029
Contains only statistical uncertainty! Systematical uncertainty from Summer16_25nsV1 should be added. For ease of use db-file/txt-files combining Spring16_25nsV10 central values +/- stat. +/- Summer16_25nsV1 sys. uncertainties available from db

These are documented in the December 21th, 2016 JERC meeting slides

For the time being the result obtained with standard method is used for eta<2.3. The corresponding scale factor text file can be found here

This version is a copy of Spring16_25nsV6_MC with only SFs files updated. Values obtained with AK4PFchs are copied for all jet collections. This is temporary version and it is not included in GT.

Spring16_25nsV6 (80X, 2016, ICHEP dataset) DATA/MC SFs

abs(eta) region 0.0?0.5 0.5-0.8 0.8?1.1 1.1-1.3 1.3?1.7 1.7 - 1.9 1.9?2.1 2.1 - 2.3 2.3 - 2.5 2.5?2.8 2.8-3.0 3.0-3.2 3.2-5.0
Data/MC SF ± stat. unc. 1.122 +-0.026 1.167 +-0.048 1.168 +-0.046 1.029 +-0.066 1.115 +-0.03 1.041 +-0.062 1.167 +-0.086 1.094 +-0.093 1.168 +-0.120 1.266 +-0.132 1.595 +-0.175 0.998 +-0.066 1.226 +-0.145
Contains only statistical uncertainty! Systematical uncertainty from Summer16_25nsV1 should be added. For ease of use db-file/txt-files combining Spring16_25nsV6 central values +/- stat. +/- Summer16_25nsV1 sys. uncertainties available from db

These are documented in the June 29th, 2016 JERC meeting slides

The corresponding scale factor text file can be found here

The Jet energy resolutions and SF are included in 80X_mcRun2_asymptotic_2016_miniAODv2_v1 and 80X_mcRun2_asymptotic_2016_TrancheIV_v8 GT for MC and in 76X_mcRun2_asymptotic_RunIIFall15DR76_v1 for data.

Tail scaling factors

The procedure described above only corrects the Gaussian core of the jet response and should be sufficient for most analyses.

However, tail scaling factors are also available to adjust the event counts in the tails of the resolution function in the simulation to match the data, as needed in some physics analyses (eg. SUSY searches). These factors can be applied after smearing the core pT resolutions as described above.


Mandatory (JEC) Jet Energy Corrections at CMS.

The minimum correction levels to be applied on any CMS analysis using Monte Carlo and Data are:

Monte Carlo L1 + L2L3 MC-truth
Data L1 + L2L3 MC-truth + L2L3Residuals
Any analysis might place higher correction levels if necessary and available. Software instructions for applying these corrections can be found here.

Recommended Jet Energy Corrections and Uncertainties For Data and MC

This table should be used to find the recommended JEC correction set to be applied to your particular sample of DATA or MC for the given era and for each jet-type that is used. Note that the release era of the Data/MC is not necessarily the release version that you use to analyze your samples. The cells in the columns DATA and MC link to the corresponding software instructions in the WorkBookJetEnergyCorrections. As we forsee new releases being added regularly we order these releases from newer to older. Other releases for which we derive no corrections are not included. It is important to note that the Global Tags to be used need to be the ones appropriate for the CMSSW release used to analyze the MC or the data samples. If you use a different release your global tag might be wrong.

>>>>>>>>>>NOTE: We used Fall17_17Nov2017_V8_MC.db for Spring16 fastsim : Spring16 JEC produced errors

Recommended for MC


Era Jet-Type Global Tag(s) Notes
Fall17 to be used with Fall17 94X MC PF, CHS, PUPPI (AK4 and AK8)

GT: 94X_mc2017_realistic_v17,

102X_mc2017_realistic_v6, 102X_upgrade2018_realistic_v16

Fall17_17Nov2017_V32_MC.tar.gz

Fall17_17Nov2017_V32_94X_MC.db Fall17_17Nov2017_V32_102X_MC.db

Based on 94X Fall17 samples. Updated L1FastJet parametrisation and fix of FormulaEvaluator issue.
Fall17 to be used with Fall17 94X MC PF, CHS, PUPPI (AK4 and AK8)

GT: 94X_mc2017_realistic_v14

Fall17_17Nov2017_V8_MC.tar.gz Fall17_17Nov2017_V8_MC.db

Based on 94X Fall17 samples, copy of V6 with added corrections for AK8CHS, AK4PF and AK8PF.

Affected by FormulaEvaluator bug!

Fall17 to be used with Fall17 94X MC AK4PFCHS, PUPPI (AK4 and AK8)

GT: 94X_mc2017_realistic_v13

Fall17_17Nov2017_V6_MC.tar.gz Fall17_17Nov2017_V6_MC.db

Based on 94X Fall17 samples, reduced set of jet collections; uncertainties (based on AK4CHS residuals) are updated.

Affected by FormulaEvaluator bug!

Fall17 to be used with Fall17 94X MC AK4PFCHS, PUPPI (AK4 and AK8)

GT: 94X_mc2017_realistic_v12

Fall17_17Nov2017_V4_MC.tar.gz Fall17_17Nov2017_V4_MC.db

Based on 94X Fall17 samples, reduced set of jet collections; uncertainties + other jet collections to be updated when residuals are done.

Affected by FormulaEvaluator bug!

Era Jet-Type Global Tag(s) Notes
Summer16 to be used with Summer16 MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: 94X_mcRun2_asymptotic_v3,

80X GT tba

Summer16_07Aug2017_V11_MC.tar.gz Summer16_07Aug2017_V11_MC.db

Based on "TrancheIV_v6-v1" Summer16 samples, contains updated uncertainty files (only update w.r.t. V9 as announced in HN: fixed bug in txt file of L2Relative and synchronization between data and MC for AK4PUPPI)

Affected by FormulaEvaluator bug!

Summer16 to be used with Summer16 MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: 80X_mcRun2_asymptotic_2016_TrancheIV_v8 Summer16_23Sep2016V4_MC.tar.gz Summer16_23Sep2016V4_MC.db Based on "Moriond17 POG" samples, contains updated uncertainty files (only update w.r.t. V3 as announced in HN: added missing JPT payloads)
Spring16 to be used with 80X MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: tba

Spring16_23Sep2016V2_MC.tar.gz Spring16_23Sep2016V2_MC.db

Spring16_23Sep2016V2_MC is identical to Spring16_25nsV10_MC
Spring16 to be used with 80X MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: tba

Spring16_25nsV10_MC.tar.gz Spring16_25nsV10_MC.db

Spring16_25nsV10_MC is identical to of Spring16_25nsV6_MC. But it contains updated uncertainty files
Spring16 to be used with 80X MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: 80X_mcRun2_asymptotic_2016_miniAODv2_v1 Spring16_25nsV6_MC.tar.gz Spring16_25nsV6_MC.db Spring16_25nsV6_MC is identical to of Spring16_25nsV3_MC. But it contains updated uncertainty files
Spring16 to be used with 80X Fastsim MC PF, PF+CHS (AK4 and AK8) There will NOT be a GT including these JEC. Spring16_25nsFastSimV1_MC.tar.gz Spring16_25nsFastSimV1_MC.db Spring16_25nsFastsimV1_MC based on FastSim (and to use on Fastsim MC), see this presentation for performances.
Spring16 to be used with 80X MC PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: tbd Spring16_25nsV3_MC.tar.gz Spring16_25nsV3_MC.db Spring16_25nsV3_MC is a clone of Spring16_25nsV1_MC. Additionally it also contains JEC for AK4Calo and AK4JPT
Spring16 to be used with 80X MC PF, PF+CHS, PUPPI (AK4 and AK8) GT: 80X_mcRun2_asymptotic_2016_miniAODv2 Spring16_25nsV1_MC.tar.gz Spring16_25nsV1_MC.db Spring16_25nsV1_MC. Based on Pythia8, RunIISpring16DR80-*_80X_mcRun2_asymptotic_2016 MC. Spring16_25nsV1_MC has the same uncertainties as Fall15_25nsV2_MC.

Recommended for Data

2017 Data


Reconstruction Era Jet-Type Global Tags Notes (L1L2L3 MCtruth corrections + L2L3Residuals)
2017 13TeV 25ns 17Nov2017 ReReco data (94X) PF+CHS (AK4), PUPPI (AK4 and AK8)

GT: 94X_dataRun2_v11,

102X_dataRun2_Prompt_v12, 102X_dataRun2_v8

Fall17_17Nov2017B_V32_DATA.tar.gz Fall17_17Nov2017C_V32_DATA.tar.gz Fall17_17Nov2017DE_V32_DATA.tar.gz Fall17_17Nov2017F_V32_DATA.tar.gz Fall17_17Nov2017_V32_94X_DATA.db Fall17_17Nov2017_V32_102X_DATA.db

Fall17_17Nov2017_V32. For 2017 13 TeV 17Nov2017 ReReco of Runs B-F with residual corrections in respect to Fall17 MC. Residual corrections for AK4PFCHS obtained with 2017 data. L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. Residuals corrections for other jet types are clones of AK4PFCHS residuals. Uncertainties are updated. The corrections are derived for 4 periods of data (dedicated correction for each run period, expect RunD and RunE, which are merged in one IOV). The sqlite (Fall17_17Nov2017_V32_DATA.db) file contains all 4 sets of JEC.
2017 13TeV 25ns 17Nov2017 ReReco data (94X) PF+CHS (AK4), PUPPI (AK4 and AK8)

GT: 94X_dataRun2_v6

Fall17_17Nov2017B_V6_DATA.tar.gz Fall17_17Nov2017C_V6_DATA.tar.gz Fall17_17Nov2017D_V6_DATA.tar.gz Fall17_17Nov2017E_V6_DATA.tar.gz Fall17_17Nov2017F_V6_DATA.tar.gz Fall17_17Nov2017BCDEF_V6_DATA.db

Fall17_17Nov2017_V6. For 2017 13 TeV 17Nov2017 ReReco of Runs B-F with residual corrections in respect to Fall17 MC. Residual corrections for AK4PFCHS obtained with 2017 data. L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. Residuals corrections for other jet types are clones of AK4PFCHS residuals. Uncertainties are updated. The corrections are derived for 5 periods of data (dedicated correction for each run period). The sqlite (Fall17_17Nov2017BCDEF_V6_DATA.db) file contains all five sets of JEC
Reconstruction Era Jet-Type Global Tags Notes (L1L2L3 MCtruth corrections + L2L3Residuals)
2017 13TeV 25ns 09May2017 ReReco data (94X) PF+CHS (AK4), PUPPI (AK4 and AK8)

GT: tba

Fall17_09May2018F_V3_DATA.tar.gz Fall17_09May2018F_V3_94X_DATA.db Fall17_09May2018F_V3_102X_DATA.db

Fall17_09May2018F_V3. For 2017 13 TeV 09May2018F ReReco of Run F with ECAL settings similar to 2018 data. The residual corrections derived in respect to Fall17 MC. Relative residual corrections for AK4PFCHS obtained with 2017 data. Relative residuals corrections for other jet types are clones of AK4PFCHS residuals. The absolute scale residuals corrections and uncertainties are the same as "17Nov" V32. The corrections are derived for RunF, because ReReco of other runs with the same settings is not available.

2016 Data


Reconstruction Era Jet-Type Global Tags Notes (L1L2L3 MCtruth corrections + L2L3Residuals)
2016 13TeV 25ns "07Aug2017" ReReco of 2016 data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: 94X_dataRun2_v10,

80X GT tba

Summer16_07Aug2017BCD_V11_DATA.tar.gz Summer16_07Aug2017EF_V11_DATA.tar.gz Summer16_07Aug2017GH_V11_DATA.tar.gz Summer16_07Aug2017All_V11_DATA.db

Summer16_07Aug2017_V11. For 2016 13 TeV "07Aug2017" ReReco of Runs B-H, with residual corrections in respect to Summer16_07Aug2017_V11_MC (only update w.r.t. V9 as announced in HN: fixed bug in txt file of L2Relative and synchronization of data and MC JEC for PUPPI). Residual corrections for AK4PFCHS obtained with ~36/fb of 2016 ReReco data. L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. Residuals corrections for other jet types are clones of AK4PFCHS residuals. Uncertainties are updated. The corrections are derived for 3 periods of data. The sqlite (Summer16_07Aug2017All_V10_DATA) file contains all three sets of JEC, with following IOV:

IOV BCD: [1,276811] corresponds to Summer16_07Aug2017BCD_V10_DATA (For Runs B/C/D)

IOV EF: [276831,278801] corresponds to Summer16_07Aug2017EF_V10_DATA (For Runs E/early F)

IOV GH: [278802,Infinity] corresponds to Summer16_07Aug2017GH_V10_DATA (For Runs lateF/G/H)

2016 13TeV 25ns ReReco data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: 80X_dataRun2_2016SeptRepro_v7 Summer16_23Sep2016BCDV4_DATA.tar.gz Summer16_23Sep2016EFV4_DATA.tar.gz Summer16_23Sep2016GV4_DATA.tar.gz Summer16_23Sep2016HV4_DATA.tar.gz Summer16_23Sep2016AllV4_DATA.db

Summer16_23Sep2016V4. (only update w.r.t. V3 as announced HN : added missing JPT payloads) For 2016 13 TeV ReReco of Runs B-G and RunH PromtReco data, with residual corrections in respect to Summer16 MC. Residual corrections for AK4PFCHS obtained with ~36/fb of 2016 ReReco and PromtReco ( RunH) data. L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. Residuals corrections for other jet types are clones of AK4PFCHS residuals. Uncertainties are updated. The corrections are derived for 4 periods of data. The sqlite (Summer16_23Sep2016AllV4_DATA) file contains all four sets of JEC, with following IOV:

IOV BCD: [1,276811] corresponds to Summer16_23Sep2016BCDV4_DATA (For Runs B/C/D)

IOV EF: [276831,278801] corresponds to Summer16_23Sep2016EFV4_DATA (For Runs E/early F)

IOV G: [278802,280385] corresponds to Summer16_23Sep2016GV4_DATA (For Runs lateF/G)

IOV H: [280919,Infinity] corresponds to Summer16_23Sep2016HV4_DATA (For Run H)

2016 13TeV 25ns ReReco data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: tba

Spring16_23Sep2016BCDV2_DATA.tar.gz Spring16_23Sep2016EFV2_DATA.tar.gz Spring16_23Sep2016GV2_DATA.tar.gz Spring16_23Sep2016HV2_DATA.tar.gz Spring16_23Sep2016AllV2_DATA.db

Spring16_23Sep2016V2. For 2016 13 TeV ReReco data, with residual corrections. Residual corrections for AK4PFCHS obtained from ~36/fb of 2016 ReReco data. L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. Residuals corrections for other jet types are clones of AK4PFCHS residuals. Uncertainties are copied from Spring16_25nsV10. The data taken during 2016 is not uniform, therefore corrections are derived for 4 periods of data. The sqlite (Spring16_23Sep2016AllV2_DATA) file contains all four sets of JEC, with following IOV:

IOV BCD:[1,276811] corresponds to Spring16_23Sep2016BCDV2_DATA (For Runs B/C/D);

IOV EF:[276831,278801] corresponds to Spring16_23Sep2016EFV2_DATA (For Runs E/early F);

IOV G:[278802,280385] corresponds to Spring16_23Sep2016GV2_DATA (For Runs late F/G);

IOV H:[280919,Infinity] corresponds to Spring16_23Sep2016HV2_DATA (For Run H)

2016 13TeV 25ns PromtReco data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT

GT: tba

Spring16_25nsV10BCD_DATA.tar.gz Spring16_25nsV10E_DATA.tar.gz Spring16_25nsV10F_DATA.tar.gz Spring16_25nsV10p2_DATA.tar.gz Spring16_25nsV10All_DATA.db

Spring16_25nsV10. For 2016 13 TeV 25ns data, with residual corrections. Residual corrections and uncertainties for AK4PFCHS obtained from ~36/fb of 2016 PromtReco data. Residuals corrections for other jet types are clones of AK4PFCHS residuals (uncertainties). L1FastJet and L2(L3)Relative are dedicated corrections for each jet type. The data taken during 2016 is not uniform, therefore corrections are derived for 4 periods of data. The sqlite (Spring16_25nsV10All_DATA) file contains all four sets of JEC, following IOV are used:

IOV BCD: [1,276811] corresponds to Spring16_25nsV10BCD_DATA.tar.gz;

IOV E: [276831,277420] corresponds to Spring16_25nsV10E_DATA.tar.gz;

IOV F: [277772,278801] corresponds to Spring16_25nsV10F_DATA.tar.gz;

IOV G: [278802,Infinity] corresponds to Spring16_25nsV10p2_DATA.tar.gz

2016 13TeV 25ns data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: 80X_dataRun2_Prompt_ICHEP16JEC_v0 Spring16_25nsV6_DATA.tar.gz Spring16_25nsV6_DATA.db Spring16_25nsV6. For 2016 13 TeV 25ns data, with residual corrections. Version released for ICHEP. This version also contains JEC for AK4Calo and AK4JPT. Residual corrections and uncertainties for AK4PFCHS obtained from ~4/fb of 2016B data. Residuals corrections for other jet types are clones of AK4PFCHS residuals (uncertainties).
2016 13TeV 25ns data (80X) PF, PF+CHS, PUPPI (AK4 and AK8), AK4Calo, AK4JPT GT: tbd Spring16_25nsV3_DATA.tar.gz Spring16_25nsV3_DATA.db Spring16_25nsV3. For 2016 13 TeV 25ns data, with residual corrections (only for AK4 PF+CHS, all other algos have dummry residuals set to 1). Version released for LHCP. Spring16_25nsV3 contain the same uncertainties as Fall15_25nsV2. This version also contains JEC for AK4Calo and AK4JPT

CMSSW 7.6.4 and above

Starting from CMSSW_7_6_4, the updateJetCollection function was added to PhysicsTools /PatAlgos/python/tools/jetTools.py which allows easy re-correction of pat::Jets as well as adding extra information to them. An example of its use can be found in PhysicsTools/PatAlgos/test/patTuple_updateJets_fromMiniAOD_cfg.py

The function is by default configured for pat::Jets stored in MiniAOD but can be used for any collection of pat::Jets with appropriately set input arguments.

If you just want to update the JEC in the MiniAOD, using the following python code is enough:

*from* PhysicsTools.PatAlgos.tools.jetTools *import* updateJetCollection

updateJetCollection(
        process,
        jetSource = cms.InputTag(*'slimmedJets'*)
        labelName = *'UpdatedJEC'*
        jetCorrections = (*'AK4PFchs'*, cms.vstring([<b>'L1FastJet'</b>, *'L2Relative'*, *'L3Absolute'*, <b>'L2L3Residual'</b>]), *'None'*) 
        _# Update: Safe to always add 'L2L3Residual' as MC contains dummy L2L3Residual corrections (always set to 1)_ )

The new jets collection, with the updated JEC, is updatedPatJetsUpdatedJEC, where by default no selection is applied (as in the standard PAT jet workflow). More generally, the final updated jet collection will be called updatedPatJets+labelName+postfix, with labelName and postfix set by default to an empty string.

If you are not using unscheduled mode (you really should using it), you need to add the following modules to your execution path (can be different if you change the labelName):

process.jecSequence = cms.Sequence(process.patJetCorrFactorsUpdatedJEC * process.updatedPatJetsUpdatedJEC)

Accessing the JEC uncertainties from the data base, directly in an EDAnalyzer:

edm::ESHandle&lt;JetCorrectorParametersCollection&gt; JetCorParColl;
iSetup.get&lt;JetCorrectionsRecord&gt;().get("AK5PF",JetCorParColl);
JetCorrectorParameters const & JetCorPar = (*JetCorParColl)["Uncertainty"];
JetCorrectionUncertainty *jecUnc = new JetCorrectionUncertainty (JetCorPar);

Links

-- JackWKingIII - 2019-01-24

Edit | Attach | Watch | Print version | History: r13 < r12 < r11 < r10 < r9 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r13 - 2019-05-23 - JackWKingIII
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback