CMS has a sophisticated muon system with special dedicated trigger chambers in addition to the normal tracking chambers. The RPC trigger chambers produce a pattern of hits, the drift tube and cathode strip tracking chambers deliver track vectors at each muon station. Regional triggers of the three subsystems, the PAC trigger of the RPCs and the DT and CSC track finders, all deliver muon tracks. In general, a muon will be found by both by the RPC and the DT or CSC track finders. The task of the Global Muon Trigger (GMT) is to combine the results of all these subsystems by finding the four best muons of every bunch crossing and transmitting them to the Global Trigger (GT).
In addition to finding the four best muons the GMT appends two bits set by the Calorimeter Regional Trigger, a MIP bit and an isolation bit, also called quiet bit, to each of the muon data words. The MIP bit is set if the calorimeter energy is consistent with the passage of a minimum ionizing particle, the isolation or quiet bit is set if a certain energy threshold in the trigger towers surrounding the muon is not exceeded. Both bits are used in the GT to suppress background and to improve selectivity.
The Global Muon Trigger receives 4 muon candidates from the DTBX based barrel Muon Trigger Track Finder, 4 muon candidates from the CSC based endcap Muon Trigger Track Finder and 8 muon candidates (4 barrel + 4 endcap) from the RPC Trigger.
In addition it receives 252 isolation and 252 MIP bits from the calorimeter trigger.
The L1MuGlobalMuonTrigger
is an EDProducer
. It produces a vector of GMT muon candidates for the Global Trigger std::vector<L1MuGMTCand>
and a collection of readout records L1MuGMTReadoutCollection
. Both classes reside in DataFormats/L1GlobalMuonTrigger.
A set of default parameters can be found in the gmt.cfi file in the test directory of the package.
Name | Type | Default |
Debug | int | 0 |
BX_min | int | -4 |
BX_max | int | 4 |
EtaWeight_barrel | float | 0.028 |
PhiWeight_barrel | float | 1.0 |
EtaPhiThreshold_barrel | float | 0.062 |
EtaWeight_endcap | float | 0.13 |
PhiWeight_endcap | float | 1.0 |
EtaPhiThreshold_endcap | float | 0.062 |
CaloTrigger | bool | true |
IsolationCellSizeEta | int | 2 |
IsolationCellSizePhi | int | 2 |
EtaWeight_COU | float | 0.316 |
PhiWeight_COU | float | 1.0 |
EtaPhiThreshold_COU | float | 0.127 |
COUConfig | int | obsolete |
DoOvlRpcAnd | bool | 0 |
PropagatePhi | bool | false |
MergeMethodPhiBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | takeDT |
MergeMethodPhiFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | takeCSC |
MergeMethodEtaBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodEtaFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodPtBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | byMinPt |
MergeMethodPtFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | byMinPt |
MergeMethodChargeBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | takeDT |
MergeMethodChargeFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | takeCSC |
MergeMethodMIPBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodMIPFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodMIPSpecialUseANDBrl | bool | false |
MergeMethodMIPSpecialUseANDFwd | bool | false |
MergeMethodISOBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodISOFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | Special |
MergeMethodISOSpecialUseANDBrl | bool | true |
MergeMethodISOSpecialUseANDFwd | bool | true |
MergeMethodSRKBrl | takeDT, takeRPC, byRank, byMinPt, byCombi, Special | takeDT |
MergeMethodSRKFwd | takeCSC, takeRPC, byRank, byMinPt, byCombi, Special | takeCSC |
HaloOverwritesMatchedBrl | bool | true |
HaloOverwritesMatchedFwd | bool | true |
SortRankOffsetBrl | unsigned | 10 |
SortRankOffsetFwd | unsigned | 10 |
CDLConfigWordDTCSC | unsigned | 2 |
CDLConfigWordCSCDT | unsigned | 3 |
CDLConfigWordbRPCCSC | unsigned | 16 |
CDLConfigWordfRPCDT | unsigned | 1 |
There are four cancel-out units in the GMT. In the hardware, two of them are located in the Barrel Logic FPGA and two of them in the Forward Logic FPGA (as indicated in the thirs row of the table, below).Each unit has two groups of muons as an input (first/second). If a muon in the first group and a muon in the second group match in eta an phi, then either of them (or both) may be cancelled, depending on the configuration of the cancel-decision logic. The table below lists the possible cancel-options and the default settings. The options correspond to one bit each in the cancel decsision configuration word and may be freely combined. 'is matched' in the table refers to the muon being matched with a complementary muon in its main matiching unit. For example the default configuration of the DT/CSC cancel-out unit means: if a DT and a CSC muon are matched in space and if the CSC muon is matched with an RPC muon in its main matching unit but the DT muon is not matched with an RPC muon in its main matching unit, then the DT muon will be cancelled.
Bit Nr / Value | Meaning | which cancel-out unit (first/second) | |||
DT/CSC | CSC/DT | bRPC/CSC | fRPC/DT | ||
brl FPGA | fwd FPGA | brl FPGA | fwd FPGA | ||
0 / 1 | Cancel first when neither is matched | - | x | - | x |
1 / 2 | Cancel first when only second is matched | x | x | - | - |
2 / 4 | Cancel first when only first is matched | - | - | - | - |
3 / 8 | Cancel first when both are matched | - | - | - | - |
4 / 16 | Cancel second when neither is matched | N/A | N/A | x | - |
5 / 32 | Cancel second when only first is matched | N/A | N/A | - | - |
6 / 64 | Cancel second when only second is matched | N/A | N/A | - | - |
7 / 128 | Cancel second when both are matched | N/A | N/A | - | - |
Default value of CDL Config word | 2 | 3 | 16 | 1 |
Quality codes are sent with each muon from the L1 Global Muon Trigger to the L1 Global Trigger. They are used in the Global Trigger in order to include only certain qualities of candidates in certain trigger algorithms. The current definition of the quality codes is given in the table below. The definition may change in the future. It is therefore saver not to rely on the quality codes in the analysis code but to use the provided interpretation Methods in class L1MuGMTCand
bool useInSingleMuonTrigger(); bool useInDiMuonTrigger(); bool isMatchedCand(); bool isHaloCand();
Quality code | Definition | Intended Special Use |
0 | empty muon candidate | - |
1 | halo muon | Halo muons for alignment |
2 | Very Low Quality Type 1 | Skip in Single and di-muon trigger |
3 | Very Low Quality Type 2 | Skip in Single muon trigger |
4 | Very Low Quality Type 3 | Skip in di-muon trigger |
5 | RPC unconfirmed candidate | - |
6 | DT or CSC unconfirmed candidate | - |
7 | DT/RPC or CSC/RPC Matched candidate | - |
An EDAnayzer module L1MuGMTDump is provided in the test directory. It dumps the information from the GMT readout stored in the Event.
Unknown