Skip to content

Commit

Permalink
Merge pull request #14929 from EsmaeelEskandari/l1t-dqm-CMSSW_8_0_10_…
Browse files Browse the repository at this point in the history
…patch2_ugmt-esmaeel

L1t dqm cmssw 8 0 10 patch2 ugmt esmaeel
  • Loading branch information
davidlange6 committed Jul 26, 2016
2 parents c34629c + 140f3fb commit 6dbdfc2
Show file tree
Hide file tree
Showing 45 changed files with 3,504 additions and 1,597 deletions.
121 changes: 41 additions & 80 deletions DQM/Integration/python/clients/l1tstage2_dqm_sourceclient-live_cfg.py
@@ -1,6 +1,7 @@
import FWCore.ParameterSet.Config as cms

process = cms.Process("DQM")
from Configuration.StandardSequences.Eras import eras
process = cms.Process("L1TStage2DQM", eras.Run2_2016)

#--------------------------------------------------
# Event Source and Condition
Expand All @@ -25,10 +26,7 @@
process.dqmSaver.tag = "L1T2016"
process.DQMStore.referenceFileName = "/dqmdata/dqm/reference/l1t_reference.root"

process.dqmEndPath = cms.EndPath(
process.dqmEnv *
process.dqmSaver
)
process.dqmEndPath = cms.EndPath(process.dqmEnv * process.dqmSaver)

#--------------------------------------------------
# Standard Unpacking Path
Expand All @@ -37,100 +35,63 @@

process.rawToDigiPath = cms.Path(process.RawToDigi)

# For GCT, unpack all five samples.
process.gctDigis.numberOfGctSamplesToUnpack = cms.uint32(5)

process.gtDigis.DaqGtFedId = cms.untracked.int32(813)

#--------------------------------------------------
# Legacy DQM Paths

process.load("DQM.L1TMonitor.L1TMonitor_cff")
process.l1tMonitorEndPath = cms.EndPath(process.l1tMonitorEndPathSeq)

#--------------------------------------------------
# Stage2 DQM Paths
# Stage2 Unpacker and DQM Path

# Filter fat events
from HLTrigger.HLTfilters.hltHighLevel_cfi import hltHighLevel
process.hltFatEventFilter = hltHighLevel.clone()
process.hltFatEventFilter.throw = cms.bool(False)
process.hltFatEventFilter.HLTPaths = cms.vstring('HLT_L1FatEvents_v*')

# This can be used if HLT filter not available in a run
process.selfFatEventFilter = cms.EDFilter("HLTL1NumberFilter",
invert = cms.bool(False),
period = cms.uint32(107),
rawInput = cms.InputTag("rawDataCollector"),
fedId = cms.int32(1024)
)

process.load("DQM.L1TMonitor.L1TStage2_cff")
process.l1tMonitorPath = cms.Path(process.l1tStage2online)

# Remove Subsystem Modules
#process.l1tStage2online.remove(process.l1tLayer1)
process.l1tMonitorPath = cms.Path(
process.hltFatEventFilter +
# process.selfFatEventFilter +
process.l1tStage2Unpack +
process.l1tStage2OnlineDQM
)

# Remove DQM Modules
#process.l1tStage2online.remove(process.l1tStage2CaloLayer1)
#process.l1tStage2online.remove(process.l1tStage2CaloLayer2)
#process.l1tStage2online.remove(process.l1tStage2uGMT)
#process.l1tStage2online.remove(process.l1tStage2uGt)
#process.l1tStage2online.remove(process.l1tStage2Bmtf)
#process.l1tStage2online.remove(process.l1tStage2Emtf)
#process.l1tStage2online.remove(process.l1tStage2uGMT)
#process.l1tStage2online.remove(process.l1tStage2uGt)

#--------------------------------------------------
# Stage2 Unpacking Path

process.stage2UnpackPath = cms.Path(
process.l1tCaloLayer1Digis +
process.caloStage2Digis +
process.gmtStage2Digis +
process.gtStage2Digis +
process.BMTFStage2Digis +
process.emtfStage2Digis
)
# Stage2 Quality Tests
process.load("DQM.L1TMonitorClient.L1TStage2MonitorClient_cff")
process.l1tStage2MonitorClientPath = cms.Path(process.l1tStage2MonitorClient)

#--------------------------------------------------
# Legacy DQM EndPath
# TODO: Is lumi scalers still relevant?

