This page documents the ntuple generation code stored in the L1T repo.

Code Availability

The code is available in (pre-)releases since 800pre6. it is recommended to use the latest l1t-integration-vX.Y tag, please see here : https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideL1TOfflineDev#Status_of_Integration

Ntuple content

Output files may contain the following trees :

TTree Content Collections Workflow
l1Tree Legacy L1 hardware level quantities (discontinued!)   RAW
l1EventTree run #, event #, lumiSection#, bx, etc.   RAW
l1ExtraTree Legacy L1Extra final trigger objects l1extraParticles RAW
l1UpgradeTree Upgrade trigger final objects caloStage2Digis, gmtStage2Digis RAW
l1CaloTowerTree Calo trigger primitives and L1 towers ecalDigis, hcalDigis, caloStage2Digis RAW
jetRecoTree Offline reco PF jets*, PF MET, HT** ak4PFJetsCHS, pfMet AOD
electronRecoTree Offline reco electrons gedGsfElectrons AOD
tauRecoTree Offline reco taus hpsPFTauProducer AOD
muonRecoTree Offline reco muons muons AOD
genTree Generator info and MC PU information   GEN
* Jets are corrected using ak4PFCHSL1FastL2L3ResidualCorrector, or ak4PFCHSL1FastL2L3Corrector when run in MC workflows
** HT, MHT calculated on-the-fly using corrected jets with pT>30 GeV and |eta|<3.0

In addition, the following trees have the same format as their corresponding trees above, but the content is emulated :

TTree Content Workflow
l1UpgradeEmuTree Upgrade trigger final objects EMU
l1CaloTowerEmuTree Calo trigger primitives and L1 towers EMU

Ntuple production

The ntuple producer sequences are designed to be added to a cmsDriver job using customisations defined in L1Trigger /L1TNtuples/python/customiseL1Ntuple.py. Specifically :


These customisations can be combined as desired. The following combinations are already provided :

L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleRAWEMU
L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleAODRAW_(MC)
L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleAODEMU_(MC)
L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleAODRAWEMU(_MC)
L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleEMUGEN_MC
L1Trigger /L1TNtuples/customiseL1Ntuple.L1NtupleAODEMUGEN_MC

If you are running on MC, make sure to use the customisation with _MC suffix. In particular, this selects the correct reco sequence, which in turn selects the correct offline jet calibration.

For example :

cmsDriver.py rawNtuple -s RAW2DIGI,L1Reco --customise=L1Trigger/L1TNtuples/customiseL1Ntuple.L1NtupleRAW --conditions=GR_P_V56 --no_output -n 100 --filein='/store/data/Run2015A/MinimumBias/RAW/v1/000/246/877/00000/C0C2019B-B809-E511-BB0B-02163E01184D.root'

In order to use the EMU workflows with on the fly trigger emulation, make sure to put the emulator customisation before the ntuple customisation.

-- JimBrooke - 2015-06-10

Edit | Attach | Watch | Print version | History: r16 < r15 < r14 < r13 < r12 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r16 - 2016-05-23 - JimBrooke
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    CMSPublic All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2023 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