CMS 3D CMS Logo

quadrupletseedmerging_cff.py
Go to the documentation of this file.
1 
2 import FWCore.ParameterSet.Config as cms
3 
4 # creating quadruplet SeedingLayerSets for the merger;
5 PixelSeedMergerQuadruplets = cms.PSet(
6  appendToDataLabel = cms.string( "" ),
7 
8  # this simply describes all possible layer/disk combinations
9  # on which quadruplets are expected to appear
10  layerList = cms.vstring(
11  ## straightforward combinations:
12  'BPix1+BPix2+BPix3+BPix4',
13  'BPix1+BPix2+BPix3+FPix1_pos',
14  'BPix1+BPix2+BPix3+FPix1_neg',
15  'BPix1+BPix2+FPix1_pos+FPix2_pos',
16  'BPix1+BPix2+FPix1_neg+FPix2_neg',
17  'BPix1+FPix1_pos+FPix2_pos+FPix3_pos',
18  'BPix1+FPix1_neg+FPix2_neg+FPix3_neg'
19 # ## "gap" combinations:
20 # 'BPix2+FPix1_pos+FPix2_pos+FPix3_pos',
21 # 'BPix2+FPix1_neg+FPix2_neg+FPix3_neg',
22 # 'BPix1+BPix2+FPix2_pos+FPix3_pos',
23 # 'BPix1+BPix2+FPix2_neg+FPix3_neg',
24 # 'BPix1+BPix2+FPix1_pos+FPix3_pos',
25 # 'BPix1+BPix2+FPix1_neg+FPix3_neg'
26  ),
27 
28  BPix = cms.PSet(
29  TTRHBuilder = cms.string( "PixelTTRHBuilderWithoutAngle" ),
30  HitProducer = cms.string( "siPixelRecHits" ),
31  ),
32  FPix = cms.PSet(
33  TTRHBuilder = cms.string( "PixelTTRHBuilderWithoutAngle" ),
34  HitProducer = cms.string( "siPixelRecHits" ),
35  ),
36  TEC = cms.PSet( )
37 )
38 
39 _layerListForPhase2 = ['BPix1+BPix2+BPix3+BPix4',
40  'BPix1+BPix2+BPix3+FPix1_pos','BPix1+BPix2+BPix3+FPix1_neg',
41  'BPix1+BPix2+FPix1_pos+FPix2_pos', 'BPix1+BPix2+FPix1_neg+FPix2_neg',
42  'BPix1+FPix1_pos+FPix2_pos+FPix3_pos', 'BPix1+FPix1_neg+FPix2_neg+FPix3_neg',
43  'FPix1_pos+FPix2_pos+FPix3_pos+FPix4_pos', 'FPix1_neg+FPix2_neg+FPix3_neg+FPix4_neg',
44  'FPix2_pos+FPix3_pos+FPix4_pos+FPix5_pos', 'FPix2_neg+FPix3_neg+FPix4_neg+FPix5_neg',
45  'FPix3_pos+FPix4_pos+FPix5_pos+FPix6_pos', 'FPix3_neg+FPix4_neg+FPix5_neg+FPix6_neg',
46  'FPix4_pos+FPix5_pos+FPix6_pos+FPix7_pos', 'FPix4_neg+FPix5_neg+FPix6_neg+FPix7_neg',
47  'FPix5_pos+FPix6_pos+FPix7_pos+FPix8_pos', 'FPix5_neg+FPix6_neg+FPix7_neg+FPix8_neg',
48 # removed as redunant and covering effectively only eta>4 (here for documentation, to be optimized after TDR)
49 # 'FPix5_pos+FPix6_pos+FPix7_pos+FPix9_pos', 'FPix5_neg+FPix6_neg+FPix7_neg+FPix9_neg',
50 # 'FPix6_pos+FPix7_pos+FPix8_pos+FPix9_pos', 'FPix6_neg+FPix7_neg+FPix8_neg+FPix9_neg',
51 # 'FPix8_pos+FPix9_pos+FPix10_pos+FPix11_pos', 'FPix8_neg+FPix9_neg+FPix10_neg+FPix11_neg',
52 # 'FPix11_pos'FPix9_pos+FPix10_pos+FPix12_pos', 'FPix9_neg+FPix10_neg+FPix11_neg+FPix12_neg'
53 ]
54 
55 # Needed to have pixelTracks to not to look like depending
56 # siPixelRecHits (that is inserted in reco sequences in
57 # InitialStepPreSplitting). The quadruplet merger does not use these
58 # hit collections (it uses the hits of the triplets), so this is only
59 # to make framework's circular dependency checker happy.
60 _forPhase1 = dict(
61  BPix = dict(HitProducer = "siPixelRecHitsPreSplitting"),
62  FPix = dict(HitProducer = "siPixelRecHitsPreSplitting"),
63 )
64 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
65 trackingPhase1.toModify(PixelSeedMergerQuadruplets, **_forPhase1)
66 from Configuration.Eras.Modifier_trackingPhase1QuadProp_cff import trackingPhase1QuadProp
67 trackingPhase1QuadProp.toModify(PixelSeedMergerQuadruplets, **_forPhase1)
68 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
69 trackingPhase2PU140.toModify(PixelSeedMergerQuadruplets, layerList = _layerListForPhase2, **_forPhase1)