L1 Global Trigger Emulator

Complete: 4

L1 Global Trigger Emulator code in CVS repository

L1 Global Trigger Records

The L1 Global Trigger (GT) emulator produce three readout records:

The first two records are produced also by the GT hardware, while the "Object Map Record" is produced only by the GT emulator.

Running L1 Global Trigger Emulator

Please substitute CMSSW_Release with a valid release.

Setting up your code area (csh/tcsh shell):

scramv1 project CMSSW CMSSW_Release
cd CMSSW_Release/src
eval `scramv1 runtime -csh`

cmscvsroot CMSSW
cvs login

Packages to Checkout from the CVS repository:

Compile the code and run the emulator(s)

scramv1 b -v -k
cd L1Trigger/CMS.GlobalTrigger/test

  • run L1 muon chain + L1 calorimeter chain + L1 Global Trigger emulators on GEN + SIM + DIGI events
     cmsRun L1GlobalTriggerDigi.cfg

  • run L1 Global Trigger emulator only on a file containing the output of the GMT system, with GCT blocked
      cmsRun testGt_GmtFile.cfg

  • run L1 Global Trigger emulator only on a file containing the output of the GCT system, with GMT blocked
      cmsRun testGt_GctFile.cfg
    • Note For releases > CMSSW_1_7_0_pre4, GMT and GCT are blocked via ActiveBoards:
      • see the cfg files from release
      • use
                   // block GMT input
                   replace l1GtParameters.DaqActiveBoards = 0xFEFF
                   // block GCT input
                   replace l1GtParameters.DaqActiveBoards = 0xFFE3

  • run L1 Global Trigger emulator only on a file containing the output of the GMT system and of GCT system
     cmsRun testGlobalTrigger.cfg

Integration of Technical Triggers in L1 Global Trigger Emulator

In order to interface L1 GT emulator with the emulation of the technical triggers, a class L1GtTechnicalTrigger is defined in DataFormats/L1GlobalTrigger containing the following minimal structure

    /// technical trigger name, bit number, bunch cross in the GT event record and result 
    std::string m_gtTechnicalTriggerName;
    unsigned int m_gtTechnicalTriggerBitNumber;
    int m_bxInEvent;
    bool m_gtTechnicalTriggerResult;

In addition, there is an EDM product L1GtTechnicalTriggerRecord, containing a vector of L1GtTechnicalTrigger

    std::vector<L1GtTechnicalTrigger> m_gtTechnicalTrigger;

Every technical trigger producer must produce a L1GtTechnicalTriggerRecord (or, if more information is to be added, a record inheriting from L1GtTechnicalTriggerRecord). The GT emulator will collect by getMany these records and will assembly them in the GT structure for technical triggers.

For the time being, the cfi of the producer contains the names of the corresponding technical triggers and the bit number assigned to them, see for example bscTrigger_cfi.py

Review Status

Editor/Reviewer and date Comments
VasileGhete - 02 Oct 2006 page content last edited
CMSUserSupport - 12 Mar 2007 moved page into swguide
JennyWilliams - 13 Mar 2007 editing to match swguide layout

Responsible: VasileGhete
Last reviewed by: MostRecentReviewer and date

Edit | Attach | Watch | Print version | History: r14 < r13 < r12 < r11 < r10 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r14 - 2012-10-29 - AndreHolzner

    • 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-2022 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