Quarkonium measurement using the Onia2MuMu analyzer

Purpose of analyzer

The aim of the Onia2MuMu analyzer is to provide information on di-muon resonances and related variables in the event: it starts from EDM format files to give simple ROOT trees as output, which can be analyzed using simple macros even outside the CMS environment.

Code and tags

We suggest the following tags for the corresponding CMSSW releases:

  • CMSSW_3_1_X : work on-going
  • CMSSW_2_2_X : HeavyFlavorAnalysis/Onia2MuMu V00-03-01
  • CMSSW_1_6_12 : HeavyFlavorAnalysis/Onia2MuMu V00-00-10

Input and output format

The analyzer can be easily adapted to any input format (e.g. AODSIM, PAT-tuple... etc.) but for the moment it assumes the standard GEN-SIM-RECO event content for the input files.

The output content is configurable and can contain, depending on the user's choice:

  • standard "blocks" corresponding to RECO collections (e.g. global muons, tracker muons, calo muons, tracks, photons) with related variables
  • vectors of di-muon combinations (right-sign and wrong-sign) and, if needed, more complex combinations (e.g. di-muon + track)
  • global event information (e.g. MC truth, L1 and HLT results)
  • vertexing information
All variables are stored in the standard ROOT branch format, in a single tree named "T1".

How to run the Onia2MuMu analyzer

A simple python configuration file is provided as an example:


where the analyzer configurations contains many parameters:

    OutputFileName       = cms.string('InclusiveppToMu_pt25_225.root'),
    OniaType             = cms.int32(443),
    DebugLevel           = cms.int32(0),
    genParticlesLabel    = cms.InputTag("genParticles"),
    GlobalMuonsLabel     = cms.InputTag("globalMuons"),
    MuonsLabel           = cms.InputTag("muons"),
    CaloMuonsLabel       = cms.InputTag("calomuons"),
    BeamSpotLabel        = cms.InputTag("offlineBeamSpot"),
    PrimaryVertexLabel   = cms.InputTag("offlinePrimaryVertices"),
    TrackLabel           = cms.InputTag("generalTracks"),
    PhotonLabel          = cms.InputTag("particleFlow"),
    triggerEventLabel    = cms.InputTag("hltTriggerSummaryAOD::HLT"),
    L1GTReadoutRec       = cms.InputTag("gtDigis"),
    HLTriggerResults     = cms.InputTag("TriggerResults::HLT"),
    L1MuonLabel          = cms.InputTag("hltL1extraParticles"),
    PATMuonsLabel        = cms.InputTag("selectedLayer1Muons"),
    StoreGenFlag         = cms.bool(True),
    StoreHLTFlag         = cms.bool(True),
    StoreL1Flag          = cms.bool(True),
    StoreTrkFlag         = cms.bool(False),
    StorePhotonFlag      = cms.bool(False)
    StoreTRKMuonFlag     = cms.bool(True),
    StoreGLBMuonFlag     = cms.bool(True),
    StoreCALMuonFlag     = cms.bool(True),
    StoreBeamSpotFlag    = cms.bool(True),
    StorePriVtxFlag      = cms.bool(True),
    StoreOniaFlag        = cms.bool(True),
    StoreChicFlag        = cms.bool(True),
    StoreBpFlag          = cms.bool(False),                     
    StoreWSOnia          = cms.bool(True),                                  
    StoreOniaRadiation   = cms.bool(False),
    UsingBeamSpot        = cms.bool(True),
    minimumFlag          = cms.bool(False),
    UsingAOD             = cms.bool(True),
    StorePATFlag         = cms.bool(False)

that can we summarize as follows:

  • "OutputFileName" is the output file name (that was easy...)
  • "OniaType" is the PDG Id of the di-muon resonance that you want to analyze (default is 443 = J/psi)
  • "theDebugLevel" prints out more information while running as the number increases from 0 to 1 to 2.
  • "Store...Flag" are boolean variables to decide if to store/not to store the corresponding piece of information in the ROOT tree ("minimumFlag" defines instead if to store/ not to store super-detailed information inside a given block, e.g. the "d0" parameter for tracks)
  • "...Label" are the EDM labels of the corresponding collections in the input file

How to run the analyzer on the grid

No special instructions are needed to run Onia2MuMu with crab, so please refer to SWGuideCrab.

How to run the analyzer on real data

Examples of previous usage

This code has been used for the public 2007 analysis BPH-07-002.


Responsible: RobertoCovarelli

-- RobertoCovarelli - 05 Aug 2009

Edit | Attach | Watch | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r3 - 2009-08-05 - RobertoCovarelli
    • 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-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback