diff --git a/DQM/Integration/python/clients/pixel_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/pixel_dqm_sourceclient-live_cfg.py index 81f44687a1e1a..089542ae2acb1 100644 --- a/DQM/Integration/python/clients/pixel_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/pixel_dqm_sourceclient-live_cfg.py @@ -1,41 +1,50 @@ import FWCore.ParameterSet.Config as cms -# TODO: add era switch here for Phase1 +from Configuration.StandardSequences.Eras import eras + +process = cms.Process("PIXELDQMLIVE", eras.Run2_2017) + +live=True #set to false for lxplus offline testing +offlineTesting=not live + +TAG ="PixelPhase1" + process = cms.Process("PIXELDQMLIVE") process.MessageLogger = cms.Service("MessageLogger", - debugModules = cms.untracked.vstring('siPixelDigis', - #'siPixelClusters', + debugModules = cms.untracked.vstring('siPixelDigis', + 'siStripClusters', 'SiPixelRawDataErrorSource', - 'SiPixelDigiSource', - 'sipixelEDAClient'), + 'SiPixelDigiSource'), cout = cms.untracked.PSet(threshold = cms.untracked.string('ERROR')), destinations = cms.untracked.vstring('cout') ) -QTestfile = 'DQM/SiPixelMonitorClient/test/sipixel_qualitytest_config.xml' #---------------------------- # Event Source #----------------------------- # for live online DQM in P5 -process.load("DQM.Integration.config.inputsource_cfi") -# for testing in lxplus -#process.load("DQM.Integration.config.fileinputsource_cfi") +if (live): + process.load("DQM.Integration.config.inputsource_cfi") -TAG ="PixelPhase1" +# for testing in lxplus +elif(offlineTesting): + process.load("DQM.Integration.config.fileinputsource_cfi") -## -#---------------------------- +#----------------------------- # DQM Environment #----------------------------- + process.load("DQMServices.Components.DQMEnvironment_cfi") +process.load("DQM.Integration.config.environment_cfi") + #---------------------------- # DQM Live Environment #----------------------------- -process.load("DQM.Integration.config.environment_cfi") -process.dqmEnv.subSystemFolder = TAG + +process.dqmEnv.subSystemFolder = TAG process.dqmSaver.tag = TAG process.DQMStore.referenceFileName = '/dqmdata/dqm/reference/pixel_reference_pp.root' @@ -44,94 +53,63 @@ if (process.runType.getRunType() == process.runType.cosmic_run): process.DQMStore.referenceFileName = '/dqmdata/dqm/reference/pixel_reference_cosmic.root' - process.source.SelectEvents = cms.untracked.vstring('HLT*SingleMu*') #----------------------------- # Magnetic Field #----------------------------- -# 3.8T field + process.load('Configuration.StandardSequences.MagneticField_AutoFromDBCurrent_cff') #------------------------------------------------- # GEOMETRY #------------------------------------------------- + process.load("Configuration.StandardSequences.GeometryRecoDB_cff") #------------------------------------------------- # GLOBALTAG #------------------------------------------------- # Condition for P5 cluster -process.load("DQM.Integration.config.FrontierCondition_GT_cfi") + +if (live): + process.load("DQM.Integration.config.FrontierCondition_GT_cfi") + # Condition for lxplus: change and possibly customise the GT -#process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') -#from Configuration.AlCa.GlobalTag import GlobalTag -#process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:run2_data', '') +elif(offlineTesting): + process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') + from Configuration.AlCa.GlobalTag import GlobalTag as gtCustomise + process.GlobalTag = gtCustomise(process.GlobalTag, 'auto:run2_data', '') #----------------------- # Reconstruction Modules #----------------------- -# Real data raw to digi -process.load("EventFilter.SiPixelRawToDigi.SiPixelRawToDigi_cfi") -process.siPixelDigis.IncludeErrors = True - -# Local Reconstruction -process.load("RecoLocalTracker.SiPixelClusterizer.SiPixelClusterizer_cfi") -#---------------------------------- -# High Pileup Configuration Changes -#---------------------------------- -#if (process.runType.getRunType() == process.runType.hpu_run): -# process.DQMEventStreamHttpReader.SelectEvents = cms.untracked.PSet( -# SelectEvents = cms.vstring('HLT_600Tower*','HLT_L1*','HLT_Jet*','HLT_*Cosmic*','HLT_HT*','HLT_MinBias_*','HLT_Physics*', 'HLT_ZeroBias*','HLT_HcalNZS*')) +# Real data raw to digi +process.load("Configuration.StandardSequences.RawToDigi_Data_cff") +process.load("Configuration.StandardSequences.Reconstruction_cff") +process.siPixelDigis.IncludeErrors = True process.siPixelDigis.InputLabel = cms.InputTag("rawDataCollector") +process.siStripDigis.InputLabel = cms.InputTag("rawDataCollector") + #-------------------------------- # Heavy Ion Configuration Changes #-------------------------------- -if (process.runType.getRunType() == process.runType.hi_run): - QTestfile = 'DQM/SiPixelMonitorClient/test/sipixel_tier0_qualitytest_heavyions.xml' + +if (process.runType.getRunType() == process.runType.hi_run): process.load('Configuration.StandardSequences.ReconstructionHeavyIons_cff') process.load('Configuration.StandardSequences.RawToDigi_Repacked_cff') process.siPixelDigis.InputLabel = cms.InputTag("rawDataRepacker") -# process.DQMEventStreamHttpReader.SelectEvents = cms.untracked.PSet( -# SelectEvents = cms.vstring('HLT_HI*')) - -#-------------------------- -# Pixel DQM Source and Client -#-------------------------- -# Phase0 -#process.load("DQM.SiPixelCommon.SiPixelP5DQM_source_cff") -#process.load("DQM.SiPixelCommon.SiPixelP5DQM_client_cff") -#process.sipixelEDAClientP5.inputSource = cms.untracked.string("rawDataCollector") -#process.sipixelDaqInfo.daqSource = cms.untracked.string("rawDataCollector") -#process.SiPixelRawDataErrorSource.inputSource = cms.untracked.string("rawDataCollector") -#if (process.runType.getRunType() == process.runType.hi_run): -# process.sipixelEDAClientP5.inputSource = cms.untracked.string("rawDataRepacker") -# process.sipixelDaqInfo.daqSource = cms.untracked.string("rawDataRepacker") -# process.SiPixelRawDataErrorSource.inputSource = cms.untracked.string("rawDataRepacker") - -#process.SiPixelDigiSource.layOn = True -#process.SiPixelDigiSource.diskOn = True - -# Phase1 +# Phase1 DQM process.load("DQM.SiPixelPhase1Config.SiPixelPhase1OnlineDQM_cff") process.PerModule.enabled=True -process.PerReadout.enabled=False +process.PerReadout.enabled=True process.OverlayCurvesForTiming.enabled=False -process.qTester = cms.EDAnalyzer("QualityTester", - qtList = cms.untracked.FileInPath(QTestfile), - prescaleFactor = cms.untracked.int32(1), - getQualityTestsFromFile = cms.untracked.bool(True), - verboseQT = cms.untracked.bool(False), - qtestOnEndLumi = cms.untracked.bool(True), - qtestOnEndRun = cms.untracked.bool(True) -) - #-------------------------- # Service #-------------------------- @@ -140,31 +118,35 @@ #-------------------------- # Filters #-------------------------- + # HLT Filter # 0=random, 1=physics, 2=calibration, 3=technical process.hltTriggerTypeFilter = cms.EDFilter("HLTTriggerTypeFilter", SelectedTriggerType = cms.int32(1) ) +process.load('HLTrigger.HLTfilters.hltHighLevel_cfi') +process.hltHighLevel.HLTPaths = cms.vstring( 'HLT_ZeroBias_*' , 'HLT_ZeroBias1_*' , 'HLT_PAZeroBias_*' , 'HLT_PAZeroBias1_*', 'HLT_PAL1MinimumBiasHF_OR_SinglePixelTrack_*', 'HLT*SingleMu*') +process.hltHighLevel.andOr = cms.bool(True) +process.hltHighLevel.throw = cms.bool(False) + #-------------------------- # Scheduling #-------------------------- -process.DQMmodules = cms.Sequence(process.dqmEnv*process.qTester*process.dqmSaver) + +process.DQMmodules = cms.Sequence(process.dqmEnv*process.dqmSaver) if (process.runType.getRunType() == process.runType.hi_run): - process.Reco = cms.Sequence(process.siPixelDigis*process.pixeltrackerlocalreco) process.SiPixelClusterSource.src = cms.InputTag("siPixelClustersPreSplitting") + process.Reco = cms.Sequence(process.siPixelDigis*process.pixeltrackerlocalreco) else: - process.Reco = cms.Sequence(process.siPixelDigis*process.siPixelClusters) + process.Reco = cms.Sequence(process.siPixelDigis*process.siStripDigis*process.trackerlocalreco) process.p = cms.Path( - process.Reco + process.hltHighLevel #trigger selection + *process.Reco *process.DQMmodules -# *process.SiPixelRawDataErrorSource -# *process.SiPixelDigiSource -# *process.SiPixelClusterSource -# *process.PixelP5DQMClientWithDataCertification *process.siPixelPhase1OnlineDQM_source *process.siPixelPhase1OnlineDQM_harvesting ) diff --git a/DQM/Integration/python/clients/pixeltracking_timing_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/pixeltracking_timing_dqm_sourceclient-live_cfg.py index 2ad3fcd4681bb..3e0494a574f17 100644 --- a/DQM/Integration/python/clients/pixeltracking_timing_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/pixeltracking_timing_dqm_sourceclient-live_cfg.py @@ -1,17 +1,16 @@ import FWCore.ParameterSet.Config as cms -process = cms.Process("PixelTrackTimingDQMLive") +from Configuration.StandardSequences.Eras import eras +process = cms.Process("PixelTrackTimingDQMLive", eras.Run2_2017) -live=True -# uncomment for running on lxplus -#live=False +live=True # set to False for Offline testing offlineTesting=not live -#print "live: "+str(live)+" ==> offlineTesting: "+str(offlineTesting) #---------------------------- # Event Source #----------------------------- + # for live online DQM in P5 if (live): process.load("DQM.Integration.config.inputsource_cfi") @@ -19,11 +18,11 @@ elif(offlineTesting): process.load("DQM.Integration.config.fileinputsource_cfi") +#print process.runType -print process.runType +process.load("DQMServices.Components.DQMEnvironment_cfi") process.load("DQM.Integration.config.environment_cfi") -#process.DQM.filter = '^(TrackTimingPixelPhase1|SiStrip|Tracking)(/[^/]+){0,5}$' process.dqmEnv.subSystemFolder = "TrackTimingPixelPhase1" process.dqmSaver.tag = "TrackTimingPixelPhase1" @@ -35,31 +34,30 @@ eventInfoFolder = cms.untracked.string('EventInfo') ) - #----------------------------- # Magnetic Field #----------------------------- + process.load('Configuration.StandardSequences.MagneticField_AutoFromDBCurrent_cff') #------------------------------------------------- # GEOMETRY #------------------------------------------------- + process.load("Configuration.StandardSequences.GeometryRecoDB_cff") #-------------------------- # Calibration #-------------------------- # Condition for P5 cluster + if (live): process.load("DQM.Integration.config.FrontierCondition_GT_cfi") # Condition for lxplus: change and possibly customise the GT elif(offlineTesting): + process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff') from Configuration.AlCa.GlobalTag import GlobalTag as gtCustomise process.GlobalTag = gtCustomise(process.GlobalTag, 'auto:run2_data', '') - -#-------------------------------------------- - -#------------------------------------------- #----------------------- # Reconstruction Modules @@ -73,7 +71,6 @@ DefaultHistoReadout.topFolderName=cms.string( "TrackTimingPixelPhase1/FED/Readout") DefaultHistoTrack.topFolderName=cms.string( "TrackTimingPixelPhase1/Phase1_Track") - # PixelPhase1 Real data raw to digi process.load("EventFilter.SiPixelRawToDigi.SiPixelRawToDigi_cfi") process.siPixelDigis.IncludeErrors = True @@ -86,7 +83,6 @@ ## Collision Reconstruction process.load("Configuration.StandardSequences.RawToDigi_Data_cff") -#process.siStripDigis.UnpackBadChannels = cms.bool(True) ## Cosmic Track Reconstruction if (process.runType.getRunType() == process.runType.cosmic_run or process.runType.getRunType() == process.runType.cosmic_run_stage1): @@ -95,7 +91,6 @@ else: process.load("Configuration.StandardSequences.Reconstruction_cff") - import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone() @@ -104,15 +99,10 @@ #-------------------------- process.AdaptorConfig = cms.Service("AdaptorConfig") -# Simple filter for event -process.eventFilter = cms.EDFilter("SimpleEventFilter", -# EventsToSkip = cms.untracked.int32(3) - EventsToSkip = cms.untracked.int32(100) -) - #-------------------------- # Producers #-------------------------- + # Event History Producer process.load("DPGAnalysis.SiStripTools.eventwithhistoryproducerfroml1abc_cfi") @@ -122,6 +112,7 @@ #-------------------------- # Filters #-------------------------- + # HLT Filter # 0=random, 1=physics, 2=calibration, 3=technical process.hltTriggerTypeFilter = cms.EDFilter("HLTTriggerTypeFilter", @@ -135,9 +126,8 @@ process.hltLevel1GTSeed.L1SeedsLogicalExpression = cms.string('NOT (36 OR 37 OR 38 OR 39)') # HLT trigger selection (HLT_ZeroBias) -# modified for 0 Tesla HLT menu (no ZeroBias_*) process.load('HLTrigger.HLTfilters.hltHighLevel_cfi') -process.hltHighLevel.HLTPaths = cms.vstring( 'HLT_ZeroBias_*' , 'HLT_ZeroBias1_*' , 'HLT_PAZeroBias_*' , 'HLT_PAZeroBias1_*', 'HLT_PAL1MinimumBiasHF_OR_SinglePixelTrack_*') +process.hltHighLevel.HLTPaths = cms.vstring( 'HLT_ZeroBias_*' , 'HLT_ZeroBias1_*' , 'HLT_PAZeroBias_*' , 'HLT_PAZeroBias1_*', 'HLT_PAL1MinimumBiasHF_OR_SinglePixelTrack_*','HLT*SingleMu*') process.hltHighLevel.andOr = cms.bool(True) process.hltHighLevel.throw = cms.bool(False) @@ -146,7 +136,7 @@ #-------------------------- process.DQMCommon = cms.Sequence(process.dqmEnv*process.dqmEnvTr*process.dqmSaver) -process.RecoForDQM_LocalReco = cms.Sequence(process.siPixelDigis*process.siStripDigis*process.gtDigis*process.trackerlocalreco*process.gtEvmDigis) +process.RecoForDQM_LocalReco = cms.Sequence(process.siPixelDigis*process.siStripDigis*process.gtDigis*process.trackerlocalreco)#*process.gtEvmDigis) #-------------------------- # Global Plot Switches @@ -154,24 +144,19 @@ ### COSMIC RUN SETTING if (process.runType.getRunType() == process.runType.cosmic_run or process.runType.getRunType() == process.runType.cosmic_run_stage1): - # event selection for cosmic data - if (process.runType.getRunType() == process.runType.cosmic_run): process.source.SelectEvents = cms.untracked.vstring('HLT*SingleMu*','HLT_L1*') # Reference run for cosmic process.DQMStore.referenceFileName = '/dqmdata/dqm/reference/sistrip_reference_cosmic.root' - - + # Reco for cosmic data process.load('RecoTracker.SpecialSeedGenerators.SimpleCosmicBONSeeder_cfi') - process.simpleCosmicBONSeeds.ClusterCheckPSet.MaxNumberOfCosmicClusters = 1000 - process.combinatorialcosmicseedfinderP5.MaxNumberOfCosmicClusters = 1000 - - process.ctfWithMaterialTracksCosmics.TTRHBuilder = 'WithTrackAngle' - process.ctfWithMaterialTracksP5LHCNavigation.TTRHBuilder = 'WithTrackAngle' + process.simpleCosmicBONSeeds.ClusterCheckPSet.MaxNumberOfCosmicClusters = 450 + process.combinatorialcosmicseedfinderP5.MaxNumberOfCosmicClusters = 450 process.RecoForDQM_TrkReco_cosmic = cms.Sequence(process.offlineBeamSpot*process.MeasurementTrackerEvent*process.tracksP5) - process.p = cms.Path( + ##### TRIGGER SELECTION ##### + process.hltHighLevel* process.scalersRawToDigi* process.APVPhases* process.consecutiveHEs* @@ -182,26 +167,13 @@ process.siPixelPhase1OnlineDQM_source_cosmics* process.siPixelPhase1OnlineDQM_harvesting ) - -#else : ### pp COLLISION SETTING + if (process.runType.getRunType() == process.runType.pp_run or process.runType.getRunType() == process.runType.pp_run_stage1): - #event selection for pp collisions - if (process.runType.getRunType() == process.runType.pp_run): - process.source.SelectEvents = cms.untracked.vstring( - 'HLT_L1*', - 'HLT_Jet*', - 'HLT_Physics*', - 'HLT_ZeroBias*', - 'HLT_PAL1*', - 'HLT_PAZeroBias*', - 'HLT_PAAK*' - ) process.DQMStore.referenceFileName = '/dqmdata/dqm/reference/sistrip_reference_pp.root' # Source and Client config for pp collisions - # Reco for pp collisions process.load('RecoTracker.IterativeTracking.InitialStepPreSplitting_cff') @@ -228,6 +200,8 @@ process.Reco = cms.Sequence(process.siPixelDigis*process.siPixelClusters) process.p = cms.Path( + ##### TRIGGER SELECTION ##### + process.hltHighLevel* process.scalersRawToDigi* process.APVPhases* process.consecutiveHEs* @@ -235,8 +209,6 @@ process.RecoForDQM_LocalReco* process.siPixelClusters* process.DQMCommon* - ##### TRIGGER SELECTION ##### - process.hltHighLevel* process.RecoForDQM_TrkReco* process.siPixelPhase1OnlineDQM_source_pprun* process.siPixelPhase1OnlineDQM_harvesting @@ -245,4 +217,4 @@ ### process customizations included here from DQM.Integration.config.online_customizations_cfi import * process = customise(process) -#print process.dumpPython() +