process.load("DQM.L1TMonitor.L1TMonitor_cff")
process.l1tMonitorEndPath = cms.EndPath(process.l1tMonitorEndPathSeq)

#--------------------------------------------------
# L1 Trigger DQM Schedule
# L1T Online DQM Schedule

process.schedule = cms.Schedule(
process.rawToDigiPath,
process.stage2UnpackPath,
process.l1tMonitorPath,
#process.l1tMonitorClientPath,
process.l1tStage2MonitorClientPath,
process.l1tMonitorEndPath,
#process.l1tMonitorClientEndPath,
process.dqmEndPath
)

#--------------------------------------------------
# Heavy Ion Specific Fed Raw Data Collection Label
#--------------------------------------------------

print "Running with run type = ", process.runType.getRunType()
process.castorDigis.InputLabel = cms.InputTag("rawDataCollector")
process.csctfDigis.producer = cms.InputTag("rawDataCollector")
process.dttfDigis.DTTF_FED_Source = cms.InputTag("rawDataCollector")
process.ecalDigis.InputLabel = cms.InputTag("rawDataCollector")
process.ecalPreshowerDigis.sourceTag = cms.InputTag("rawDataCollector")
process.gctDigis.inputLabel = cms.InputTag("rawDataCollector")
process.gtDigis.DaqGtInputTag = cms.InputTag("rawDataCollector")
process.gtEvmDigis.EvmGtInputTag = cms.InputTag("rawDataCollector")
process.hcalDigis.InputLabel = cms.InputTag("rawDataCollector")
process.muonCSCDigis.InputObjects = cms.InputTag("rawDataCollector")
process.muonDTDigis.inputLabel = cms.InputTag("rawDataCollector")
process.muonRPCDigis.InputLabel = cms.InputTag("rawDataCollector")
process.scalersRawToDigi.scalersInputTag = cms.InputTag("rawDataCollector")
process.siPixelDigis.InputLabel = cms.InputTag("rawDataCollector")
process.siStripDigis.ProductLabel = cms.InputTag("rawDataCollector")
process.bxTiming.FedSource = cms.untracked.InputTag("rawDataCollector")
process.l1s.fedRawData = cms.InputTag("rawDataCollector")
process.gtStage2Digis.InputLabel = cms.InputTag("rawDataCollector")

if (process.runType.getRunType() == process.runType.hi_run):
process.castorDigis.InputLabel = cms.InputTag("rawDataRepacker")
process.csctfDigis.producer = cms.InputTag("rawDataRepacker")
process.dttfDigis.DTTF_FED_Source = cms.InputTag("rawDataRepacker")
process.ecalDigis.InputLabel = cms.InputTag("rawDataRepacker")
process.ecalPreshowerDigis.sourceTag = cms.InputTag("rawDataRepacker")
process.gctDigis.inputLabel = cms.InputTag("rawDataRepacker")
process.gtDigis.DaqGtInputTag = cms.InputTag("rawDataRepacker")
process.gtEvmDigis.EvmGtInputTag = cms.InputTag("rawDataRepacker")
process.hcalDigis.InputLabel = cms.InputTag("rawDataRepacker")
process.muonCSCDigis.InputObjects = cms.InputTag("rawDataRepacker")
process.muonDTDigis.inputLabel = cms.InputTag("rawDataRepacker")
process.muonRPCDigis.InputLabel = cms.InputTag("rawDataRepacker")
process.scalersRawToDigi.scalersInputTag = cms.InputTag("rawDataRepacker")
process.siPixelDigis.InputLabel = cms.InputTag("rawDataRepacker")
process.siStripDigis.ProductLabel = cms.InputTag("rawDataRepacker")
process.bxTiming.FedSource = cms.untracked.InputTag("rawDataRepacker")
process.l1s.fedRawData = cms.InputTag("rawDataRepacker")
process.gtStage2Digis.InputLabel = cms.InputTag("rawDataRepacker")

#--------------------------------------------------
# Process Customizations

Expand Down
@@ -0,0 +1,104 @@
import FWCore.ParameterSet.Config as cms

from Configuration.StandardSequences.Eras import eras
process = cms.Process("L1TStage2EmulatorDQM", eras.Run2_2016)

#--------------------------------------------------
# Event Source and Condition

