Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:27:53

0001 ###############################################################################
0002 # Way to use this:
0003 #   cmsRun testHGCalDigi_cfg.py geometry=D92 type=mu tag=Def
0004 #
0005 #   Options for geometry D88, D92, D93, D92Shift
0006 #               type mu, tt
0007 #               tag Def, Thr, 0Noise
0008 #
0009 ###############################################################################
0010 import FWCore.ParameterSet.Config as cms
0011 import os, sys, imp, re, random
0012 import FWCore.ParameterSet.VarParsing as VarParsing
0013 
0014 ####################################################################
0015 ### SETUP OPTIONS
0016 options = VarParsing.VarParsing('standard')
0017 options.register('geometry',
0018                  "D92",
0019                   VarParsing.VarParsing.multiplicity.singleton,
0020                   VarParsing.VarParsing.varType.string,
0021                   "geometry of operations: D88, D92, D93, D92Shift")
0022 options.register('type',
0023                  "mu",
0024                  VarParsing.VarParsing.multiplicity.singleton,
0025                  VarParsing.VarParsing.varType.string,
0026                  "type of operations: mu, tt")
0027 options.register('tag',
0028                  "Def",
0029                  VarParsing.VarParsing.multiplicity.singleton,
0030                  VarParsing.VarParsing.varType.string,
0031                  "tag of operations: Def, Thr, 0Noise")
0032 ### get and parse the command line arguments
0033 options.parseArguments()
0034 
0035 print(options)
0036 
0037 ####################################################################
0038 # Use the options
0039 from Configuration.Eras.Era_Phase2C17I13M9_cff import Phase2C17I13M9
0040 process = cms.Process('TestReco',Phase2C17I13M9)
0041 
0042 if (options.geometry == "D92Shift"):
0043     geomFile = "Geometry.HGCalCommonData.testHGCalV17ShiftReco_cff"
0044 else:
0045     geomFile = "Configuration.Geometry.GeometryExtended2026" + options.geometry + "Reco_cff"
0046 globalTag = "auto:phase2_realistic_T21"
0047 inFile = "file:step2" + options.geometry + options.type + ".root"
0048 outFile = "file:step3" + options.geometry + options.type  + ".root"
0049 fileName = "missing" + options.geometry + options.type  + options.tag + ".root"
0050 
0051 print("Geometry file: ", geomFile)
0052 print("Global Tag:    ", globalTag)
0053 print("Input file:    ", inFile)
0054 print("Output file:   ", outFile)
0055 print("Root file:     ", fileName)
0056 
0057 # import of standard configurations
0058 process.load('Configuration.StandardSequences.Services_cff')
0059 process.load('SimGeneral.HepPDTESSource.pythiapdt_cfi')
0060 process.load('FWCore.MessageService.MessageLogger_cfi')
0061 process.load('Configuration.EventContent.EventContent_cff')
0062 process.load('SimGeneral.MixingModule.mixNoPU_cfi')
0063 process.load(geomFile)
0064 process.load('Configuration.StandardSequences.MagneticField_cff')
0065 process.load('Configuration.StandardSequences.RawToDigi_cff')
0066 process.load('Configuration.StandardSequences.Reconstruction_cff')
0067 process.load('Configuration.StandardSequences.RecoSim_cff')
0068 process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')
0069 process.load('Validation.HGCalValidation.hgcMissingRecHit_cfi')
0070 
0071 process.MessageLogger.cerr.FwkReport.reportEvery = 1
0072 if hasattr(process,'MessageLogger'):
0073     process.MessageLogger.HGCalMiss=dict()
0074     process.MessageLogger.HGCalError=dict()
0075 
0076 process.maxEvents = cms.untracked.PSet(
0077     input = cms.untracked.int32(-1),
0078     output = cms.optional.untracked.allowed(cms.int32,cms.PSet)
0079 )
0080 
0081 # Input source
0082 process.source = cms.Source("PoolSource",
0083     fileNames = cms.untracked.vstring(inFile),
0084     secondaryFileNames = cms.untracked.vstring()
0085 )
0086 
0087 process.options = cms.untracked.PSet(
0088     FailPath = cms.untracked.vstring(),
0089     IgnoreCompletely = cms.untracked.vstring(),
0090     Rethrow = cms.untracked.vstring(),
0091     SkipEvent = cms.untracked.vstring(),
0092     accelerators = cms.untracked.vstring('*'),
0093     allowUnscheduled = cms.obsolete.untracked.bool,
0094     canDeleteEarly = cms.untracked.vstring(),
0095     deleteNonConsumedUnscheduledModules = cms.untracked.bool(True),
0096     dumpOptions = cms.untracked.bool(False),
0097     emptyRunLumiMode = cms.obsolete.untracked.string,
0098     eventSetup = cms.untracked.PSet(
0099         forceNumberOfConcurrentIOVs = cms.untracked.PSet(
0100             allowAnyLabel_=cms.required.untracked.uint32
0101         ),
0102         numberOfConcurrentIOVs = cms.untracked.uint32(0)
0103     ),
0104     fileMode = cms.untracked.string('FULLMERGE'),
0105     forceEventSetupCacheClearOnNewRun = cms.untracked.bool(False),
0106     makeTriggerResults = cms.obsolete.untracked.bool,
0107     numberOfConcurrentLuminosityBlocks = cms.untracked.uint32(0),
0108     numberOfConcurrentRuns = cms.untracked.uint32(1),
0109     numberOfStreams = cms.untracked.uint32(0),
0110     numberOfThreads = cms.untracked.uint32(1),
0111     printDependencies = cms.untracked.bool(False),
0112     sizeOfStackForThreadsInKB = cms.optional.untracked.uint32,
0113     throwIfIllegalParameter = cms.untracked.bool(True),
0114     wantSummary = cms.untracked.bool(False)
0115 )
0116 
0117 # Production Info
0118 process.configurationMetadata = cms.untracked.PSet(
0119     annotation = cms.untracked.string('step3 nevts:10'),
0120     name = cms.untracked.string('Applications'),
0121     version = cms.untracked.string('$Revision: 1.19 $')
0122 )
0123 
0124 # Output definition
0125 
0126 process.FEVTDEBUGHLToutput = cms.OutputModule("PoolOutputModule",
0127     dataset = cms.untracked.PSet(
0128         dataTier = cms.untracked.string('GEN-SIM-RECO'),
0129         filterName = cms.untracked.string('')
0130     ),
0131     fileName = cms.untracked.string(outFile),
0132     outputCommands = cms.untracked.vstring(
0133         'keep *_*hbhe*_*_*',
0134         'keep *_g4SimHits_*_*',
0135         'keep *_*HGC*_*_*',
0136         ),
0137     splitLevel = cms.untracked.int32(0)
0138 )
0139 
0140 # Additional output definition
0141 process.TFileService = cms.Service("TFileService",
0142                                    fileName = cms.string(fileName),
0143                                    closeFileFast = cms.untracked.bool(True) )
0144 
0145 # Other statements
0146 process.mix.playback = True
0147 process.mix.digitizers = cms.PSet()
0148 for a in process.aliases: delattr(process, a)
0149 process.RandomNumberGeneratorService.restoreStateLabel=cms.untracked.string("randomEngineStateProducer")
0150 from Configuration.AlCa.GlobalTag import GlobalTag
0151 process.GlobalTag = GlobalTag(process.GlobalTag, globalTag, '')
0152 
0153 # Path and EndPath definitions
0154 process.raw2digi_step = cms.Path(process.RawToDigi)
0155 process.reconstruction_step = cms.Path(process.reconstruction)
0156 process.recosim_step = cms.Path(process.recosim)
0157 process.analysis_step = cms.Path(process.hgcMissingRecHit)
0158 process.FEVTDEBUGHLToutput_step = cms.EndPath(process.FEVTDEBUGHLToutput)
0159 
0160 # Schedule definition
0161 process.schedule = cms.Schedule(process.raw2digi_step,
0162                                 process.reconstruction_step,
0163                                 process.recosim_step,
0164                                 process.analysis_step,
0165                                 process.FEVTDEBUGHLToutput_step)
0166 
0167 # customisation of the process.
0168 
0169 # Automatic addition of the customisation function from SimGeneral.MixingModule.fullMixCustomize_cff
0170 from SimGeneral.MixingModule.fullMixCustomize_cff import setCrossingFrameOn 
0171 
0172 #call to customisation function setCrossingFrameOn imported from SimGeneral.MixingModule.fullMixCustomize_cff
0173 process = setCrossingFrameOn(process)
0174 
0175 # End of customisation functions
0176 
0177 # Add early deletion of temporary data products to reduce peak memory need
0178 from Configuration.StandardSequences.earlyDeleteSettings_cff import customiseEarlyDelete
0179 process = customiseEarlyDelete(process)
0180 # End adding early deletion