CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/CalibMuon/DTCalibration/python/dtCalibOfflineSelection_cff.py

Go to the documentation of this file.
00001 
00002 
00003 from L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskAlgoTrigConfig_cff import *
00004 from L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskTechTrigConfig_cff import *
00005 es_prefer_l1GtTriggerMaskAlgoTrig = cms.ESPrefer("L1GtTriggerMaskAlgoTrigTrivialProducer","l1GtTriggerMaskAlgoTrig")
00006 es_prefer_l1GtTriggerMaskTechTrig = cms.ESPrefer("L1GtTriggerMaskTechTrigTrivialProducer","l1GtTriggerMaskTechTrig")
00007 from HLTrigger.HLTfilters.hltLevel1GTSeed_cfi import *
00008 
00009 # Good coll. --> '0 AND (40 OR 41) AND NOT (36 OR 37 OR 38 OR 39) AND NOT ((42 AND NOT 43) OR (43 AND NOT 42))'
00010 l1tech = hltLevel1GTSeed.clone()
00011 l1tech.L1TechTriggerSeeding = cms.bool(True)
00012 
00013 bptx =l1tech.clone()
00014 bptx.L1SeedsLogicalExpression = cms.string('0')
00015 
00016 bscAnd = l1tech.clone()
00017 bscAnd.L1SeedsLogicalExpression = cms.string('40 OR 41')
00018 
00019 beamHaloVeto = l1tech.clone()
00020 beamHaloVeto.L1SeedsLogicalExpression = cms.string('NOT (36 OR 37 OR 38 OR 39) AND NOT ((42 AND NOT 43) OR (43 AND NOT 42))')
00021 
00022 l1Coll = cms.Sequence(bptx + beamHaloVeto)
00023 l1CollBscAnd = cms.Sequence(bptx + bscAnd + beamHaloVeto)
00024 
00025 primaryVertexFilter = cms.EDFilter("VertexSelector",
00026     src = cms.InputTag("offlinePrimaryVertices"),
00027     cut = cms.string("!isFake && ndof > 4 && abs(z) <= 15 && position.Rho <= 2"),
00028     filter = cms.bool(True),   # otherwise it won't filter the events, just produce an empty vertex collection.
00029 )
00030 
00031 scrapingEvtFilter = cms.EDFilter("FilterOutScraping",
00032     applyfilter = cms.untracked.bool(True),
00033     debugOn = cms.untracked.bool(False),
00034     numtrack = cms.untracked.uint32(10),
00035     thresh = cms.untracked.double(0.25)
00036 )
00037 
00038 HLTDTActivityFilter = cms.EDFilter( "HLTDTActivityFilter",
00039     inputDCC         = cms.InputTag( "dttfDigis" ),
00040     inputDDU         = cms.InputTag( "muonDTDigis" ),
00041     inputDigis       = cms.InputTag( "muonDTDigis" ),
00042     processDCC       = cms.bool( False ),
00043     processDDU       = cms.bool( False ),
00044     processDigis     = cms.bool( True ),
00045     processingMode   = cms.int32( 0 ),   # 0=(DCC | DDU) | Digis/ 
00046                                          # 1=(DCC & DDU) | Digis/
00047                                          # 2=(DCC | DDU) & Digis/
00048                                          # 3=(DCC & DDU) & Digis/   
00049     minChamberLayers = cms.int32( 6 ),
00050     maxStation       = cms.int32( 3 ),
00051     minQual          = cms.int32( 2 ),   # 0-1=L 2-3=H 4=LL 5=HL 6=HH/
00052     minDDUBX         = cms.int32( 9 ),
00053     maxDDUBX         = cms.int32( 14 ),
00054     minActiveChambs  = cms.int32( 1 ),
00055     activeSectors    = cms.vint32(1,2,3,4,5,6,7,8,9,10,11,12)
00056 )
00057 
00058 #from CalibMuon.DTCalibration.DTCalibMuonSelection_cfi import *
00059 
00060 goodMuons = cms.EDFilter("CandViewSelector",
00061     src = cms.InputTag("muons"),
00062     cut = cms.string('(isGlobalMuon = 1 | isTrackerMuon = 1) & abs(eta) < 1.2')
00063 )
00064 muonFilter = cms.EDFilter("CandViewCountFilter",
00065     src = cms.InputTag("goodMuons"),
00066     minNumber = cms.uint32(1)
00067 )
00068 muonSelection = cms.Sequence(goodMuons * muonFilter)
00069 
00070 #offlineSelection = cms.Sequence(scrapingEvtFilter + primaryVertexFilter + HLTDTActivityFilter + muonSelection)
00071 offlineSelection = cms.Sequence(scrapingEvtFilter + primaryVertexFilter + muonSelection)
00072 offlineSelectionALCARECO = cms.Sequence(HLTDTActivityFilter)
00073 #offlineSelectionALCARECO = cms.Sequence(muonSelection)
00074 
00075 dtCalibOfflineSelection = cms.Sequence(l1Coll + offlineSelection)
00076 dtCalibOfflineSelectionALCARECO = cms.Sequence(l1CollBscAnd + offlineSelectionALCARECO)