Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:36:59

0001 #ifndef L1Trigger_L1TMuonEndCapPhase2_EMTFConstants_h
0002 #define L1Trigger_L1TMuonEndCapPhase2_EMTFConstants_h
0003 
0004 namespace emtf::phase2 {
0005   // from DataFormats/MuonDetId/interface/CSCDetId.h
0006   constexpr int kMinEndcap = 1;
0007   constexpr int kMaxEndcap = 2;
0008   constexpr int kMinStation = 1;
0009   constexpr int kMaxStation = 4;
0010   constexpr int kMinRing = 1;
0011   constexpr int kMaxRing = 4;
0012   constexpr int kMinChamber = 1;
0013   constexpr int kMaxChamber = 36;
0014   constexpr int kMinLayer = 1;
0015   constexpr int kMaxLayer = 6;
0016 
0017   // from DataFormats/MuonDetId/interface/CSCTriggerNumbering.h
0018   constexpr int kMinCSCId = 1;
0019   constexpr int kMaxCSCId = 9;
0020   constexpr int kMinTrigSector = 1;
0021   constexpr int kMaxTrigSector = 6;
0022   constexpr int kNumTrigSector = 12;
0023   constexpr int kMinTrigSubsector = 0;
0024   constexpr int kMaxTrigSubsector = 2;
0025 
0026   // Algorithm
0027   namespace v3 {
0028     constexpr int kNumChambers = 115;    // per sector
0029     constexpr int kChamberSegments = 2;  // per chamber
0030     constexpr int kNumSegments = kNumChambers * kChamberSegments;
0031     constexpr int kNumSegmentVariables = 13;  // per segment
0032 
0033     constexpr int kNumZones = 3;         // per sector
0034     constexpr int kNumZonePatterns = 7;  // per zone
0035 
0036     constexpr int kNumTimeZones = 3;  // per sector
0037 
0038     constexpr int kNumTracks = 4;            // per sector
0039     constexpr int kNumTrackVariables = 54;   // per track
0040     constexpr int kNumTrackFeatures = 40;    // per track
0041     constexpr int kNumTrackPredictions = 1;  // per track
0042     constexpr int kNumTrackSites = 12;       // per track
0043     constexpr int kNumTrackSitesRM = 5;      // per track
0044 
0045     constexpr int kChamberHitmapBW = 90;         // 24 deg
0046     constexpr int kChamberHitmapJoinedBW = 315;  // 84 deg
0047     constexpr int kHitmapNRows = 8;
0048     constexpr int kHitmapNCols = 288;
0049     constexpr int kHitmapNGates = 3;
0050     constexpr int kHitmapColFactor = 16;
0051     constexpr int kHitmapColFactorLog2 = 4;                                     // (1 << 4) = 16
0052     constexpr int kHitmapCropColStart = kChamberHitmapJoinedBW - kHitmapNCols;  // 27  (Inclusive)
0053     constexpr int kHitmapCropColStop = kChamberHitmapJoinedBW;                  // 315 (Exclusive)
0054 
0055     constexpr int kPatternNCols = 110;
0056     constexpr int kPatternMatchingPadding = 55;
0057     constexpr int kMaxPatternActivation = 63;
0058     constexpr int kMaxPatternActivationLog2 = 6;  // (1 << 6) - 1 = 63
0059   }  // namespace v3
0060 }  // namespace emtf::phase2
0061 
0062 #endif  // L1Trigger_L1TMuonEndCapPhase2_EMTFConstants_h