CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
alctParams.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # Parameters for ALCT processors: 2007 and later
4 alctPhase1 = cms.PSet(
5  # total number of time bins in the DAQ readout
6  alctFifoTbins = cms.uint32(16),
7  alctFifoPretrig = cms.uint32(10),
8  # time that is required for the electrons to drift to the
9  # anode wires. 15ns drift time --> 45 ns is 3 sigma for the delay
10  # this corresponds to 2bx
11  alctDriftDelay = cms.uint32(2),
12  # min. number of layers hit for pre-trigger
13  alctNplanesHitPretrig = cms.uint32(3),
14  # min. number of layers hit for trigger
15  alctNplanesHitPattern = cms.uint32(4),
16  # min. number of layers hit for pre-trigger
17  alctNplanesHitAccelPretrig = cms.uint32(3),
18  # min. number of layers hit for trigger
19  alctNplanesHitAccelPattern = cms.uint32(4),
20  # 0: both collision and accelerator tracks
21  # 1: only accelerator tracks
22  # 2: only collision tracks
23  # 3: prefer accelerator tracks
24  alctTrigMode = cms.uint32(2),
25  # preference to collision/accelerator tracks
26  alctAccelMode = cms.uint32(0),
27  # L1Accept window width, in 25 ns bins
28  alctL1aWindowWidth = cms.uint32(7),
29  verbosity = cms.int32(0),
30 
31  # Configure early_tbins instead of hardcoding it
32  alctEarlyTbins = cms.int32(4),
33 
34  # Use narrow pattern mask for ring 1 chambers
35  alctNarrowMaskForR1 = cms.bool(False),
36 
37  # duration of signal pulse, in 25 ns bins
38  alctHitPersist = cms.uint32(6),
39 
40  # configure, not hardcode, up to how many BXs in the past
41  # ghost cancellation in neighboring WGs may happen
42  alctGhostCancellationBxDepth = cms.int32(4),
43 
44  # whether to compare the quality of stubs in neighboring WGs in the past
45  # to the quality of a stub in current WG
46  # when doing ghost cancellation
47  alctGhostCancellationSideQuality = cms.bool(False),
48 
49  # how soon after pretrigger and alctDriftDelay can next pretrigger happen?
50  alctPretrigDeadtime = cms.uint32(4),
51 
52  # whether to store the "corrected" ALCT stub time
53  # (currently it is median time of particular hits in a pattern) into the CSCCLCTDigi bx,
54  # and temporary store the regular "key layer hit" time into the CSCCLCTDigi fullBX:
55  alctUseCorrectedBx = cms.bool(False)
56 )
57 
58 # Parameters for upgrade ALCT processors
59 alctPhase2 = alctPhase1.clone(
60  alctNarrowMaskForR1 = True,
61  alctGhostCancellationBxDepth = 1,
62  alctGhostCancellationSideQuality = True,
63  alctPretrigDeadtime = 0,
64  alctUseCorrectedBx = True,
65 )
66 
67 alctPhase2GEM = alctPhase2.clone(
68  alctNplanesHitPattern = 4
69 )
70 
71 alctPSets = cms.PSet(
72  alctPhase1 = alctPhase1.clone(),
73  alctPhase2 = alctPhase2.clone(),
74  alctPhase2GEM = alctPhase2GEM.clone()
75 )