cmkuo/ggAnalysis

Jet ID input variables

Closed this issue · 10 comments

The twiki for Jet ID recommendations has been updated:
https://twiki.cern.ch/twiki/bin/view/CMS/JetID13TeVRun2016
Specifically, in order to get the energy fractions for Jet ID one has to use the un-corrected jet Pt.
I'm not sure if the implementation in ggNtuples give the same result, see lines here
This is also discussed in this thread on HN

Hi,
First of all, I am not sure if the change is needed. If you read the HN post from the beginning (it's quite a lot of messages), it is not clear to me. It's possible that the fractions are in fact calculated with respect to uncorrected jets (as they should be), even if they are called from a corrected jet. Perhaps you could check that by summing them. They must sum to unity.

But if this is incorrect, then it should be fixed for all fractions, not just muon: jetNHF, jetCHF, etc

cmkuo commented

the twiki was just updated again !

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:
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() ;

OR you can use the "Fraction" methods directly:

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();

cmkuo commented

I think we are fine with the PF jet ID in ggNtuple.

cmkuo commented

however, it seems to me we need to update jet PU ID.

cmkuo commented

Hi Márton

Thanks for reporting this !
I just updated it. Can you please double check ?

Cheers
Ming