CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/RecoTracker/SpecialSeedGenerators/python/SimpleCosmicBONSeeder_cfi.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 from RecoTracker.SpecialSeedGenerators.CombinatorialSeedGeneratorForCosmics_cfi import layerInfo
00004 
00005 def makeSimpleCosmicSeedLayers(*layers):
00006     layerList = cms.vstring()
00007     if 'ALL' in layers: 
00008         layers = [ 'TOB', 'TEC', 'TOBTEC', 'TECSKIP' ]
00009     if 'TOB' in layers:
00010         layerList += ['TOB4+TOB5+TOB6',
00011                       'TOB3+TOB5+TOB6',
00012                       'TOB3+TOB4+TOB5',
00013                       'TOB3+TOB4+TOB6',
00014                       'TOB2+TOB4+TOB5',
00015                       'TOB2+TOB3+TOB5']
00016     if 'TEC' in layers:
00017         TECwheelTriplets = [ (i,i+1,i+2) for i in range(7,0,-1)]
00018         layerList += [ 'TEC%d_pos+TEC%d_pos+TEC%d_pos' % ls for ls in TECwheelTriplets ]
00019         layerList += [ 'TEC%d_neg+TEC%d_neg+TEC%d_neg' % ls for ls in TECwheelTriplets ]
00020     if 'TECSKIP' in layers:
00021         TECwheelTriplets = [ (i-1,i+1,i+2) for i in range(7,1,-1)] + [ (i-1,i,i+2) for i in range(7,1,-1)  ]
00022         layerList += [ 'TEC%d_pos+TEC%d_pos+TEC%d_pos' % ls for ls in TECwheelTriplets ]
00023         layerList += [ 'TEC%d_neg+TEC%d_neg+TEC%d_neg' % ls for ls in TECwheelTriplets ]
00024     if 'TOBTEC' in layers:
00025         layerList += [ 'TOB6+TEC1_pos+TEC2_pos',
00026                        'TOB6+TEC1_neg+TEC2_neg',
00027                        'TOB6+TOB5+TEC1_pos',
00028                        'TOB6+TOB5+TEC1_neg' ]
00029     #print "SEEDING LAYER LIST = ", layerList
00030     return layerList
00031     
00032 
00033 simpleCosmicBONSeeds = cms.EDProducer("SimpleCosmicBONSeeder",
00034     TTRHBuilder = cms.string('WithTrackAngle'),
00035     ClusterCheckPSet = cms.PSet(
00036             doClusterCheck = cms.bool(True),
00037             MaxNumberOfCosmicClusters = cms.uint32(300),
00038             ClusterCollectionLabel = cms.InputTag("siStripClusters"),
00039             DontCountDetsAboveNClusters = cms.uint32(20),  # if N > 0, ignore in total the dets with more than N clusters
00040             MaxNumberOfPixelClusters = cms.uint32(300),
00041             PixelClusterCollectionLabel = cms.InputTag("siPixelClusters")
00042     ),
00043     maxTriplets = cms.int32(50000),
00044     maxSeeds    = cms.int32(20000),
00045     RegionPSet = cms.PSet(
00046         originZPosition  = cms.double(0.0),    # \    These three parameters
00047         originRadius     = cms.double(150.0),  #  |-> probably don't change
00048         originHalfLength = cms.double(90.0),   # /    anything at all.
00049         ptMin = cms.double(0.5),               # pt cut, applied both at the triplet finding and at the seeding level
00050         pMin  = cms.double(1.0),               # p  cut, applied only at the seeding level
00051     ),
00052     TripletsPSet = cms.PSet(
00053         layerInfo,
00054         layerList = makeSimpleCosmicSeedLayers('ALL'),
00055         debugLevel = cms.untracked.uint32(0),  # debug triplet finding (0 to 3)
00056     ),
00057     seedOnMiddle    = cms.bool(False), # after finding the triplet, add only two hits to the seed
00058     rescaleError    = cms.double(1.0), # we don't need it anymore. At least for runs with BON
00059 
00060     ClusterChargeCheck = cms.PSet(
00061         checkCharge                 = cms.bool(False), # Apply cuts on cluster charge
00062         matchedRecHitsUseAnd        = cms.bool(True), # Both clusters in the pair should pass the charge cut
00063         Thresholds  = cms.PSet( # Uncorrected thresholds
00064             TIB = cms.int32(0), #
00065             TID = cms.int32(0), # Currenlty not used
00066             TOB = cms.int32(0), # 
00067             TEC = cms.int32(0), #
00068         ),
00069     ),
00070     HitsPerModuleCheck = cms.PSet(
00071         checkHitsPerModule = cms.bool(True), # Apply cuts on the number of hits per module 
00072         Thresholds  = cms.PSet( # 
00073             TIB = cms.int32(20), #
00074             TID = cms.int32(20), # FIXME: to be optimized
00075             TOB = cms.int32(20), # 
00076             TEC = cms.int32(20), #
00077         ),
00078     ),
00079     minimumGoodHitsInSeed = cms.int32(3),   # NO bad hits in the seed (set to '2' to allow one bad hit in the seed)
00080                                       
00081     writeTriplets   = cms.bool(False), # write the triplets to the Event as OwnVector<TrackingRecHit>
00082     helixDebugLevel = cms.untracked.uint32(0), # debug FastHelix (0 to 2)
00083     seedDebugLevel  = cms.untracked.uint32(0), # debug seed building (0 to 3)
00084     #***top-bottom
00085     PositiveYOnly = cms.bool(False),
00086     NegativeYOnly = cms.bool(False)
00087     #***
00088 )
00089 simpleCosmicBONSeeds.TripletsPSet.TEC.useSimpleRphiHitsCleaner = False