Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-11-19 23:19:58

0001 #-------------------------------------
0002 #   Hcal DQM Application using New DQM Sources/Clients
0003 #-------------------------------------
0004 
0005 #-------------------------------------
0006 #   Standard Python Imports
0007 #-------------------------------------
0008 import os, sys, socket, string
0009 
0010 #-------------------------------------
0011 #   Standard CMSSW Imports/Definitions
0012 #-------------------------------------
0013 import FWCore.ParameterSet.Config as cms
0014 from Configuration.Eras.Era_Run3_cff import Run3
0015 process      = cms.Process('HCALDQM', Run3)
0016 subsystem    = 'Hcal'
0017 cmssw        = os.getenv("CMSSW_VERSION").split("_")
0018 debugstr     = "### HcalDQM::cfg::DEBUG: "
0019 warnstr      = "### HcalDQM::cfg::WARN: "
0020 errorstr     = "### HcalDQM::cfg::ERROR:"
0021 useOfflineGT = False
0022 useFileInput = False
0023 useMap       = False
0024 unitTest     = 'unitTest=True' in sys.argv
0025 
0026 #-------------------------------------
0027 #   Central DQM Stuff imports
0028 #-------------------------------------
0029 from DQM.Integration.config.online_customizations_cfi import *
0030 
0031 if useOfflineGT:
0032     process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
0033     process.GlobalTag.globaltag = autoCond['run3_data_prompt']
0034 else:
0035     process.load('DQM.Integration.config.FrontierCondition_GT_cfi')
0036 
0037 if unitTest:
0038     process.load("DQM.Integration.config.unitteststreamerinputsource_cfi")
0039     from DQM.Integration.config.unitteststreamerinputsource_cfi import options
0040 elif useFileInput:
0041     process.load("DQM.Integration.config.fileinputsource_cfi")
0042     from DQM.Integration.config.fileinputsource_cfi import options
0043 else:
0044     process.load('DQM.Integration.config.inputsource_cfi')
0045     from DQM.Integration.config.inputsource_cfi import options
0046 
0047 process.load('DQM.Integration.config.environment_cfi')
0048 
0049 #-------------------------------------
0050 #   Central DQM Customization
0051 #-------------------------------------
0052 
0053 if not useFileInput:
0054     # stream label
0055     if process.runType.getRunType() == process.runType.hi_run:
0056         process.source.streamLabel = "streamHIDQMGPUvsCPU"
0057     else:
0058         process.source.streamLabel = "streamDQMGPUvsCPU"
0059 
0060 process.dqmEnv.subSystemFolder = subsystem
0061 process.dqmSaver.tag = 'HcalGPU'
0062 process.dqmSaver.runNumber = options.runNumber
0063 # process.dqmSaverPB.tag = 'HcalGPU'
0064 # process.dqmSaverPB.runNumber = options.runNumber
0065 process = customise(process)
0066 process.DQMStore.verbose = 0
0067 if not unitTest and not useFileInput :
0068   if not options.BeamSplashRun :
0069     process.source.minEventsPerLumi = 100
0070 
0071 #-------------------------------------
0072 #   CMSSW/Hcal non-DQM Related Module import
0073 #-------------------------------------
0074 process.load("Configuration.StandardSequences.GeometryRecoDB_cff")
0075 process.load('FWCore.MessageLogger.MessageLogger_cfi')
0076 process.load("EventFilter.HcalRawToDigi.HcalRawToDigi_cfi")
0077 process.load('EventFilter.CastorRawToDigi.CastorRawToDigi_cff')
0078 process.load("SimCalorimetry.HcalTrigPrimProducers.hcaltpdigi_cff")
0079 
0080 #-------------------------------------
0081 #   CMSSW/Hcal non-DQM Related Module Settings
0082 #   -> runType
0083 #   -> Generic Input tag for the Raw Collection
0084 #   -> cmssw version
0085 #   -> Turn off default blocking of dead channels from rechit collection
0086 #   -> Drop Channel Status Bits (had benn 'HcalCellOff', "HcalCellDead")
0087 #   -> For Trigger Primitives Emulation
0088 #   -> L1 GT setting
0089 #   -> Rename the hbheprereco to hbhereco
0090 #-------------------------------------
0091 runType         = process.runType.getRunType()
0092 runTypeName     = process.runType.getRunTypeName()
0093 isCosmicRun     = runTypeName=="cosmic_run" or runTypeName=="cosmic_run_stage1"
0094 isHeavyIon      = runTypeName=="hi_run"
0095 cmssw           = os.getenv("CMSSW_VERSION").split("_")
0096 
0097 
0098 #-------------------------------------
0099 #   Hcal DQM Tasks and Harvesters import
0100 #   New Style
0101 #-------------------------------------
0102 process.load('DQM.HcalTasks.hcalGPUComparisonTask_cfi')
0103 process.load('DQM.HcalTasks.HcalOnlineHarvesting_cfi')
0104 process.load('DQM.HcalTasks.HcalQualityTests_cfi')
0105 
0106 #-------------------------------------
0107 #   Some Settings before Finishing up
0108 #   New Style Modules
0109 #-------------------------------------
0110 oldsubsystem = subsystem
0111 process.hcalGPUComparisonTask.tagHBHE_ref = "hltHbherecoSerialSync"
0112 process.hcalGPUComparisonTask.tagHBHE_target = "hltHbhereco"
0113 process.hcalGPUComparisonTask.runkeyVal = runType
0114 process.hcalGPUComparisonTask.runkeyName = runTypeName
0115 
0116 #-------------------------------------
0117 #   Hcal DQM Tasks/Clients Sequences Definition
0118 #-------------------------------------
0119 process.tasksPath = cms.Path(
0120         process.hcalGPUComparisonTask
0121 )
0122 
0123 #-------------------------------------
0124 #   Paths/Sequences Definitions
0125 #-------------------------------------
0126 
0127 process.dqmPath = cms.EndPath(
0128         process.dqmEnv)
0129 process.dqmPath1 = cms.EndPath(
0130         process.dqmSaver
0131         #*process.dqmSaverPB
0132 )
0133 
0134 process.schedule = cms.Schedule(
0135     process.tasksPath,
0136     process.dqmPath,
0137     process.dqmPath1
0138 )
0139 
0140 #-------------------------------------
0141 #   Scheduling and Process Customizations
0142 #-------------------------------------
0143 process.options = cms.untracked.PSet(
0144         Rethrow = cms.untracked.vstring(
0145             "ProductNotFound",
0146             "TooManyProducts",
0147             "TooFewProducts"
0148         )
0149 )
0150 process.options.wantSummary = True
0151 
0152 # tracer
0153 #process.Tracer = cms.Service("Tracer")
0154 print("Final Source settings:", process.source)
0155 process = customise(process)