Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 13:26:52

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 process = cms.Process("PROD")
0004 
0005 process.maxEvents = cms.untracked.PSet(
0006     input = cms.untracked.int32(==NUMEVT==)
0007 )
0008 
0009 process.load("FWCore.MessageService.MessageLogger_cfi")
0010 
0011 # import of standard configurations
0012 process.load("IOMC.RandomEngine.IOMC_cff")
0013 process.load('FastSimulation.PileUpProducer.PileUpSimulator10TeV_cfi')
0014 process.load('Configuration/StandardSequences/MagneticField_38T_cff')
0015 process.load('Configuration/StandardSequences/Generator_cff')
0016 process.load('FastSimulation/Configuration/FamosSequences_cff')
0017 process.load('FastSimulation/Configuration/HLT_cff')
0018 process.load('Configuration.StandardSequences.L1TriggerDefaultMenu_cff')
0019 process.load('IOMC.EventVertexGenerators.VtxSmearedParameters_cfi')
0020 process.load('FastSimulation/Configuration/CommonInputs_cff')
0021 process.load('FastSimulation/Configuration/EventContent_cff')
0022 
0023 # DiPions in energy bins
0024 
0025 process.source = cms.Source("EmptySource")
0026 
0027 # Other statements
0028 process.famosPileUp.PileUpSimulator = process.PileUpSimulatorBlock.PileUpSimulator
0029 process.famosPileUp.PileUpSimulator.averageNumber = 0
0030 process.fastSimProducer.SimulateCalorimetry = False
0031 process.simulation = cms.Sequence(process.simulationWithFamos)
0032 process.HLTEndSequence = cms.Sequence(process.reconstructionWithFamos)
0033 
0034 # set correct vertex smearing
0035 process.Early10TeVCollisionVtxSmearingParameters.type = cms.string("BetaFunc")
0036 process.fastSimProducer.VertexGenerator = process.Early10TeVCollisionVtxSmearingParameters
0037 process.famosPileUp.VertexGenerator = process.Early10TeVCollisionVtxSmearingParameters
0038 process.GlobalTag.globaltag = 'IDEAL_31X::All'
0039 
0040 # Include the RandomNumberGeneratorService definition
0041 process.load("IOMC.RandomEngine.IOMC_cff")
0042 process.RandomNumberGeneratorService.generator.initialSeed= ==seed1==
0043 #process.RandomNumberGeneratorService.theSource.initialSeed= 1414
0044 
0045 # DiPions in energy bins
0046 process.generator = cms.EDProducer(
0047     "FlatRandomPtGunProducer",
0048     firstRun = cms.untracked.uint32(1),
0049     PGunParameters = cms.PSet(
0050         PartID = cms.vint32(211),
0051         MinPt = cms.double(==MINPT==.0),
0052         MaxPt = cms.double(==MAXPT==.0),
0053         MinEta = cms.double(-2.8),
0054         MaxEta = cms.double(+2.8),
0055         MinPhi = cms.double(-3.14159265359), ## it must be in radians
0056         MaxPhi = cms.double(3.14159265359),
0057     ),
0058     AddAntiParticle = cms.bool(False), # back-to-back particles
0059     Verbosity = cms.untracked.int32(0) ## for printouts, set it to 1 (or greater)
0060 )    
0061 process.ProductionFilterSequence = cms.Sequence(process.generator)
0062 # this example configuration offers some minimum 
0063 # annotation, to help users get through; please
0064 # don't hesitate to read through the comments
0065 # use MessageLogger to redirect/suppress multiple
0066 # service messages coming from the system
0067 #
0068 # in this config below, we use the replace option to make
0069 # the logger let out messages of severity ERROR (INFO level
0070 # will be suppressed), and we want to limit the number to 10
0071 #
0072 
0073 process.load("RecoLocalTracker.Configuration.RecoLocalTracker_cff")
0074 process.load("FastSimulation.TrackingRecHitProducer.SiClusterTranslator_cfi")
0075 process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0076 process.load("RecoTracker.Configuration.RecoTracker_cff")
0077 
0078 #CPEs
0079 process.load("FastSimulation.TrackingRecHitProducer.FastPixelCPE_cfi")
0080 process.load("FastSimulation.TrackingRecHitProducer.FastStripCPE_cfi")
0081 
0082 #First Step
0083 process.load("RecoTracker.IterativeTracking.FirstStep_cff")
0084 process.newClusters.pixelClusters = cms.InputTag('siClusterTranslator')
0085 process.newClusters.stripClusters = cms.InputTag('siClusterTranslator')
0086 process.newPixelRecHits.CPE = cms.string('FastPixelCPE')
0087 process.newStripRecHits.StripCPE = cms.string('FastStripCPE')
0088 process.newMeasurementTracker.StripCPE = cms.string('FastStripCPE')
0089 process.newMeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0090 
0091 #Second Step
0092 process.load("RecoTracker.IterativeTracking.SecStep_cff")
0093 process.secPixelRecHits.CPE = cms.string('FastPixelCPE')
0094 process.secStripRecHits.StripCPE = cms.string('FastStripCPE')
0095 process.secMeasurementTracker.StripCPE = cms.string('FastStripCPE')
0096 process.secMeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0097 
0098 #Third Step
0099 process.load("RecoTracker.IterativeTracking.ThStep_cff")
0100 process.thPixelRecHits.CPE = cms.string('FastPixelCPE')
0101 process.thStripRecHits.StripCPE = cms.string('FastStripCPE')
0102 process.thMeasurementTracker.StripCPE = cms.string('FastStripCPE')
0103 process.thMeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0104 
0105 #Fourth Step
0106 process.load("RecoTracker.IterativeTracking.PixelLessStep_cff")
0107 process.fourthPixelRecHits.CPE = cms.string('FastPixelCPE')
0108 process.fourthStripRecHits.StripCPE = cms.string('FastStripCPE')
0109 process.fourthMeasurementTracker.StripCPE = cms.string('FastStripCPE')
0110 process.fourthMeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0111 
0112 #Fifth Step
0113 process.load("RecoTracker.IterativeTracking.TobTecStep_cff")
0114 process.fifthPixelRecHits.CPE = cms.string('FastPixelCPE')
0115 process.fifthStripRecHits.StripCPE = cms.string('FastStripCPE')
0116 process.fifthMeasurementTracker.StripCPE = cms.string('FastStripCPE')
0117 process.fifthMeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0118 
0119 #Strips
0120 process.load("RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi")
0121 process.siStripMatchedRecHits.StripCPE = cms.string('FastStripCPE')
0122 process.siStripMatchedRecHits.ClusterProducer = cms.string('siClusterTranslator')
0123 
0124 #Pixels
0125 process.load("RecoLocalTracker.SiPixelRecHits.PixelCPEESProducers_cff")
0126 process.load("RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi")
0127 process.siPixelRecHits.src = cms.InputTag('siClusterTranslator')
0128 process.siPixelRecHits.CPE = cms.string('FastPixelCPE')
0129 process.load("RecoTracker.TkSeedGenerator.GlobalSeedsFromTripletsWithVertices_cff")
0130 process.globalSeedsFromTripletsWithVertices.TTRHBuilder = cms.string("FastPixelCPE")
0131 
0132 #Transient Rec Hits
0133 process.load("RecoTracker.TransientTrackingRecHit.TransientTrackingRecHitBuilder_cfi")
0134 process.ttrhbwr.StripCPE = cms.string('FastStripCPE')
0135 process.ttrhbwr.PixelCPE = cms.string('FastPixelCPE')
0136 process.load("RecoTracker.TransientTrackingRecHit.TTRHBuilderWithTemplate_cfi")
0137 process.TTRHBuilderAngleAndTemplate.StripCPE = cms.string('FastStripCPE')
0138 process.TTRHBuilderAngleAndTemplate.PixelCPE = cms.string('FastPixelCPE')
0139 process.load("RecoTracker.TkSeedingLayers.TTRHBuilderWithoutAngle4PixelPairs_cfi")
0140 process.myTTRHBuilderWithoutAngle4PixelPairs.PixelCPE = cms.string("FastPixelCPE")
0141 process.load("RecoTracker.TkSeedingLayers.TTRHBuilderWithoutAngle4PixelTriplets_cfi")
0142 process.myTTRHBuilderWithoutAngle4PixelTriplets.PixelCPE = cms.string("FastPixelCPE")
0143 process.load("RecoTracker.TkSeedingLayers.TTRHBuilderWithoutAngle4MixedPairs_cfi")
0144 process.myTTRHBuilderWithoutAngle4MixedPairs.PixelCPE = cms.string("FastPixelCPE")
0145 process.load("RecoTracker.TkSeedingLayers.TTRHBuilderWithoutAngle4MixedTriplets_cfi")
0146 process.myTTRHBuilderWithoutAngle4MixedTriplets.PixelCPE = cms.string("FastPixelCPE")
0147 
0148 #Tracks
0149 process.load("RecoTracker.MeasurementDet.MeasurementTrackerESProducer_cfi")
0150 process.MeasurementTracker.stripClusterProducer = cms.string('siClusterTranslator')
0151 process.MeasurementTracker.pixelClusterProducer = cms.string('siClusterTranslator')
0152 process.MeasurementTracker.StripCPE = cms.string('FastStripCPE')
0153 process.MeasurementTracker.PixelCPE = cms.string('FastPixelCPE')
0154 
0155 # Event output
0156 process.load("Configuration.EventContent.EventContent_cff")
0157 process.load("Configuration.StandardSequences.Reconstruction_cff")
0158 
0159 process.MessageLogger = cms.Service("MessageLogger",
0160     reco = cms.untracked.PSet(
0161         threshold = cms.untracked.string('DEBUG')
0162     ),
0163    destinations = cms.untracked.vstring('reco')
0164 )
0165 
0166 ##from Kevin
0167 process.zeroStepHighPurity = cms.EDProducer("QualityFilter",
0168                                            TrackQuality = cms.string('highPurity'),
0169                                            recTracks = cms.InputTag("zeroStepTracksWithQuality")
0170                                            )
0171 process.firstStepHighPurity = cms.EDProducer("QualityFilter",
0172                                            TrackQuality = cms.string('highPurity'),
0173                                            recTracks = cms.InputTag("preMergingFirstStepTracksWithQuality")
0174                                            )
0175 process.fifthStepHighPurity = cms.EDProducer("QualityFilter",
0176                                            TrackQuality = cms.string('highPurity'),
0177                                            recTracks = cms.InputTag("tobtecStep")
0178                                            )
0179 process.fevt = cms.OutputModule(
0180     "PoolOutputModule",
0181     fileName = cms.untracked.string("fevt.root"),
0182     outputCommands = cms.untracked.vstring(
0183       'drop *',
0184       ###---these are the collection used in input to the "general tracks"
0185       'keep *_zeroStepHighPurity*_*_*',
0186       'keep *_firstStepHighPurity*_*_*',
0187       'keep *_firstfilter*_*_*',
0188       'keep *_secfilter*_*_*',
0189       'keep *_thfilter*_*_*',
0190       'keep *_fourthfilter*_*_*',
0191       'keep *_thfilter*_*_*',
0192       'keep *_fifthStepHighPurity*_*_*',
0193       # zero step 
0194       'keep *_zeroStep*_*_*',
0195       # step one
0196       'keep *_preMergingFirstStepTracksWithQuality*_*_*',
0197       # first(merged 0+1)  iterative step
0198       'keep *_firstStep*_*_*',
0199       # second step high quality
0200       'keep *_secStep_*_*',
0201       #third step  high quality
0202       'keep *_thStep_*_*',
0203       #fourth step high quality
0204       'keep *_pixellessStep*_*_*',
0205       #fifth step high quality
0206       'keep *_tobtecStep*_*_*',
0207       # merge of secStep+thStep 
0208       'keep *_merge2nd3rdTracks*_*_*',
0209       # merge of merge2nd3rd+pixelless
0210       'keep *_iterTracks*_*_*',
0211       # merge of pixellessStep+tobtecStep 
0212       'keep *_merge4th5thTracks*_*_*',
0213       #merge of firstStepTracksWithQuality+iterTracks
0214       "keep *_generalTracks_*_*",      
0215       'keep *_*Seed*_*_*',
0216       'keep *_sec*_*_*',
0217       'keep *_th*_*_*',
0218       'keep *_fou*_*_*',
0219       'keep *_fifth*_*_*',
0220       'keep *_newTrackCandidateMaker_*_*',
0221       "keep SimTracks_*_*_*",
0222       "keep SimVertexs_*_*_*",
0223       "keep edmHepMCProduct_*_*_*"
0224       )
0225 )
0226 
0227 
0228 # Produce Tracks and Clusters
0229 process.generation_step = cms.Path(cms.SequencePlaceholder("randomEngineStateProducer")+process.GeneInfo)
0230 process.reconstruction = cms.Path(process.famosWithTrackerHits+process.siClusterTranslator+process.siPixelRecHits+
0231                                   process.siStripMatchedRecHits+process.recopixelvertexing+
0232                                   process.iterTracking+
0233                                   process.zeroStepHighPurity+
0234                                   process.firstStepHighPurity+
0235                                   process.fifthStepHighPurity
0236                                   )
0237 
0238 
0239 process.out_step = cms.EndPath(process.fevt)
0240 
0241 # Schedule definition
0242 process.schedule = cms.Schedule(process.generation_step)
0243 process.schedule.extend([process.reconstruction,process.out_step])
0244 
0245 # special treatment in case of production filter sequence  
0246 for path in process.paths: 
0247     getattr(process,path)._seq = process.ProductionFilterSequence*getattr(process,path)._seq
0248 
0249 
0250