# Live Online DQM in P5
process.load("DQM.Integration.config.inputsource_cfi")
process.load("DQM.Integration.config.FrontierCondition_GT_cfi")
# Due to the GT override in the above include, we have trouble with
# conflicting CaloParams from stage1 and stage2. This workaround
# can go away once either the es_prefer is removed from DQM or the
# new L1TCaloStage2ParamsRcd is integrated into CMSSW.
if 'es_prefer_GlobalTag' in process.__dict__:
process.__dict__.pop('es_prefer_GlobalTag')
process._Process__esprefers.pop('es_prefer_GlobalTag')

# Testing in lxplus
#process.load("DQM.Integration.config.fileinputsource_cfi")
#process.load("DQM.Integration.config.FrontierCondition_GT_Offline_cfi")

# Required to load EcalMappingRecord
process.load("Configuration.StandardSequences.GeometryRecoDB_cff")

#--------------------------------------------------
# DQM Environment

process.load("DQM.Integration.config.environment_cfi")

process.dqmEnv.subSystemFolder = "L1T2016EMU"
process.dqmSaver.tag = "L1T2016EMU"
process.DQMStore.referenceFileName = "/dqmdata/dqm/reference/l1temu_reference.root"

process.dqmEndPath = cms.EndPath(
process.dqmEnv *
process.dqmSaver
)

#--------------------------------------------------
# Standard Unpacking Path

process.load("Configuration.StandardSequences.RawToDigi_Data_cff")

process.rawToDigiPath = cms.Path(process.RawToDigi)

#--------------------------------------------------
# Stage2 DQM Paths

# Filter fat events
from HLTrigger.HLTfilters.hltHighLevel_cfi import hltHighLevel
process.hltFatEventFilter = hltHighLevel.clone()
process.hltFatEventFilter.throw = cms.bool(False)
process.hltFatEventFilter.HLTPaths = cms.vstring('HLT_L1FatEvents_v*')

# This can be used if HLT filter not available in a run
process.selfFatEventFilter = cms.EDFilter("HLTL1NumberFilter",
invert = cms.bool(False),
period = cms.uint32(107),
rawInput = cms.InputTag("rawDataCollector"),
fedId = cms.int32(1024)
)

process.load("DQM.L1TMonitor.L1TStage2Emulator_cff")

process.l1tEmulatorMonitorPath = cms.Path(
process.hltFatEventFilter +
# process.selfFatEventFilter +
process.l1tStage2Unpack +
process.Stage2L1HardwareValidation +
process.l1tStage2EmulatorOnlineDQM
)

# To get L1 conditions that are not in GlobalTag / O2O yet
process.load("L1Trigger.L1TCalorimeter.hackConditions_cff")
process.load("L1Trigger.L1TMuon.hackConditions_cff")
process.gmtParams.caloInputsMasked = cms.bool(True)
process.load("L1Trigger.L1TGlobal.hackConditions_cff")

# To get CaloTPGTranscoder
process.load('SimCalorimetry.HcalTrigPrimProducers.hcaltpdigi_cff')
process.HcalTPGCoderULUT.LUTGenerationMode = cms.bool(False)

#--------------------------------------------------
# TODO: Stage2 Emulator Quality Tests
process.load("DQM.L1TMonitorClient.L1TStage2EmulatorMonitorClient_cff")
process.l1tStage2EmulatorMonitorClientPath = cms.Path(process.l1tStage2EmulatorMonitorClient)

#--------------------------------------------------
# L1T Emulator Online DQM Schedule

process.schedule = cms.Schedule(
process.rawToDigiPath,
process.l1tEmulatorMonitorPath,
process.l1tStage2EmulatorMonitorClientPath,
process.dqmEndPath
)

#--------------------------------------------------
# Process Customizations

from DQM.Integration.config.online_customizations_cfi import *
process = customise(process)
1 change: 1 addition & 0 deletions DQM/L1TMonitor/BuildFile.xml
Expand Up @@ -5,6 +5,7 @@
<use name="DQMServices/Components"/>
<use name="DQMServices/ClientConfig"/>
<use name="DataFormats/L1Trigger"/>
<use name="DataFormats/L1TCalorimeter"/>
<use name="DataFormats/L1TGlobal"/>
<use name="DataFormats/LTCDigi"/>
<use name="DataFormats/CSCDigi"/>
Expand Down
125 changes: 0 additions & 125 deletions DQM/L1TMonitor/interface/L1TLayer1.h

This file was deleted.

0 comments on commit 6dbdfc2

Please sign in to comment.