Skip to content

Needed fixes for ntuples of RunII_106X_v2 production #1638

Description

@MatthiesC

A list of missing information and other fixes that did not make it into our ntuple generation code before starting the big production campaign using branch RunII_106X_v2 in Novmeber 2021 and should be fixed for future productions.

  • Fix MET filter path for real data. Done with [RunII_106X_v2] MET filter path: replace RECO path with PAT path for data #1621, see explanations therein
  • The PUPPI MET collection (slimmedMETsPuppi) does not have MET uncertainties stored (e.g. px/py shifts related to unclutered energy). The corresponding data members exist already in the MET class but are not filled in contrast to the PF MET collection. Fixed with include MET uncertainties for PUPPI MET #1635, see explanations therein. More information about those uncertainties at [1], [2].
  • Residual energy scale and smearing corrections for electrons and photons. The corrections are computed with EGammaPostRecoTools during ntuple production but not applied nor written to the final trees. More information at [3], [4]. If adding the required information directly as new class members to the Electron and Photon class, ntuples produced before this fix will not be compatible with the UHH2 framework anymore. Therefore, one should at this point add the missing data as enums to Electron::tag (or Photon::tag) and make use of the Tags class [5] which allows backwards-compatibility. See PR EGamma residual corrections for electrons and photons #1646
  • We do not store particle-level objects produced with the ParticleLevelProducer as recommended by the TOP group. This can be fixed by running this tool during ntuple production and storing the output as new genparticles to event.genparticles, of course with distinct IDs to not disrupt previous analysis code. More information at [6] where @MatthiesC collected some first ideas how to implement this.
  • Same story for parton-level objects. We only store partons with status code 21, 22, or 23. Unfolding is usually done with partons having Pythia status code 62 (after parton shower but before hadronization). More information also at [6].
  • Weights which would allow us to construct uncertainties related to b fragmentation are missing. The same goes for the uncertainty related to the semileptonic branching ratio of B hadrons. One should use the BFragmentationAnalyzer tool for this. More information at [7], [8], [9].

[1] https://twiki.cern.ch/twiki/bin/viewauth/CMS/MissingETUncertaintyPrescription
[2] https://twiki.cern.ch/twiki/bin/viewauth/CMS/MissingETRun2Corrections#MET_Uncertainties
[3] https://twiki.cern.ch/twiki/bin/view/CMS/EgammaUL2016To2018#Scale_and_smearing_corrections_f
[4] https://twiki.cern.ch/twiki/bin/viewauth/CMS/EgammaMiniAODV2#Energy_Scale_and_Smearing
[5] https://github.com/UHH2/UHH2/blob/RunII_106X_v2/core/include/Tags.h
[6] https://github.com/UHH2/UHH2/wiki/Particle-and-Parton-Level-Objects-for-Unfolding and references therein
[7] https://twiki.cern.ch/twiki/bin/view/CMS/TopSystematics#Parton_shower_b_fragmentation
[8] https://twiki.cern.ch/twiki/bin/view/CMS/TopSystematics#Parton_shower_Decay_tables
[9] https://gitlab.cern.ch/CMS-TOPPAG/BFragmentationAnalyzer

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions