Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:07:41

0001 ### AUTO-GENERATED CMSRUN CONFIGURATION FOR ECAL DQM ###
0002 import FWCore.ParameterSet.Config as cms
0003 from EventFilter.OnlineMetaDataRawToDigi.tcdsRawToDigi_cfi import * # To monitor LHC status, e.g. to mask trigger primitives quality alarm during Cosmics
0004 import sys
0005 
0006 from Configuration.Eras.Era_Run3_cff import Run3
0007 process = cms.Process("process", Run3)
0008 
0009 unitTest = False
0010 if 'unitTest=True' in sys.argv:
0011     unitTest=True
0012 
0013 ### Load cfis ###
0014 
0015 if unitTest:
0016     process.load("DQM.Integration.config.unittestinputsource_cfi")
0017     from DQM.Integration.config.unittestinputsource_cfi import options
0018 else:
0019     process.load("DQM.Integration.config.inputsource_cfi")
0020     from DQM.Integration.config.inputsource_cfi import options, set_BeamSplashRun_settings
0021 
0022 process.load("DQM.Integration.config.environment_cfi")
0023 process.load("DQM.Integration.config.FrontierCondition_GT_cfi")
0024 #process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0025 #process.load("CalibCalorimetry.EcalLaserCorrection.ecalLaserCorrectionService_cfi")
0026 
0027 process.load("FWCore.Modules.preScaler_cfi")
0028 process.load("Configuration.StandardSequences.GeometryRecoDB_cff")
0029 #process.load("Geometry.CaloEventSetup.CaloGeometry_cfi")
0030 #process.load("Geometry.CaloEventSetup.CaloTopology_cfi")
0031 #process.load("Geometry.CaloEventSetup.EcalTrigTowerConstituents_cfi")
0032 #process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi")
0033 #process.load("Geometry.EcalMapping.EcalMapping_cfi")
0034 #process.load("Geometry.EcalMapping.EcalMappingRecord_cfi")
0035 
0036 process.load("Configuration.StandardSequences.RawToDigi_Data_cff")
0037 #process.load("L1Trigger.Configuration.L1RawToDigi_cff")
0038 #process.load("SimCalorimetry.EcalTrigPrimProducers.ecalTriggerPrimitiveDigis_cfi")
0039 
0040 process.load("Configuration.StandardSequences.Reconstruction_cff")
0041 #process.load("RecoLuminosity.LumiProducer.bunchSpacingProducer_cfi")
0042 #process.load("RecoLocalCalo.EcalRecProducers.ecalMultiFitUncalibRecHit_cfi")
0043 #process.load("RecoLocalCalo.EcalRecProducers.ecalDetIdToBeRecovered_cfi")
0044 #process.load("RecoLocalCalo.EcalRecProducers.ecalRecHit_cfi")
0045 #process.load("RecoLocalCalo.EcalRecAlgos.EcalSeverityLevelESProducer_cfi")
0046 #process.load("RecoEcal.EgammaClusterProducers.ecalClusteringSequence_cff")
0047 #process.load("RecoEcal.EgammaCoreTools.EcalNextToDeadChannelESProducer_cff")
0048 #process.load("RecoEcal.EgammaClusterProducers.reducedRecHitsSequence_cff")
0049 
0050 process.load("DQM.EcalMonitorTasks.EcalMonitorTask_cfi")
0051 process.load("DQM.EcalMonitorClient.EcalMonitorClient_cfi")
0052 
0053 ### Individual module setups ###
0054 
0055 # Use the ratio timing method for the online DQM
0056 process.ecalMultiFitUncalibRecHitCPU.algoPSet.timealgo = "RatioMethod"
0057 process.ecalMultiFitUncalibRecHitCPU.algoPSet.outOfTimeThresholdGain12pEB = 5.
0058 process.ecalMultiFitUncalibRecHitCPU.algoPSet.outOfTimeThresholdGain12mEB = 5.
0059 process.ecalMultiFitUncalibRecHitCPU.algoPSet.outOfTimeThresholdGain61pEB = 5.
0060 process.ecalMultiFitUncalibRecHitCPU.algoPSet.outOfTimeThresholdGain61mEB = 5.
0061 process.ecalMultiFitUncalibRecHitCPU.algoPSet.timeCalibTag = ':'
0062 process.ecalMultiFitUncalibRecHitCPU.algoPSet.timeOffsetTag = ':'
0063 process.ecalRecHit.cpu.timeCalibTag = ':'
0064 process.ecalRecHit.cpu.timeOffsetTag = ':'
0065 
0066 process.ecalPhysicsFilter = cms.EDFilter("EcalMonitorPrescaler",
0067     cosmics = cms.untracked.uint32(1),
0068     physics = cms.untracked.uint32(1),
0069     EcalRawDataCollection = cms.InputTag("ecalDigis")
0070 )
0071 
0072 process.load('FWCore.MessageService.MessageLogger_cfi')
0073 process.MessageLogger.cerr = cms.untracked.PSet(
0074     default = cms.untracked.PSet(
0075         limit = cms.untracked.int32(-1)
0076     ),
0077     EcalLaserDbService = cms.untracked.PSet(
0078         limit = cms.untracked.int32(10)
0079     ),
0080     noTimeStamps = cms.untracked.bool(True),
0081     threshold = cms.untracked.string('WARNING'),
0082     noLineBreaks = cms.untracked.bool(True)
0083 )
0084 process.MessageLogger.cout = cms.untracked.PSet(
0085     default = cms.untracked.PSet(
0086         limit = cms.untracked.int32(0)
0087     ),
0088     EcalDQM = cms.untracked.PSet(
0089         limit = cms.untracked.int32(-1)
0090     ),
0091     threshold = cms.untracked.string('INFO')
0092 )
0093 
0094 process.maxEvents = cms.untracked.PSet(
0095     input = cms.untracked.int32(-1)
0096 )
0097 if not unitTest:
0098   if options.BeamSplashRun:
0099       set_BeamSplashRun_settings( process.source )
0100       process.ecalMonitorTask.workerParameters.TimingTask.params.splashSwitch = True
0101       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeMap.zaxis.high = cms.untracked.double(30.)
0102       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeMap.zaxis.low = cms.untracked.double(-30.)
0103       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeMapByLS.zaxis.high = cms.untracked.double(30.)
0104       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeMapByLS.zaxis.low = cms.untracked.double(-30.)
0105       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeAll.xaxis.high = cms.untracked.double(30.)
0106       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeAll.xaxis.low = cms.untracked.double(-30.)
0107       process.ecalMonitorTask.workerParameters.TimingTask.MEs.Time1D.xaxis.high = cms.untracked.double(30.)
0108       process.ecalMonitorTask.workerParameters.TimingTask.MEs.Time1D.xaxis.low = cms.untracked.double(-30.)
0109       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeAllMap.zaxis.high = cms.untracked.double(25.)
0110       process.ecalMonitorTask.workerParameters.TimingTask.MEs.TimeAllMap.zaxis.low = cms.untracked.double(-25.)
0111       process.ecalMonitorTask.workerParameters.TimingTask.params.chi2ThresholdEE = cms.untracked.double(1000.)
0112       process.ecalMonitorTask.workerParameters.TimingTask.params.chi2ThresholdEB = cms.untracked.double(1000.)
0113 
0114       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdvBkwd.yaxis.high = cms.untracked.double(30.)
0115       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdvBkwd.yaxis.low = cms.untracked.double(-30.)
0116       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdvBkwd.xaxis.high = cms.untracked.double(30.)
0117       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdvBkwd.xaxis.low = cms.untracked.double(-30.)
0118       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdBkwdDiff.xaxis.high = cms.untracked.double(25.)
0119       process.ecalMonitorClient.workerParameters.TimingClient.MEs.FwdBkwdDiff.xaxis.low = cms.untracked.double(-25.)
0120       process.ecalMonitorClient.workerParameters.TimingClient.MEs.MeanSM.xaxis.high = cms.untracked.double(30.)
0121       process.ecalMonitorClient.workerParameters.TimingClient.MEs.MeanSM.xaxis.low = cms.untracked.double(-30.)
0122       process.ecalMonitorClient.workerParameters.TimingClient.MEs.MeanAll.xaxis.high = cms.untracked.double(30.)
0123       process.ecalMonitorClient.workerParameters.TimingClient.MEs.MeanAll.xaxis.low = cms.untracked.double(-30.)
0124       process.ecalMonitorClient.workerParameters.TimingClient.params.minChannelEntries = cms.untracked.int32(0)
0125 
0126 process.ecalMonitorClient.verbosity = 0
0127 process.ecalMonitorClient.workers = ['IntegrityClient', 'OccupancyClient', 'PresampleClient', 'RawDataClient', 'TimingClient', 'SelectiveReadoutClient', 'TrigPrimClient', 'MLClient', 'SummaryClient']
0128 process.ecalMonitorClient.workerParameters.SummaryClient.params.activeSources = ['Integrity', 'RawData', 'Presample', 'TriggerPrimitives', 'Timing', 'HotCell']
0129 process.ecalMonitorClient.commonParameters.onlineMode = True
0130 
0131 process.preScaler.prescaleFactor = 1
0132 
0133 process.tcdsDigis = tcdsRawToDigi.clone(
0134   InputLabel = "rawDataCollector"
0135 )
0136 
0137 ###### For OnlineLuminosityRecord to get the PU/luminosity info ######
0138 process.load('EventFilter.OnlineMetaDataRawToDigi.onlineMetaDataRawToDigi_cfi')
0139 process.onlineMetaDataDigis = cms.EDProducer('OnlineMetaDataRawToDigi')
0140 
0141 process.dqmEnv.subSystemFolder = 'Ecal'
0142 process.dqmSaver.tag = 'Ecal'
0143 process.dqmSaver.runNumber = options.runNumber
0144 process.dqmSaverPB.tag = 'Ecal'
0145 process.dqmSaverPB.runNumber = options.runNumber
0146 
0147 process.simEcalTriggerPrimitiveDigis.InstanceEB = "ebDigis"
0148 process.simEcalTriggerPrimitiveDigis.InstanceEE = "eeDigis"
0149 process.simEcalTriggerPrimitiveDigis.Label = "ecalDigis"
0150 
0151 process.ecalMonitorTask.workers = ['ClusterTask', 'EnergyTask', 'IntegrityTask', 'OccupancyTask', 'RawDataTask', 'TimingTask', 'TrigPrimTask', 'PresampleTask', 'SelectiveReadoutTask', 'PiZeroTask']
0152 process.ecalMonitorTask.verbosity = 0
0153 process.ecalMonitorTask.collectionTags.EESuperCluster = "multi5x5SuperClusters:multi5x5EndcapSuperClusters"
0154 process.ecalMonitorTask.collectionTags.EBBasicCluster = "hybridSuperClusters:hybridBarrelBasicClusters"
0155 process.ecalMonitorTask.collectionTags.EEBasicCluster = "multi5x5SuperClusters:multi5x5EndcapBasicClusters"
0156 process.ecalMonitorTask.collectionTags.Source = "rawDataCollector"
0157 process.ecalMonitorTask.collectionTags.EBSuperCluster = "correctedHybridSuperClusters"
0158 process.ecalMonitorTask.collectionTags.TrigPrimEmulDigi = "simEcalTriggerPrimitiveDigis"
0159 process.ecalMonitorTask.workerParameters.TrigPrimTask.params.runOnEmul = True
0160 process.ecalMonitorTask.commonParameters.willConvertToEDM = False
0161 process.ecalMonitorTask.commonParameters.onlineMode = True
0162 process.ecalMonitorTask.workerParameters.OccupancyTask.params.lumiCheck = True
0163 
0164 ### Sequences ###
0165 
0166 process.ecalPreRecoSequence = cms.Sequence(process.bunchSpacingProducer + process.ecalDigis)
0167 process.ecalRecoSequence = cms.Sequence((process.ecalMultiFitUncalibRecHit+process.ecalDetIdToBeRecovered+process.ecalRecHit)+(process.simEcalTriggerPrimitiveDigis+process.gtDigis)+(process.hybridClusteringSequence+process.multi5x5ClusteringSequence))
0168 process.multi5x5ClusteringSequence = cms.Sequence(process.multi5x5BasicClustersCleaned+process.multi5x5SuperClustersCleaned+process.multi5x5BasicClustersUncleaned+process.multi5x5SuperClustersUncleaned+process.multi5x5SuperClusters)
0169 process.hybridClusteringSequence = cms.Sequence(process.cleanedHybridSuperClusters+process.uncleanedHybridSuperClusters+process.hybridSuperClusters+process.correctedHybridSuperClusters+process.uncleanedOnlyCorrectedHybridSuperClusters)
0170 
0171 ### Paths ###
0172 
0173 process.ecalMonitorPath = cms.Path(process.onlineMetaDataDigis+process.preScaler+process.ecalPreRecoSequence+process.ecalPhysicsFilter+process.ecalRecoSequence+process.tcdsDigis+process.ecalMonitorTask)
0174 process.ecalClientPath = cms.Path(process.preScaler+process.ecalPreRecoSequence+process.ecalPhysicsFilter+process.ecalMonitorClient)
0175 
0176 process.dqmEndPath = cms.EndPath(process.dqmEnv)
0177 process.dqmOutputPath = cms.EndPath(process.dqmSaver + process.dqmSaverPB)
0178 
0179 ### Schedule ###
0180 
0181 process.schedule = cms.Schedule(process.ecalMonitorPath,process.ecalClientPath,process.dqmEndPath,process.dqmOutputPath)
0182 
0183 ### Run type specific ###
0184 
0185 runTypeName = process.runType.getRunTypeName()
0186 if (runTypeName == 'pp_run' or runTypeName == 'pp_run_stage1'):
0187     pass
0188 elif (runTypeName == 'cosmic_run' or runTypeName == 'cosmic_run_stage1'):
0189 #    process.dqmEndPath.remove(process.dqmQTest)
0190     process.ecalMonitorTask.workers = ['EnergyTask', 'IntegrityTask', 'OccupancyTask', 'RawDataTask', 'TimingTask', 'TrigPrimTask', 'PresampleTask', 'SelectiveReadoutTask', 'PiZeroTask']
0191     process.ecalMonitorClient.workers = ['IntegrityClient', 'OccupancyClient', 'PresampleClient', 'RawDataClient', 'TimingClient', 'SelectiveReadoutClient', 'TrigPrimClient', 'MLClient', 'SummaryClient']
0192     process.ecalMonitorClient.workerParameters.SummaryClient.params.activeSources = ['Integrity', 'RawData', 'Presample', 'TriggerPrimitives', 'Timing', 'HotCell']
0193     process.ecalMonitorTask.workerParameters.PresampleTask.params.doPulseMaxCheck = False 
0194 elif runTypeName == 'hi_run':
0195     process.ecalMonitorTask.collectionTags.Source = "rawDataRepacker"
0196     process.ecalDigisCPU.InputLabel = 'rawDataRepacker'
0197 elif runTypeName == 'hpu_run':
0198     if not unitTest:
0199         process.source.SelectEvents = cms.untracked.vstring("*")
0200 
0201 ### process customizations included here
0202 from DQM.Integration.config.online_customizations_cfi import *
0203 print("Final Source settings:", process.source)
0204 process = customise(process)