Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:49:25

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("makeSD")
0004 
0005 # import of standard configurations
0006 process.load("Configuration.StandardSequences.Services_cff")
0007 process.load("FWCore.MessageLogger.MessageLogger_cfi")
0008 process.load("Configuration.StandardSequences.ReconstructionHeavyIons_cff")
0009 process.load("Configuration.StandardSequences.GeometryDB_cff")
0010 process.load("Configuration.StandardSequences.MagneticField_38T_cff")
0011 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0012 process.load('Configuration.EventContent.EventContentHeavyIons_cff')
0013 
0014 
0015 process.configurationMetadata = cms.untracked.PSet(
0016     version = cms.untracked.string('$Revision: 1.4 $'),
0017     annotation = cms.untracked.string('SD and central skims'),
0018     name = cms.untracked.string('$Source: /cvs/CMSSW/UserCode/icali/SkimsCfg/SDmaker_3SD_1CS_PDHIAllPhysicsZSv2_cfg.py,v $')
0019 )
0020 
0021 process.maxEvents = cms.untracked.PSet(
0022     input = cms.untracked.int32(-1)
0023 )
0024 
0025 process.options = cms.untracked.PSet(
0026     wantSummary = cms.untracked.bool(True)
0027 )
0028 
0029 #process.Timing = cms.Service("Timing")
0030 
0031 # Input source
0032 process.source = cms.Source("PoolSource",
0033     fileNames = cms.untracked.vstring(
0034      'file:/d101/icali/ROOTFiles_SWsrc392pa5/00DFBAEF-5741-E011-B023-0025901D6486.root',
0035      'file:/d101/icali/ROOTFiles_SWsrc392pa5/00151D16-8A41-E011-B938-003048CAAAB6.root',
0036      'file:/d101/icali/ROOTFiles_SWsrc392pa5/0005A206-A642-E011-8B41-000423D33970.root'
0037     #'/store/hidata/HIRun2010/HIAllPhysics/RECO/ZS-v2/0033/7E0F627F-5C43-E011-AF82-003048F1CA12.root'
0038     #'file:/d101/icali/ROOTFiles_SWsrc392pa5/3855C0DE-FCF4-DF11-857D-003048D2C092.root'
0039     #'/store/hidata/HIRun2010/HIAllPhysics/RAW/v1/000/151/878/FCB5F9D9-16F5-DF11-89B1-001D09F251FE.root'
0040 ))
0041 
0042 
0043 # Other statements
0044 process.GlobalTag.globaltag = "GR_R_39X_V6B::All"
0045 process.MessageLogger.cerr.FwkReport.reportEvery = 100
0046 
0047 ############ Filters ###########
0048 # BSC or HF coincidence (masked unprescaled L1 bits)
0049 process.load('L1Trigger.Skimmer.l1Filter_cfi')
0050 process.bscOrHfCoinc = process.l1Filter.clone(
0051    algorithms = cms.vstring('L1_BscMinBiasThreshold1', 'L1_HcalHfCoincidencePm')
0052 )
0053 
0054 
0055 # patch the collisionEventSelection
0056 # make calotowers into candidates
0057 process.towersAboveThreshold = cms.EDProducer("CaloTowerCandidateCreator",
0058                                               src = cms.InputTag("towerMaker"),
0059                                               verbose = cms.untracked.int32(0),
0060                                               minimumE = cms.double(3.0),
0061                                               minimumEt = cms.double(0.0),
0062                                               )
0063 
0064 # select HF+ towers above threshold
0065 process.hfPosTowers = cms.EDFilter("EtaPtMinCandSelector",
0066                                    src = cms.InputTag("towersAboveThreshold"),
0067                                    ptMin   = cms.double(0),
0068                                    etaMin = cms.double(3.0),
0069                                    etaMax = cms.double(6.0)
0070                                    )
0071 
0072 # select HF- towers above threshold
0073 process.hfNegTowers = cms.EDFilter("EtaPtMinCandSelector",
0074                                    src = cms.InputTag("towersAboveThreshold"),
0075                                    ptMin   = cms.double(0),
0076                                    etaMin = cms.double(-6.0),
0077                                    etaMax = cms.double(-3.0)
0078                                    )
0079 
0080 # require at least one HF+ tower above threshold
0081 process.hfPosFilter = cms.EDFilter("CandCountFilter",
0082                                    src = cms.InputTag("hfPosTowers"),
0083                                    minNumber = cms.uint32(1)
0084                                    )
0085 
0086 # require at least one HF- tower above threshold
0087 process.hfNegFilter = cms.EDFilter("CandCountFilter",
0088                                    src = cms.InputTag("hfNegTowers"),
0089                                    minNumber = cms.uint32(1)
0090                                    )
0091 
0092 # three HF towers above threshold on each side
0093 process.hfPosFilter3 = process.hfPosFilter.clone(minNumber=cms.uint32(3))
0094 process.hfNegFilter3 = process.hfNegFilter.clone(minNumber=cms.uint32(3))
0095 
0096 # Coincidence of HF towers above threshold
0097 process.hfCoincFilter3 = cms.Sequence(
0098     process.towersAboveThreshold *
0099     process.hfPosTowers *
0100     process.hfNegTowers *
0101     process.hfPosFilter3 *
0102     process.hfNegFilter3)
0103 
0104 
0105 # Selection of at least a two-track fitted vertex
0106 process.primaryVertexFilter = cms.EDFilter("VertexSelector",
0107                                            src = cms.InputTag("hiSelectedVertex"),
0108                                            cut = cms.string("!isFake && abs(z) <= 25 && position.Rho <= 2 && tracksSize >= 2"), 
0109                                            filter = cms.bool(True),   # otherwise it won't filter the events
0110                                            )
0111 
0112 # Cluster-shape filter re-run offline
0113 process.load("RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi")
0114 
0115 process.load("HLTrigger.special.hltPixelClusterShapeFilter_cfi")
0116 process.hltPixelClusterShapeFilter.inputTag = "siPixelRecHits"
0117 
0118 # Reject BSC beam halo L1 technical bits
0119 from L1TriggerConfig.L1GtConfigProducers.L1GtTriggerMaskTechTrigConfig_cff import *
0120 from HLTrigger.HLTfilters.hltLevel1GTSeed_cfi import hltLevel1GTSeed
0121 process.noBSChalo = hltLevel1GTSeed.clone(
0122     L1TechTriggerSeeding = cms.bool(True),
0123     L1SeedsLogicalExpression = cms.string('NOT (36 OR 37 OR 38 OR 39)')
0124     )
0125 
0126 process.collisionEventSelection = cms.Sequence(process.noBSChalo *
0127                                                process.hfCoincFilter3 *
0128                                                process.primaryVertexFilter *
0129                                                process.siPixelRecHits *
0130                                                process.hltPixelClusterShapeFilter)
0131 
0132 
0133 
0134 process.load("HLTrigger.HLTfilters.hltHighLevel_cfi")
0135 
0136 ### JetHI SD
0137 process.hltJetHI = process.hltHighLevel.clone(HLTPaths = ['HLT_HIJet35U'])
0138 process.filterSdJetHI = cms.Path(process.bscOrHfCoinc *
0139                                  process.collisionEventSelection *
0140                                  process.hltJetHI)
0141 
0142 ### PhotonHI SD
0143 process.hltPhotonHI = process.hltHighLevel.clone(HLTPaths = ['HLT_HIPhoton15'])
0144 process.filterSdPhotonHI = cms.Path(process.bscOrHfCoinc *
0145                                     process.collisionEventSelection *
0146                                     process.hltPhotonHI)
0147 
0148 #process.hltPhotonJetHI = process.hltHighLevel.clone(
0149 #  HLTPaths = ['HLT_HIJet35U','HLT_HIPhoton15'])
0150 #process.filterSdPhotonJetHI = cms.Path(process.hltPhotonJetHI)
0151 
0152 ### MuHI SD
0153 
0154 #process.hltDoubleMuHI = process.hltHighLevel.clone(HLTPaths = ['HLT_HIL1DoubleMuOpen'])
0155 #process.filterSdDoubleMuHI = cms.Path(process.hltDoubleMuHI)
0156 
0157 process.hltMuHI = process.hltHighLevel.clone(
0158   HLTPaths = ["HLT_HIL1DoubleMuOpen","HLT_HIL2DoubleMu0","HLT_HIL2DoubleMu3",
0159               "HLT_HIL1SingleMu3","HLT_HIL1SingleMu5","HLT_HIL1SingleMu7",
0160               "HLT_HIL2Mu20","HLT_HIL2Mu3","HLT_HIL2Mu5Tight"],
0161   throw = False,
0162   andOr = True)
0163 process.filterSdMuHI = cms.Path(process.bscOrHfCoinc *
0164                                 process.collisionEventSelection *
0165                                 process.hltMuHI)
0166 
0167 ############ Output Modules ##########
0168 
0169 ### JetHI SD
0170 process.outputSdJetHI = cms.OutputModule("PoolOutputModule",
0171                                          SelectEvents = cms.untracked.PSet(
0172     SelectEvents = cms.vstring('filterSdJetHI')),                               
0173                                          dataset = cms.untracked.PSet(
0174     dataTier = cms.untracked.string('RECO'),
0175     filterName = cms.untracked.string('SD_JetHI')),
0176                                          outputCommands = process.RECOEventContent.outputCommands,
0177                                          fileName = cms.untracked.string('SD_JetHI.root')
0178                                          )
0179 
0180 ### PhotonHI SD
0181 process.outputSdPhotonHI = cms.OutputModule("PoolOutputModule",
0182                                             SelectEvents = cms.untracked.PSet(
0183     SelectEvents = cms.vstring('filterSdPhotonHI')),                               
0184                                             dataset = cms.untracked.PSet(
0185     dataTier = cms.untracked.string('RECO'),
0186     filterName = cms.untracked.string('SD_PhotonHI')),
0187                                             outputCommands = process.RECOEventContent.outputCommands,
0188                                             fileName = cms.untracked.string('SD_PhotonHI.root')
0189                                             )
0190 
0191 ### MuHI SD
0192 process.outputSdMuHI = cms.OutputModule("PoolOutputModule",
0193                                         SelectEvents = cms.untracked.PSet(
0194     SelectEvents = cms.vstring('filterSdMuHI')),                               
0195                                         dataset = cms.untracked.PSet(
0196     dataTier = cms.untracked.string('RECO'),
0197     filterName = cms.untracked.string('SD_MuHI')),
0198                                         outputCommands = process.RECOEventContent.outputCommands,
0199                                         fileName = cms.untracked.string('SD_MuHI.root')
0200                                         )
0201 
0202 
0203 process.this_is_the_end = cms.EndPath(
0204     process.outputSdJetHI      +
0205     process.outputSdPhotonHI   +
0206     process.outputSdMuHI       
0207 )