From b0f02c24547c92336edbb86362ee9d965bbde9eb Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Tue, 13 Oct 2015 12:26:08 +0200 Subject: [PATCH 01/46] L1T DQM new changes --- .../clients/l1t_dqm_sourceclient-live_cfg.py | 31 ++++----- .../l1temulator_dqm_sourceclient-live_cfg.py | 23 ++++--- .../l1tstage1_dqm_sourceclient-live_cfg.py | 67 +++++-------------- ...tage1emulator_dqm_sourceclient-live_cfg.py | 42 +++++++----- DQM/L1TMonitor/interface/BxTiming.h | 5 +- DQM/L1TMonitor/interface/L1GtHwValidation.h | 4 -- DQM/L1TMonitor/interface/L1TCSCTF.h | 4 -- DQM/L1TMonitor/interface/L1TDTTF.h | 3 +- DQM/L1TMonitor/interface/L1TDTTPG.h | 3 - DQM/L1TMonitor/interface/L1TGCT.h | 2 - DQM/L1TMonitor/interface/L1TGT.h | 3 - DQM/L1TMonitor/interface/L1TRPCTF.h | 2 - DQM/L1TMonitor/interface/L1TRPCTPG.h | 4 +- .../python/L1TEmulatorMonitor_cff.py | 1 + DQM/L1TMonitor/python/L1TMonitor_cff.py | 10 +++ DQM/L1TMonitor/python/L1TStage1Layer2_cfi.py | 2 +- DQM/L1TMonitor/src/BxTiming.cc | 6 +- DQM/L1TMonitor/src/L1GtHwValidation.cc | 2 +- DQM/L1TMonitor/src/L1TDTTF.cc | 2 - DQM/L1TMonitor/src/L1TDTTPG.cc | 7 +- DQM/L1TMonitor/src/L1TGCT.cc | 9 +-- DQM/L1TMonitor/src/L1TGT.cc | 9 +-- DQM/L1TMonitor/src/L1TRPCTPG.cc | 4 -- .../data/L1EmulatorObjCenJetQualityTests.xml | 2 +- .../data/L1EmulatorObjETMQualityTests.xml | 2 +- .../data/L1EmulatorObjETTQualityTests.xml | 2 +- .../data/L1EmulatorObjForJetQualityTests.xml | 2 +- .../data/L1EmulatorObjHTMQualityTests.xml | 2 +- .../data/L1EmulatorObjHTTQualityTests.xml | 2 +- .../L1EmulatorObjHfBitCountsQualityTests.xml | 2 +- .../L1EmulatorObjHfRingEtSumsQualityTests.xml | 2 +- .../data/L1EmulatorObjIsoEGQualityTests.xml | 2 +- .../L1EmulatorObjIsoTauJetQualityTests.xml | 22 ++++++ .../data/L1EmulatorObjNoIsoEGQualityTests.xml | 2 +- .../data/L1EmulatorObjTauJetQualityTests.xml | 2 +- .../data/L1TriggerGctQualityTests.xml | 8 +-- .../data/L1TriggerRctQualityTests.xml | 6 +- .../python/L1EmulatorErrorFlagClient_cfi.py | 6 +- .../L1EmulatorObjIsoTauJetQualityTests_cfi.py | 15 +++++ .../python/L1EmulatorQualityTests_cff.py | 5 ++ .../python/L1TEMUEventInfoClient_cff.py | 33 +++++---- .../python/L1TEventInfoClient_cfi.py | 34 +++++----- .../python/L1TriggerDqmOffline_cff.py | 14 ++-- .../Configuration/python/ValL1Emulator_cff.py | 16 +++-- .../python/L1ComparatorforStage1_cfi.py | 4 +- 45 files changed, 213 insertions(+), 217 deletions(-) create mode 100644 DQM/L1TMonitorClient/data/L1EmulatorObjIsoTauJetQualityTests.xml create mode 100644 DQM/L1TMonitorClient/python/L1EmulatorObjIsoTauJetQualityTests_cfi.py diff --git a/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py index b143eafe50111..32dc503f52880 100644 --- a/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py @@ -74,10 +74,10 @@ # for GCT, unpack all five samples process.gctDigis.numberOfGctSamplesToUnpack = cms.uint32(5) -if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): - process.gtDigis.DaqGtFedId = cms.untracked.int32(809) -else: - process.gtDigis.DaqGtFedId = cms.untracked.int32(813) +#if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): +process.gtDigis.DaqGtFedId = cms.untracked.int32(809) +#else: +# process.gtDigis.DaqGtFedId = cms.untracked.int32(813) # process.l1tMonitorPath = cms.Path(process.l1tMonitorOnline) @@ -103,9 +103,9 @@ process.schedule = cms.Schedule(process.rawToDigiPath, process.l1tMonitorPath, process.l1tSyncPath, - process.l1tMonitorClientPath, - process.l1tMonitorEndPath, - process.l1tMonitorClientEndPath, + #process.l1tMonitorClientPath, + #process.l1tMonitorEndPath, + #process.l1tMonitorClientEndPath, process.dqmEndPath ) @@ -125,20 +125,21 @@ # remove module(s) or system sequence from l1tMonitorPath # quality test disabled also # -#process.l1tMonitorOnline.remove(process.bxTiming) +process.l1tMonitorOnline.remove(process.bxTiming) process.l1tMonitorOnline.remove(process.l1tBPTX) #process.l1tMonitorOnline.remove(process.l1tLtc) -#process.l1tMonitorOnline.remove(process.l1Dttf) +process.l1tMonitorOnline.remove(process.l1tDttf) -#process.l1tMonitorOnline.remove(process.l1tCsctf) +process.l1tMonitorOnline.remove(process.l1tCsctf) -#process.l1tMonitorOnline.remove(process.l1tRpctf) +process.l1tMonitorOnline.remove(process.l1tRpctf) -#process.l1tMonitorOnline.remove(process.l1tGmt) +process.l1tMonitorOnline.remove(process.l1tGmt) -#process.l1tMonitorOnline.remove(process.l1tGt) +process.l1tMonitorOnline.remove(process.l1tGt) +process.l1tGt.HistFolder = cms.untracked.string("L1T/L1TGTTestCrate") #process.l1tMonitorOnline.remove(process.l1ExtraDqmSeq) @@ -151,8 +152,8 @@ # remove module(s) or system sequence from l1tMonitorEndPath # -#process.l1tMonitorEndPathSeq.remove(process.l1s) -#process.l1tMonitorEndPathSeq.remove(process.l1tscalers) +process.l1tMonitorEndPathSeq.remove(process.l1s) +process.l1tMonitorEndPathSeq.remove(process.l1tscalers) # process.schedule.remove(process.l1tSyncPath) diff --git a/DQM/Integration/python/clients/l1temulator_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1temulator_dqm_sourceclient-live_cfg.py index 49fc47432ab75..5fa6d45723211 100644 --- a/DQM/Integration/python/clients/l1temulator_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1temulator_dqm_sourceclient-live_cfg.py @@ -67,10 +67,10 @@ process.RawToDigi.remove("scalersRawToDigi") process.RawToDigi.remove("castorDigis") -if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): - process.gtDigis.DaqGtFedId = cms.untracked.int32(809) -else: - process.gtDigis.DaqGtFedId = cms.untracked.int32(813) +#if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): +process.gtDigis.DaqGtFedId = cms.untracked.int32(809) +#else: +# process.gtDigis.DaqGtFedId = cms.untracked.int32(813) # L1HvVal + emulator monitoring path process.l1HwValEmulatorMonitorPath = cms.Path(process.l1HwValEmulatorMonitor) @@ -96,7 +96,7 @@ # process.schedule = cms.Schedule(process.rawToDigiPath, process.l1HwValEmulatorMonitorPath, - process.l1EmulatorMonitorClientPath, + #process.l1EmulatorMonitorClientPath, process.l1EmulatorMonitorEndPath) #--------------------------------------------- @@ -107,18 +107,25 @@ # remove a module from hardware validation # cff file: L1Trigger.HardwareValidation.L1HardwareValidation_cff # -# process.L1HardwareValidation.remove(process.deCsctf) +process.l1HwValEmulatorMonitorPath.remove(process.l1TdeCSCTF) # process.L1HardwareValidation.remove(process.deDt) -process.L1HardwareValidation.remove(process.l1TdeRCTRun1) +process.l1HwValEmulatorMonitorPath.remove(process.l1TdeRCTRun1) # # remove a L1 trigger system from the comparator integrated in hardware validation # cfi file: L1Trigger.HardwareValidation.L1Comparator_cfi # # process.l1compare.COMPARE_COLLS = [0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0] -# +process.l1compare.COMPARE_COLLS = [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0] + +process.l1demon.COMPARE_COLLS = [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0] + +process.l1demon.HistFolder = cms.untracked.string('L1TEMU/Legacy') + +process.l1TdeGCT.HistFolder = cms.untracked.string('L1TEMU/Legacy/GCTexpert') +process.l1GtHwValidation.DirName = cms.untracked.string("L1TEMU/Legacy/GTexpert") # # remove an expert module for L1 trigger system diff --git a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py index 08d177f9aeaec..b813504a34444 100644 --- a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py @@ -75,37 +75,22 @@ # for GCT, unpack all five samples process.gctDigis.numberOfGctSamplesToUnpack = cms.uint32(5) -if (process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): - process.gtDigis.DaqGtFedId = cms.untracked.int32(813) -else: - process.gtDigis.DaqGtFedId = cms.untracked.int32(809) +#if (process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): +process.gtDigis.DaqGtFedId = cms.untracked.int32(813) +#else: +# process.gtDigis.DaqGtFedId = cms.untracked.int32(809) # +process.l1tMonitorPath = cms.Path(process.l1tMonitorStage1Online) + # separate L1TSync path due to the use of the HltHighLevel filter process.l1tSyncPath = cms.Path(process.l1tSyncHltFilter+process.l1tSync) # -process.l1tMonitorPath = cms.Path(process.l1tMonitorStage1Online) +#process.l1tMonitorPath = cms.Path(process.l1tMonitorStage1Online) process.l1tMonitorClientPath = cms.Path(process.l1tMonitorStage1Client) -# Update HfRing thresholds to accomodate di-iso tau trigger thresholds -from L1TriggerConfig.L1ScalesProducers.l1CaloScales_cfi import l1CaloScales -l1CaloScales.L1HfRingThresholds = cms.vdouble(0.0, 24.0, 28.0, 32.0, 36.0, 40.0, 44.0, 48.0) -l1CaloScales.L1HtMissThresholds = cms.vdouble( - 0.00, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, - 0.10, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19, - 0.20, 0.21, 0.22, 0.23, 0.24, 0.25, 0.26, 0.27, 0.28, 0.29, - 0.30, 0.31, 0.32, 0.33, 0.34, 0.35, 0.36, 0.37, 0.38, 0.39, - 0.40, 0.41, 0.42, 0.43, 0.44, 0.45, 0.46, 0.47, 0.48, 0.49, - 0.50, 0.51, 0.52, 0.53, 0.54, 0.55, 0.56, 0.57, 0.58, 0.59, - 0.60, 0.61, 0.62, 0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.69, - 0.70, 0.71, 0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, - 0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, - 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, - 1.00, 1.01, 1.02, 1.03, 1.04, 1.05, 1.06, 1.07, 1.08, 1.09, - 1.10, 1.11, 1.12, 1.13, 1.14, 1.15, 1.16, 1.17, 1.18, 1.19, - 1.20, 1.21, 1.22, 1.23, 1.24, 1.25, 1.26, 1.27 - ) + # process.l1tMonitorEndPath = cms.EndPath(process.l1tMonitorEndPathSeq) @@ -145,26 +130,26 @@ # remove module(s) or system sequence from l1tMonitorPath # quality test disabled also # -process.l1tMonitorStage1Online.remove(process.bxTiming) -#process.l1tMonitorStage1Online.remove(process.l1tBPTX) +#process.l1tMonitorStage1Online.remove(process.bxTiming) +process.l1tMonitorStage1Online.remove(process.l1tBPTX) #process.l1tMonitorOnline.remove(process.l1tLtc) -process.l1tMonitorStage1Online.remove(process.l1tDttf) +#process.l1tMonitorStage1Online.remove(process.l1tDttf) -process.l1tMonitorStage1Online.remove(process.l1tCsctf) +#process.l1tMonitorStage1Online.remove(process.l1tCsctf) -process.l1tMonitorStage1Online.remove(process.l1tRpctf) +#process.l1tMonitorStage1Online.remove(process.l1tRpctf) -process.l1tMonitorStage1Online.remove(process.l1tGmt) +#process.l1tMonitorStage1Online.remove(process.l1tGmt) #process.l1tMonitorOnline.remove(process.l1tGt) -process.l1tGt.HistFolder = cms.untracked.string("L1TStage1/L1TStage1GT") #process.l1tMonitorOnline.remove(process.l1ExtraDqmSeq) -process.l1ExtraDQMStage1.DirName=cms.string("L1TStage1/L1ExtraStage1") -#process.l1tMonitorStage1Online.remove(process.l1tRate) +process.l1tMonitorStage1Online.remove(process.l1tRate) + +#process.l1tMonitorOnline.remove(process.l1tRctRun1) #process.l1tMonitorStage1Online.remove(process.l1tRctSeq) @@ -175,24 +160,6 @@ # #process.l1tMonitorEndPathSeq.remove(process.l1s) -process.l1tMonitorEndPathSeq.remove(process.l1tscalers) -process.l1s.dqmFolder = cms.untracked.string("L1TStage1/L1Stage1Scalers_SM") - -process.l1tMonitorStage1Client.remove(process.l1TriggerQualityTests) - -process.l1tStage1Layer2Client.monitorDir = cms.untracked.string('L1TStage1/stage1layer2') - -process.l1tsClient.dqmFolder = cms.untracked.string("L1TStage1/L1Stage1Scalers_SM") - -process.l1TriggerStage1Clients.remove(process.l1tEventInfoClient) -#process.l1TriggerStage1Clients.remove(process.l1tsClient) -process.l1TriggerStage1Clients.remove(process.l1tDttfClient) -process.l1TriggerStage1Clients.remove(process.l1tCsctfClient) -process.l1TriggerStage1Clients.remove(process.l1tRpctfClient) -process.l1TriggerStage1Clients.remove(process.l1tGmtClient) -process.l1TriggerStage1Clients.remove(process.l1tOccupancyClient) -process.l1TriggerStage1Clients.remove(process.l1tTestsSummary) -process.l1TriggerStage1Clients.remove(process.l1tEventInfoClient) # process.schedule.remove(process.l1tSyncPath) diff --git a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py index 63d182bdea4b2..a1cd2c2e9d8c3 100644 --- a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py @@ -52,7 +52,17 @@ # L1 data - emulator sequences process.load("DQM.L1TMonitor.L1TEmulatorMonitor_cff") process.load("DQM.L1TMonitorClient.L1TEMUMonitorClient_cff") -process.load("L1Trigger.L1TCalorimeter.caloStage1Params_cfi") +#process.load("L1Trigger.L1TCalorimeter.caloStage1Params_cfi") + +process.GlobalTag.toGet = cms.VPSet( + cms.PSet( + record = cms.string("L1TCaloParamsRcd"), + tag = cms.string("L1TCaloParams_CRAFT09_hlt"), + connect = cms.untracked.string("frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)(failovertoserver=no)/CMS_CONDITIONS") + ) +) + + #------------------------------------- # paths & schedule for L1 emulator DQM @@ -67,10 +77,10 @@ process.RawToDigi.remove("scalersRawToDigi") process.RawToDigi.remove("castorDigis") -if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): - process.gtDigis.DaqGtFedId = cms.untracked.int32(813) -else: - process.gtDigis.DaqGtFedId = cms.untracked.int32(809) +#if ( process.runType.getRunType() == process.runType.pp_run_stage1 or process.runType.getRunType() == process.runType.cosmic_run_stage1): +process.gtDigis.DaqGtFedId = cms.untracked.int32(813) +#else: +# process.gtDigis.DaqGtFedId = cms.untracked.int32(809) # L1HvVal + emulator monitoring path process.l1HwValEmulatorMonitorPath = cms.Path(process.l1Stage1HwValEmulatorMonitor) @@ -90,7 +100,7 @@ # process.schedule = cms.Schedule(process.rawToDigiPath, process.l1HwValEmulatorMonitorPath, - #process.l1EmulatorMonitorClientPath, + process.l1EmulatorMonitorClientPath, process.l1EmulatorMonitorEndPath) #--------------------------------------------- @@ -113,13 +123,13 @@ #process.l1compare.COMPARE_COLLS = [0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0] # -process.l1compareforstage1.COMPARE_COLLS = [ - 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 - ] +#process.l1compareforstage1.COMPARE_COLLS = [ +# 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 +# ] -process.l1demonstage1.COMPARE_COLLS = [ - 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 - ] +#process.l1demonstage1.COMPARE_COLLS = [ +# 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 +# ] #ETP,HTP,RCT,GCT, DTP,DTF,CTP,CTF,RPC,LTC,GMT,GT @@ -130,15 +140,15 @@ # process.l1ExpertDataVsEmulator.remove(process.l1GtHwValidation) # -process.l1ExpertDataVsEmulatorStage1.remove(process.l1TdeCSCTF) +#process.l1ExpertDataVsEmulatorStage1.remove(process.l1TdeCSCTF) #process.l1ExpertDataVsEmulatorStage1.remove(process.l1TdeRCT) -process.l1demonstage1.HistFolder = cms.untracked.string('L1TEMUStage1') +process.l1demonstage1.HistFolder = cms.untracked.string('L1TEMU') -process.l1TdeStage1Layer2.HistFolder = cms.untracked.string('L1TEMUStage1/Stage1Layer2expert') +process.l1TdeStage1Layer2.HistFolder = cms.untracked.string('L1TEMU/Stage1Layer2expert') -process.l1Stage1GtHwValidation.DirName = cms.untracked.string("L1TEMUStage1/GTexpert") +process.l1Stage1GtHwValidation.DirName = cms.untracked.string("L1TEMU/GTexpert") # # remove a module / sequence from l1EmulatorMonitorClient diff --git a/DQM/L1TMonitor/interface/BxTiming.h b/DQM/L1TMonitor/interface/BxTiming.h index afb34418bc45a..269883ec53f40 100644 --- a/DQM/L1TMonitor/interface/BxTiming.h +++ b/DQM/L1TMonitor/interface/BxTiming.h @@ -107,10 +107,7 @@ class BxTiming : public DQMEDAnalyzer { MonitorElement* hBxOccyGtTrigType[nttype_]; // gt bx occupancy per trigger type MonitorElement**hBxOccyTrigBit[NSYS]; // subsystem bx occupancy per selected trigger bit - MonitorElement* runId_; - MonitorElement* lumisecId_; - MonitorElement* eventId_; - MonitorElement* runStartTimeStamp_; + }; diff --git a/DQM/L1TMonitor/interface/L1GtHwValidation.h b/DQM/L1TMonitor/interface/L1GtHwValidation.h index 9698a93ba44c9..4e3bbb899e752 100644 --- a/DQM/L1TMonitor/interface/L1GtHwValidation.h +++ b/DQM/L1TMonitor/interface/L1GtHwValidation.h @@ -262,10 +262,6 @@ class L1GtHwValidation: public DQMEDAnalyzer { MonitorElement* m_fdlDataEmulTechDecisionMask[TotalBxInEvent][NumberOfGtRecords]; MonitorElement* m_fdlDataEmulTechDecision_Err[NumberOfGtRecords]; - - MonitorElement* runId_; - MonitorElement* lumisecId_; - MonitorElement* m_excludedAlgorithmsAgreement; /// PSB diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 6412e9fbc054a..ee51cada3fdd4 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,10 +83,6 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; - //MonitorElement* runId_; - //MonitorElement* lumisecId_; - - //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; //MonitorElement* haloDelEta113; diff --git a/DQM/L1TMonitor/interface/L1TDTTF.h b/DQM/L1TMonitor/interface/L1TDTTF.h index eedd7c536b9e1..82b004b889083 100755 --- a/DQM/L1TMonitor/interface/L1TDTTF.h +++ b/DQM/L1TMonitor/interface/L1TDTTF.h @@ -91,8 +91,7 @@ class L1TDTTF : public DQMEDAnalyzer { MonitorElement* dttf_gmt_match; MonitorElement* dttf_gmt_missed; MonitorElement* dttf_gmt_ghost; - MonitorElement* runId_; - MonitorElement* lumisecId_; + // MonitorElement* dttf_gmt_ghost_phys; int nev_; // Number of events processed diff --git a/DQM/L1TMonitor/interface/L1TDTTPG.h b/DQM/L1TMonitor/interface/L1TDTTPG.h index 9a3c65f7bd421..2fcb87d53fc57 100755 --- a/DQM/L1TMonitor/interface/L1TDTTPG.h +++ b/DQM/L1TMonitor/interface/L1TDTTPG.h @@ -100,9 +100,6 @@ class L1TDTTPG : public DQMEDAnalyzer { MonitorElement *dttf_p_q[3]; MonitorElement *dttf_p_qual[3]; - MonitorElement *runId_; - MonitorElement *lumisecId_; - int nev_; // Number of events processed std::string outputFile_; //file name for ROOT ouput bool verbose_; diff --git a/DQM/L1TMonitor/interface/L1TGCT.h b/DQM/L1TMonitor/interface/L1TGCT.h index 8dd6363cd48b5..c637b132de9d6 100755 --- a/DQM/L1TMonitor/interface/L1TGCT.h +++ b/DQM/L1TMonitor/interface/L1TGCT.h @@ -210,8 +210,6 @@ class L1TGCT : public DQMEDAnalyzer { MonitorElement* l1GctHFRingRatioNegEta_; MonitorElement* l1GctHFRingETSumOccBx_; MonitorElement* l1GctHFRingTowerCountOccBx_; - MonitorElement* runId_; - MonitorElement* lumisecId_; int nev_; // Number of events processed std::string outputFile_; //file name for ROOT ouput diff --git a/DQM/L1TMonitor/interface/L1TGT.h b/DQM/L1TMonitor/interface/L1TGT.h index 7074ab2e6f063..4344d7e8abaa0 100755 --- a/DQM/L1TMonitor/interface/L1TGT.h +++ b/DQM/L1TMonitor/interface/L1TGT.h @@ -155,9 +155,6 @@ class L1TGT: public DQMEDAnalyzer { MonitorElement* m_monOrbitNrDiffTcsFdlEvm; MonitorElement* m_monLsNrDiffTcsFdlEvm; - MonitorElement* runId_; - MonitorElement* lumisecId_; - MonitorElement* runStartTimeStamp_; // maximum difference in orbit number, luminosity number // histogram range: -(MaxOrbitNrDiffTcsFdlEvm+1), (MaxOrbitNrDiffTcsFdlEvm+1) // if value is greater than the maximum difference, fill an entry in the last but one bin diff --git a/DQM/L1TMonitor/interface/L1TRPCTF.h b/DQM/L1TMonitor/interface/L1TRPCTF.h index 5b9d40fa6328c..14ed48b5e5707 100755 --- a/DQM/L1TMonitor/interface/L1TRPCTF.h +++ b/DQM/L1TMonitor/interface/L1TRPCTF.h @@ -82,8 +82,6 @@ class L1TRPCTF : public DQMEDAnalyzer { MonitorElement* m_bxDiff; MonitorElement* rpctfcratesynchro[12]; - MonitorElement* runId_; - MonitorElement* lumisecId_; std::set m_globBX; diff --git a/DQM/L1TMonitor/interface/L1TRPCTPG.h b/DQM/L1TMonitor/interface/L1TRPCTPG.h index ea47859541174..c6a15d044e0c4 100755 --- a/DQM/L1TMonitor/interface/L1TRPCTPG.h +++ b/DQM/L1TMonitor/interface/L1TRPCTPG.h @@ -83,9 +83,7 @@ class L1TRPCTPG : public DQMEDAnalyzer { MonitorElement* m_digiBxRPCEnd; MonitorElement* m_digiBxDT; MonitorElement* m_digiBxCSC; - MonitorElement* runId_; - MonitorElement* lumisecId_; - + std::map > rpctpgmeCollection; int nev_; // Number of events processed diff --git a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py index 1f5b22d976563..4864babd4051f 100644 --- a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py @@ -39,6 +39,7 @@ from DQM.L1TMonitor.L1TdeRCT_cfi import * l1TdeRCTRun1 = l1TdeRCT.clone() l1TdeRCT.rctSourceData = 'caloStage1Digis' +l1TdeRCT.gctSourceData = 'caloStage1Digis' l1TdeRCT.rctSourceEmul = 'valRctDigis' l1TdeRCTfromRCT = l1TdeRCT.clone() diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 1457b63bf83c1..826e03d3282dd 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -30,6 +30,7 @@ from DQM.L1TMonitor.L1TRCT_cfi import * l1tRctRun1 = l1tRct.clone() l1tRct.rctSource = 'caloStage1Digis' +l1tRct.gctSource = 'caloStage1Digis' l1tRctfromRCT = l1tRct.clone() l1tRctfromRCT.rctSource = 'rctDigis' @@ -97,9 +98,16 @@ # transfer stage1 format digis to legacy format digis from L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi import * +caloStage1LegacyFormatDigis.bxMin = cms.int32(-2) +caloStage1LegacyFormatDigis.bxMax = cms.int32(2) ################################################################# +# GMT digis in parallel running +from EventFilter.L1GlobalTriggerRawToDigi.l1GtUnpack_cfi import * +l1GtUnpack.DaqGtInputTag = 'rawDataCollector' + +############################################################# # # define sequences @@ -139,6 +147,7 @@ # modules are independent, so the order is irrelevant l1tMonitorOnline = cms.Sequence( + l1GtUnpack* bxTiming + l1tDttf + l1tCsctf + @@ -153,6 +162,7 @@ ) l1tMonitorStage1Online = cms.Sequence( + l1GtUnpack* bxTiming + l1tDttf + l1tCsctf + diff --git a/DQM/L1TMonitor/python/L1TStage1Layer2_cfi.py b/DQM/L1TMonitor/python/L1TStage1Layer2_cfi.py index f82b4f6eabf3e..2107a345220a3 100644 --- a/DQM/L1TMonitor/python/L1TStage1Layer2_cfi.py +++ b/DQM/L1TMonitor/python/L1TStage1Layer2_cfi.py @@ -8,7 +8,7 @@ gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis"), gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm"), gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm"), - monitorDir = cms.untracked.string("L1TStage1/L1TStage1Layer2"), + monitorDir = cms.untracked.string("L1T/L1TStage1Layer2"), stage1_layer2_ = cms.bool(True), verbose = cms.untracked.bool(False), DQMStore = cms.untracked.bool(True), diff --git a/DQM/L1TMonitor/src/BxTiming.cc b/DQM/L1TMonitor/src/BxTiming.cc index fe8364532363b..20a141397ceb6 100644 --- a/DQM/L1TMonitor/src/BxTiming.cc +++ b/DQM/L1TMonitor/src/BxTiming.cc @@ -56,10 +56,6 @@ BxTiming::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::Event { ibooker.setCurrentFolder(histFolder_); - runId_=ibooker.bookInt("iRun"); - runId_->Fill(-1); - runStartTimeStamp_=ibooker.bookFloat("eventTimeStamp"); - /// initialize counters for(int i=0; iFill(r.id().run()); + } // ------------ method called to for each event ------------ diff --git a/DQM/L1TMonitor/src/L1GtHwValidation.cc b/DQM/L1TMonitor/src/L1GtHwValidation.cc index 2d5afb31a2cfc..bbaaf78bd4701 100644 --- a/DQM/L1TMonitor/src/L1GtHwValidation.cc +++ b/DQM/L1TMonitor/src/L1GtHwValidation.cc @@ -162,7 +162,7 @@ void L1GtHwValidation::dqmBeginRun(const edm::Run& iRun, const edm::EventSetup& } void L1GtHwValidation::beginLuminosityBlock(const edm::LuminosityBlock& l, const edm::EventSetup& evSetup){ - //lumisecId_->Fill(l.id().luminosityBlock()); + } void L1GtHwValidation::bookHistograms(DQMStore::IBooker &ibooker, const edm::Run& iRun, const edm::EventSetup& evSetup) { diff --git a/DQM/L1TMonitor/src/L1TDTTF.cc b/DQM/L1TMonitor/src/L1TDTTF.cc index ed59e4337a988..ff7bbed48d6c8 100755 --- a/DQM/L1TMonitor/src/L1TDTTF.cc +++ b/DQM/L1TMonitor/src/L1TDTTF.cc @@ -254,8 +254,6 @@ void L1TDTTF::beginLuminosityBlock(const edm::LuminosityBlock &l, const edm::Eve void L1TDTTF::bookHistograms(DQMStore::IBooker &ibooker, const edm::Run&, const edm::EventSetup&) { /// testing purposes - runId_=ibooker.bookInt("iRun"); - lumisecId_=ibooker.bookInt("iLumi"); nev_ = 0; nev_dttf_ = 0; nev_dttf_track2_ = 0; diff --git a/DQM/L1TMonitor/src/L1TDTTPG.cc b/DQM/L1TMonitor/src/L1TDTTPG.cc index db33a5f4907e2..4f988850b435d 100755 --- a/DQM/L1TMonitor/src/L1TDTTPG.cc +++ b/DQM/L1TMonitor/src/L1TDTTPG.cc @@ -121,12 +121,12 @@ L1TDTTPG::~L1TDTTPG() void L1TDTTPG::dqmBeginRun(const edm::Run &r, const edm::EventSetup &c){ //empty - //runId_->Fill(r.id().run()); + } void L1TDTTPG::beginLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &c){ //empty - //lumisecId_->Fill(l.id().luminosityBlock()); + } void L1TDTTPG::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const&) @@ -134,9 +134,6 @@ void L1TDTTPG::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm:: nev_ = 0; ibooker.setCurrentFolder("L1T/L1TDTTPG"); - runId_=ibooker.bookInt("iRun"); - lumisecId_=ibooker.bookInt("iLumi"); - //hist1[0] dttpgphbx[0] = ibooker.book1D("BxEncoding_PHI", diff --git a/DQM/L1TMonitor/src/L1TGCT.cc b/DQM/L1TMonitor/src/L1TGCT.cc index 25f67b50018f3..68b1d86559240 100755 --- a/DQM/L1TMonitor/src/L1TGCT.cc +++ b/DQM/L1TMonitor/src/L1TGCT.cc @@ -114,11 +114,6 @@ void L1TGCT::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::Ev nev_ = 0; ibooker.setCurrentFolder(monitorDir_); - - runId_ = ibooker.bookInt("iRun"); - runId_->Fill(-1); - lumisecId_ = ibooker.bookInt("iLumiSection"); - lumisecId_->Fill(-1); triggerType_ =ibooker.book1D("TriggerType", "TriggerType", 17, -0.5, 16.5); @@ -222,11 +217,11 @@ void L1TGCT::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::Ev void L1TGCT::dqmBeginRun(edm::Run const& iRrun, edm::EventSetup const& evSetup) { - //runId_->Fill(iRrun.id().run()); + } void L1TGCT::beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& evSetup) { - //lumisecId_->Fill(iLumi.id().luminosityBlock()); + } void L1TGCT::analyze(const edm::Event & e, const edm::EventSetup & c) diff --git a/DQM/L1TMonitor/src/L1TGT.cc b/DQM/L1TMonitor/src/L1TGT.cc index 4c26c5c1a169c..1491e94267096 100755 --- a/DQM/L1TMonitor/src/L1TGT.cc +++ b/DQM/L1TMonitor/src/L1TGT.cc @@ -39,12 +39,6 @@ L1TGT::~L1TGT() { void L1TGT::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const& evSetup) { - runId_=ibooker.bookInt("iRun"); - runId_->Fill(-1); - runStartTimeStamp_=ibooker.bookFloat("eventTimeStamp"); - - lumisecId_ = ibooker.bookInt("iLumiSection"); - lumisecId_->Fill(-1); ibooker.setCurrentFolder(m_histFolder); @@ -312,14 +306,13 @@ void L1TGT::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::Eve } void L1TGT::dqmBeginRun(edm::Run const& iRrun, edm::EventSetup const& evSetup) { - //runId_->Fill(iRrun.id().run()); + m_nrEvRun = 0; } void L1TGT::beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& evSetup) { - //lumisecId_->Fill(iLumi.id().luminosityBlock()); } diff --git a/DQM/L1TMonitor/src/L1TRPCTPG.cc b/DQM/L1TMonitor/src/L1TRPCTPG.cc index ac1b80c001c8d..fde1171b462b2 100755 --- a/DQM/L1TMonitor/src/L1TRPCTPG.cc +++ b/DQM/L1TMonitor/src/L1TRPCTPG.cc @@ -39,12 +39,10 @@ L1TRPCTPG::~L1TRPCTPG() void L1TRPCTPG::dqmBeginRun(edm::Run const& r, edm::EventSetup const& c){ // - //runId_->Fill(r.id().run()); } void L1TRPCTPG::beginLuminosityBlock(edm::LuminosityBlock const& l, edm::EventSetup const& c){ // - //lumisecId_->Fill(l.id().luminosityBlock()); } @@ -54,8 +52,6 @@ void L1TRPCTPG::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm: nev_ = 0; ibooker.setCurrentFolder("L1T/L1TRPCTPG"); - runId_=ibooker.bookInt("iRun"); - lumisecId_=ibooker.bookInt("iLumi"); rpctpgbx = ibooker.book1D("RPCTPG_bx", "RPC digis bx - all events", 9, -4.5, 4.5 ) ; diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjCenJetQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjCenJetQualityTests.xml index 741be8bb24c6e..410bdf3b21954 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjCenJetQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjCenJetQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorCenJetGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjETMQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjETMQualityTests.xml index 9a3ec7b90611a..d589ef0e0e06e 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjETMQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjETMQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorEtmGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjETTQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjETTQualityTests.xml index c5eb4cf640add..98de1ed31b62c 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjETTQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjETTQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorEttGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjForJetQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjForJetQualityTests.xml index 5ee04303ddecc..ee308c2a4220f 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjForJetQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjForJetQualityTests.xml @@ -15,7 +15,7 @@ - + L1EmulatorForJetGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjHTMQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjHTMQualityTests.xml index f7a25702258b1..4ef1a68df089f 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjHTMQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjHTMQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorHtmGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjHTTQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjHTTQualityTests.xml index 3582373d1ac89..e640b54e3256b 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjHTTQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjHTTQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorHttGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjHfBitCountsQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjHfBitCountsQualityTests.xml index cd77e3560ca0a..52032355beb3b 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjHfBitCountsQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjHfBitCountsQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorHfBitCountsGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjHfRingEtSumsQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjHfRingEtSumsQualityTests.xml index 268db7462f78b..402bc99dc675a 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjHfRingEtSumsQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjHfRingEtSumsQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorHfRingEtSumsGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjIsoEGQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjIsoEGQualityTests.xml index d68368f79305e..eccb5a9ac2db1 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjIsoEGQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjIsoEGQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorIsoEGGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjIsoTauJetQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjIsoTauJetQualityTests.xml new file mode 100644 index 0000000000000..f68dac8c1636a --- /dev/null +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjIsoTauJetQualityTests.xml @@ -0,0 +1,22 @@ + + + + + + ContentsXRange + 0.99 + 0.95 + 0.0 + 1.0 + + + + + L1EmulatorIsoTauJetGctErrorFlagQT + + + + diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjNoIsoEGQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjNoIsoEGQualityTests.xml index 2b9f5b33a068d..e5ca81ec9bc67 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjNoIsoEGQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjNoIsoEGQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorNoIsoEGGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1EmulatorObjTauJetQualityTests.xml b/DQM/L1TMonitorClient/data/L1EmulatorObjTauJetQualityTests.xml index 121cca55b6bf0..53973e7f20eab 100644 --- a/DQM/L1TMonitorClient/data/L1EmulatorObjTauJetQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1EmulatorObjTauJetQualityTests.xml @@ -14,7 +14,7 @@ - + L1EmulatorTauJetGctErrorFlagQT diff --git a/DQM/L1TMonitorClient/data/L1TriggerGctQualityTests.xml b/DQM/L1TMonitorClient/data/L1TriggerGctQualityTests.xml index 9667de5c888f1..fe6536275e579 100644 --- a/DQM/L1TMonitorClient/data/L1TriggerGctQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1TriggerGctQualityTests.xml @@ -23,22 +23,22 @@ - + HotChannels_GCT_2D DeadChannels_GCT_2D_loose - + HotChannels_GCT_2D DeadChannels_GCT_2D_loose - + HotChannels_GCT_2D DeadChannels_GCT_2D_tight - + HotChannels_GCT_2D DeadChannels_GCT_2D_loose diff --git a/DQM/L1TMonitorClient/data/L1TriggerRctQualityTests.xml b/DQM/L1TMonitorClient/data/L1TriggerRctQualityTests.xml index 0f4fc7d92a142..86d6d5a4f13e1 100644 --- a/DQM/L1TMonitorClient/data/L1TriggerRctQualityTests.xml +++ b/DQM/L1TMonitorClient/data/L1TriggerRctQualityTests.xml @@ -23,17 +23,17 @@ - + HotChannels_RCT_2D DeadChannels_RCT_2D_loose - + HotChannels_RCT_2D DeadChannels_RCT_2D_loose - + HotChannels_RCT_2D DeadChannels_RCT_2D_tight diff --git a/DQM/L1TMonitorClient/python/L1EmulatorErrorFlagClient_cfi.py b/DQM/L1TMonitorClient/python/L1EmulatorErrorFlagClient_cfi.py index edb3ca1f6bb44..7b7437ea0d530 100644 --- a/DQM/L1TMonitorClient/python/L1EmulatorErrorFlagClient_cfi.py +++ b/DQM/L1TMonitorClient/python/L1EmulatorErrorFlagClient_cfi.py @@ -31,8 +31,8 @@ SystemFolder = cms.string("") ), cms.PSet( - SystemLabel = cms.string("GCT"), - HwValLabel = cms.string("GCT"), + SystemLabel = cms.string("Stage1Layer2"), + HwValLabel = cms.string("Stage1Layer2"), SystemMask = cms.uint32(0), SystemFolder = cms.string("") ), @@ -76,7 +76,7 @@ SystemLabel = cms.string("GT"), HwValLabel = cms.string("GT"), SystemMask = cms.uint32(1), - SystemFolder = cms.string("L1TEMU/GTexpert") + SystemFolder = cms.string("L1TEMU/Stage1GTexpert") ) ) diff --git a/DQM/L1TMonitorClient/python/L1EmulatorObjIsoTauJetQualityTests_cfi.py b/DQM/L1TMonitorClient/python/L1EmulatorObjIsoTauJetQualityTests_cfi.py new file mode 100644 index 0000000000000..fdf8d198c0ae8 --- /dev/null +++ b/DQM/L1TMonitorClient/python/L1EmulatorObjIsoTauJetQualityTests_cfi.py @@ -0,0 +1,15 @@ +# quality tests for L1 TauJet trigger objects + +import FWCore.ParameterSet.Config as cms + +l1EmulatorObjIsoTauJetQualityTests = cms.EDAnalyzer("QualityTester", + qtList=cms.untracked.FileInPath('DQM/L1TMonitorClient/data/L1EmulatorObjIsoTauJetQualityTests.xml'), + QualityTestPrescaler=cms.untracked.int32(1), + getQualityTestsFromFile=cms.untracked.bool(True), + testInEventloop=cms.untracked.bool(False), + qtestOnEndLumi=cms.untracked.bool(True), + qtestOnEndRun=cms.untracked.bool(True), + qtestOnEndJob=cms.untracked.bool(False), + reportThreshold=cms.untracked.string(""), + verboseQT=cms.untracked.bool(True) +) diff --git a/DQM/L1TMonitorClient/python/L1EmulatorQualityTests_cff.py b/DQM/L1TMonitorClient/python/L1EmulatorQualityTests_cff.py index 5f13157572d11..bd5f860da8b63 100644 --- a/DQM/L1TMonitorClient/python/L1EmulatorQualityTests_cff.py +++ b/DQM/L1TMonitorClient/python/L1EmulatorQualityTests_cff.py @@ -101,6 +101,10 @@ from DQM.L1TMonitorClient.L1EmulatorObjTauJetQualityTests_cfi import * seqL1EmulatorObjTauJetQualityTests = cms.Sequence(l1EmulatorObjTauJetQualityTests) +# IsoTauJet quality tests +from DQM.L1TMonitorClient.L1EmulatorObjIsoTauJetQualityTests_cfi import * +seqL1EmulatorObjIsoTauJetQualityTests = cms.Sequence(l1EmulatorObjIsoTauJetQualityTests) + # ForJet quality tests from DQM.L1TMonitorClient.L1EmulatorObjForJetQualityTests_cfi import * seqL1EmulatorObjForJetQualityTests = cms.Sequence(l1EmulatorObjForJetQualityTests) @@ -147,6 +151,7 @@ seqL1EmulatorObjETMQualityTests + seqL1EmulatorObjETTQualityTests + seqL1EmulatorObjTauJetQualityTests + + seqL1EmulatorObjIsoTauJetQualityTests + seqL1EmulatorObjForJetQualityTests + seqL1EmulatorObjCenJetQualityTests + seqL1EmulatorObjIsoEGQualityTests + diff --git a/DQM/L1TMonitorClient/python/L1TEMUEventInfoClient_cff.py b/DQM/L1TMonitorClient/python/L1TEMUEventInfoClient_cff.py index fe2f407682505..840af927f23ec 100644 --- a/DQM/L1TMonitorClient/python/L1TEMUEventInfoClient_cff.py +++ b/DQM/L1TMonitorClient/python/L1TEMUEventInfoClient_cff.py @@ -231,8 +231,8 @@ ) ), cms.PSet( - SystemLabel = cms.string("GCT"), - HwValLabel = cms.string("GCT"), + SystemLabel = cms.string("Stage1Layer2"), + HwValLabel = cms.string("Stage1Layer2"), SystemDisable = cms.uint32(0), QualityTests = cms.VPSet( cms.PSet( @@ -415,7 +415,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorHfRingEtSumsGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/HFSums/HFSumsErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/Stage1HFSums/Stage1HFSumsErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -426,7 +426,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorHfBitCountsGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/HFCnts/HFCntsErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/HFCnts/HFCntsErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -437,7 +437,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorHtmGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/MHT/MHTErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/MHT/MHTErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -448,7 +448,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorHttGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/HT/HTErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/HT/HTErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -459,7 +459,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorEtmGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/MET/METErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/MET/METErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -470,7 +470,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorEttGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/ET/ETErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/ET/ETErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -481,18 +481,23 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorTauJetGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/TauJet/TauJetErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/TauJet/TauJetErrorFlag"), + QualityTestSummaryEnabled = cms.uint32(1) + ), + cms.PSet( + QualityTestName = cms.string("L1EmulatorIsoTauJetGctErrorFlagQT"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/IsoTauJet/IsoTauJetErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) ), cms.PSet( - ObjectLabel = cms.string("ForJet"), + ObjectLabel = cms.string("For"), ObjectDisable = cms.uint32(0), QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorForJetGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/ForJet/ForJetErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/ForJet/ForJetErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -503,7 +508,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorCenJetGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/CenJet/CenJetErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/CenJet/CenJetErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -514,7 +519,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorIsoEGGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/IsoEM/IsoEMErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/IsoEM/IsoEMErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -525,7 +530,7 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("L1EmulatorNoIsoEGGctErrorFlagQT"), - QualityTestHist = cms.string("L1TEMU/GCTexpert/NoisoEM/NoisoEMErrorFlag"), + QualityTestHist = cms.string("L1TEMU/Stage1Layer2expert/NoisoEM/NoisoEMErrorFlag"), QualityTestSummaryEnabled = cms.uint32(1) ) ) diff --git a/DQM/L1TMonitorClient/python/L1TEventInfoClient_cfi.py b/DQM/L1TMonitorClient/python/L1TEventInfoClient_cfi.py index 226ff31764108..2bc81d843c411 100644 --- a/DQM/L1TMonitorClient/python/L1TEventInfoClient_cfi.py +++ b/DQM/L1TMonitorClient/python/L1TEventInfoClient_cfi.py @@ -68,83 +68,83 @@ QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("HotChannels_RCT_2D"), - QualityTestHist = cms.string("L1T/L1TRCT/RctEmIsoEmEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2EmIsoEmEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_RCT_2D_loose"), - QualityTestHist = cms.string("L1T/L1TRCT/RctEmIsoEmEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2EmIsoEmEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), # cms.PSet( QualityTestName = cms.string("HotChannels_RCT_2D"), - QualityTestHist = cms.string("L1T/L1TRCT/RctEmNonIsoEmEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2EmNonIsoEmEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_RCT_2D_loose"), - QualityTestHist = cms.string("L1T/L1TRCT/RctEmNonIsoEmEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2EmNonIsoEmEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), # cms.PSet( QualityTestName = cms.string("HotChannels_RCT_2D"), - QualityTestHist = cms.string("L1T/L1TRCT/RctRegionsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2RegionsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_RCT_2D_tight"), - QualityTestHist = cms.string("L1T/L1TRCT/RctRegionsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TRCT/Layer2RegionsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), ) ), cms.PSet( - SystemLabel = cms.string("GCT"), - HwValLabel = cms.string("GCT"), + SystemLabel = cms.string("Stage1Layer2"), + HwValLabel = cms.string("Stage1Layer2"), SystemDisable = cms.uint32(0), QualityTests = cms.VPSet( cms.PSet( QualityTestName = cms.string("HotChannels_GCT_2D"), - QualityTestHist = cms.string("L1T/L1TGCT/IsoEmRankEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/IsoEmRankEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_GCT_2D_loose"), - QualityTestHist = cms.string("L1T/L1TGCT/IsoEmRankEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/IsoEmRankEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), # cms.PSet( QualityTestName = cms.string("HotChannels_GCT_2D"), - QualityTestHist = cms.string("L1T/L1TGCT/IsoEmRankEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/IsoEmRankEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_GCT_2D_loose"), - QualityTestHist = cms.string("L1T/L1TGCT/NonIsoEmRankEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/NonIsoEmRankEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), # cms.PSet( QualityTestName = cms.string("HotChannels_GCT_2D"), - QualityTestHist = cms.string("L1T/L1TGCT/AllJetsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/AllJetsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_GCT_2D_tight"), - QualityTestHist = cms.string("L1T/L1TGCT/AllJetsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/AllJetsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("HotChannels_GCT_2D"), - QualityTestHist = cms.string("L1T/L1TGCT/TauJetsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/TauJetsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ), cms.PSet( QualityTestName = cms.string("DeadChannels_GCT_2D_tight"), - QualityTestHist = cms.string("L1T/L1TGCT/TauJetsEtEtaPhi"), + QualityTestHist = cms.string("L1T/L1TStage1Layer2/TauJetsEtEtaPhi"), QualityTestSummaryEnabled = cms.uint32(1) ) ) @@ -363,7 +363,7 @@ ) ), cms.PSet( - ObjectLabel = cms.string("TauJet"), + ObjectLabel = cms.string("Tau"), ObjectDisable = cms.uint32(0), QualityTests = cms.VPSet( cms.PSet( diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index ce669cd98f596..d39b9b47ce070 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -56,7 +56,7 @@ # l1TriggerOnline = cms.Sequence( - l1tMonitorOnline + l1tMonitorStage1Online * dqmEnvL1T ) @@ -68,7 +68,7 @@ # l1TriggerEmulatorOnline = cms.Sequence( - l1HwValEmulatorMonitor + l1Stage1HwValEmulatorMonitor * dqmEnvL1TEMU ) @@ -87,7 +87,7 @@ # DQM Offline Step 2 sequence l1TriggerDqmOfflineClient = cms.Sequence( - l1tMonitorClient + l1tMonitorStage1Client * l1EmulatorMonitorClient ) @@ -121,7 +121,7 @@ # #l1TriggerOnline.remove(l1tMonitorOnline) # -l1tMonitorOnline.remove(bxTiming) +l1tMonitorStage1Online.remove(bxTiming) #l1tMonitorOnline.remove(l1tDttf) #l1tMonitorOnline.remove(l1tCsctf) #l1tMonitorOnline.remove(l1tRpctf) @@ -134,8 +134,8 @@ #l1ExtraDqmSeq.remove(l1ExtraDQM) #l1tMonitorOnline.remove(l1ExtraDqmSeq) # -l1tMonitorOnline.remove(l1tRate) -l1tMonitorOnline.remove(l1tBPTX) +#l1tMonitorOnline.remove(l1tRate) +#l1tMonitorOnline.remove(l1tBPTX) #l1tMonitorOnline.remove(l1tRctSeq) #l1tMonitorOnline.remove(l1tGctSeq) @@ -168,7 +168,7 @@ #l1TriggerClients.remove(l1tRpctfClient) #l1TriggerClients.remove(l1tGmtClient) #l1TriggerClients.remove(l1tOccupancyClient) -l1TriggerClients.remove(l1tTestsSummary) +l1TriggerStage1Clients.remove(l1tTestsSummary) #l1TriggerClients.remove(l1tEventInfoClient) # l1EmulatorMonitorClient sequence, defined in DQM/L1TMonitorClient/python/L1TEMUMonitorClient_cff.py diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index d1417c74a566f..e1e0fa28779ba 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -67,6 +67,8 @@ valCaloStage1LegacyFormatDigis.InputIsoTauCollection = cms.InputTag("simCaloStage1Digis:isoTaus") valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("simCaloStage1Digis:HFRingSums") valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") +valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) +valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * @@ -122,11 +124,11 @@ import L1Trigger.GlobalMuonTrigger.gmtDigis_cfi valGmtDigis = L1Trigger.GlobalMuonTrigger.gmtDigis_cfi.gmtDigis.clone() # -valGmtDigis.DTCandidates = cms.InputTag('gtDigis','DT') -valGmtDigis.CSCCandidates = cms.InputTag('gtDigis','CSC') -valGmtDigis.RPCbCandidates = cms.InputTag('gtDigis','RPCb') -valGmtDigis.RPCfCandidates = cms.InputTag('gtDigis','RPCf') -valGmtDigis.MipIsoData = 'gctDigis' +valGmtDigis.DTCandidates = cms.InputTag('l1GtUnpack','DT') +valGmtDigis.CSCCandidates = cms.InputTag('l1GtUnpack','CSC') +valGmtDigis.RPCbCandidates = cms.InputTag('l1GtUnpack','RPCb') +valGmtDigis.RPCfCandidates = cms.InputTag('l1GtUnpack','RPCf') +valGmtDigis.MipIsoData = 'caloStage1Digis' # producers for technical triggers # @@ -148,7 +150,7 @@ # Global Trigger emulator import L1Trigger.GlobalTrigger.gtDigis_cfi valGtDigis = L1Trigger.GlobalTrigger.gtDigis_cfi.gtDigis.clone() -valGtDigis.GmtInputTag = 'gtDigis' +valGtDigis.GmtInputTag = 'l1GtUnpack' valGtDigis.GctInputTag = 'gctDigis' valGtDigis.TechnicalTriggersInputTags = cms.VInputTag( cms.InputTag('valRpcTechTrigDigis'), @@ -157,7 +159,7 @@ # Global Trigger emulator for Stage1 import L1Trigger.GlobalTrigger.gtDigis_cfi valStage1GtDigis = L1Trigger.GlobalTrigger.gtDigis_cfi.gtDigis.clone() -valStage1GtDigis.GmtInputTag = 'gtDigis' +valStage1GtDigis.GmtInputTag = 'l1GtUnpack' valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' valStage1GtDigis.TechnicalTriggersInputTags = cms.VInputTag( cms.InputTag('valRpcTechTrigDigis'), diff --git a/L1Trigger/HardwareValidation/python/L1ComparatorforStage1_cfi.py b/L1Trigger/HardwareValidation/python/L1ComparatorforStage1_cfi.py index 55eeff73596b0..1bf59bca87e43 100644 --- a/L1Trigger/HardwareValidation/python/L1ComparatorforStage1_cfi.py +++ b/L1Trigger/HardwareValidation/python/L1ComparatorforStage1_cfi.py @@ -14,10 +14,10 @@ DTFsourceData = cms.InputTag("dttfDigis"), DTFsourceEmul = cms.InputTag("valDttfDigis"), - RPCsourceData = cms.InputTag("gtDigis"), + RPCsourceData = cms.InputTag("l1GtUnpack"), RPCsourceEmul = cms.InputTag("valRpcTriggerDigis"), - GMTsourceData = cms.InputTag("gtDigis"), + GMTsourceData = cms.InputTag("l1GtUnpack"), GMTsourceEmul = cms.InputTag("valGmtDigis"), FEDsourceData = cms.untracked.InputTag("rawDataCollector"), From f68d423dc341c20a4c011668349d72de8cfa49bf Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Tue, 13 Oct 2015 13:12:11 +0200 Subject: [PATCH 02/46] also include changes in 10663 --- DQM/L1TMonitor/python/L1TCSCTF_cfi.py | 2 +- DQM/L1TMonitor/python/L1TDTTF_cfi.py | 2 +- .../python/L1TEmulatorMonitor_cff.py | 18 +++++++++++++----- DQM/L1TMonitor/python/L1TGMT_cfi.py | 2 +- DQM/L1TMonitor/python/L1TRPCTF_cfi.py | 2 +- .../python/L1TStage1Layer2Client_cfi.py | 2 +- DQM/L1TMonitorClient/src/L1TGCTClient.cc | 2 +- .../Configuration/python/ValL1Emulator_cff.py | 1 + .../python/L1Comparator_cfi.py | 4 ++-- 9 files changed, 22 insertions(+), 13 deletions(-) diff --git a/DQM/L1TMonitor/python/L1TCSCTF_cfi.py b/DQM/L1TMonitor/python/L1TCSCTF_cfi.py index 41ff8d22b71bd..fbe70232928d1 100644 --- a/DQM/L1TMonitor/python/L1TCSCTF_cfi.py +++ b/DQM/L1TMonitor/python/L1TCSCTF_cfi.py @@ -1,7 +1,7 @@ import FWCore.ParameterSet.Config as cms l1tCsctf = cms.EDAnalyzer("L1TCSCTF", - gmtProducer = cms.InputTag("gtDigis"), + gmtProducer = cms.InputTag("l1GtUnpack"), statusProducer = cms.InputTag("csctfDigis"), outputFile = cms.untracked.string(''), diff --git a/DQM/L1TMonitor/python/L1TDTTF_cfi.py b/DQM/L1TMonitor/python/L1TDTTF_cfi.py index 8b1eeb905799c..0fa6137c5d327 100644 --- a/DQM/L1TMonitor/python/L1TDTTF_cfi.py +++ b/DQM/L1TMonitor/python/L1TDTTF_cfi.py @@ -8,7 +8,7 @@ online = cms.untracked.bool(True), l1tInfoFolder = cms.untracked.string('L1T/EventInfo'), dttpgSource = cms.InputTag("dttfDigis"), - gmtSource = cms.InputTag("gtDigis"), + gmtSource = cms.InputTag("l1GtUnpack"), MuonCollection = cms.InputTag("muons") ) diff --git a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py index 4864babd4051f..bd2ad86e00436 100644 --- a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py @@ -67,6 +67,11 @@ ############################################################ +# GMT unpack from Fed813 in legacy stage1 parallel running +from EventFilter.L1GlobalTriggerRawToDigi.l1GtUnpack_cfi import * +l1GtUnpack.DaqGtInputTag = 'rawDataCollector' + +############################################################# l1TdeRCTSeq = cms.Sequence( l1TdeRCT + l1TdeRCTfromRCT @@ -81,20 +86,22 @@ l1EmulatorMonitor = cms.Sequence( + l1GtUnpack* l1demon+ l1ExpertDataVsEmulator ) # for use in processes where hardware validation is not run l1HwValEmulatorMonitor = cms.Sequence( + l1GtUnpack* L1HardwareValidation* l1EmulatorMonitor ) # for stage1 l1ExpertDataVsEmulatorStage1 = cms.Sequence( - caloStage1Digis* - caloStage1LegacyFormatDigis* + #caloStage1Digis* + #caloStage1LegacyFormatDigis* l1TdeStage1Layer2 + l1TdeCSCTF + l1Stage1GtHwValidation + @@ -102,8 +109,8 @@ ) l1EmulatorMonitorStage1 = cms.Sequence( - caloStage1Digis* - caloStage1LegacyFormatDigis* + #caloStage1Digis* + #caloStage1LegacyFormatDigis* l1demonstage1+ l1ExpertDataVsEmulatorStage1 ) @@ -111,7 +118,8 @@ l1Stage1HwValEmulatorMonitor = cms.Sequence( rctDigis* caloStage1Digis* - caloStage1LegacyFormatDigis* + caloStage1LegacyFormatDigis* + l1GtUnpack* L1HardwareValidationforStage1 + l1EmulatorMonitorStage1 ) diff --git a/DQM/L1TMonitor/python/L1TGMT_cfi.py b/DQM/L1TMonitor/python/L1TGMT_cfi.py index e61451254f0e4..beccc2e84bab1 100644 --- a/DQM/L1TMonitor/python/L1TGMT_cfi.py +++ b/DQM/L1TMonitor/python/L1TGMT_cfi.py @@ -3,7 +3,7 @@ l1tGmt = cms.EDAnalyzer("L1TGMT", disableROOToutput = cms.untracked.bool(True), verbose = cms.untracked.bool(False), - gmtSource = cms.InputTag("gtDigis"), + gmtSource = cms.InputTag("l1GtUnpack"), DQMStore = cms.untracked.bool(True) ) diff --git a/DQM/L1TMonitor/python/L1TRPCTF_cfi.py b/DQM/L1TMonitor/python/L1TRPCTF_cfi.py index 55b83404b6305..e00baef5ce26d 100644 --- a/DQM/L1TMonitor/python/L1TRPCTF_cfi.py +++ b/DQM/L1TMonitor/python/L1TRPCTF_cfi.py @@ -2,7 +2,7 @@ l1tRpctf = cms.EDAnalyzer("L1TRPCTF", disableROOToutput = cms.untracked.bool(True), - rpctfSource = cms.InputTag("gtDigis"), + rpctfSource = cms.InputTag("l1GtUnpack"), rpctfRPCDigiSource = cms.InputTag("muonRPCDigis"), output_dir = cms.untracked.string('L1T/L1TRPCTF'), rateUpdateTime = cms.int32(20), # update after 20 seconds diff --git a/DQM/L1TMonitorClient/python/L1TStage1Layer2Client_cfi.py b/DQM/L1TMonitorClient/python/L1TStage1Layer2Client_cfi.py index 44e11d2dae910..5cd9775de7af9 100644 --- a/DQM/L1TMonitorClient/python/L1TStage1Layer2Client_cfi.py +++ b/DQM/L1TMonitorClient/python/L1TStage1Layer2Client_cfi.py @@ -2,7 +2,7 @@ l1tStage1Layer2Client = cms.EDAnalyzer("L1TGCTClient", prescaleLS = cms.untracked.int32(-1), - monitorDir = cms.untracked.string('L1T/stage1layer2'), + monitorDir = cms.untracked.string('L1T/L1TStage1Layer2'), prescaleEvt = cms.untracked.int32(1), runInEventLoop=cms.untracked.bool(False), runInEndLumi=cms.untracked.bool(True), diff --git a/DQM/L1TMonitorClient/src/L1TGCTClient.cc b/DQM/L1TMonitorClient/src/L1TGCTClient.cc index 18f25abbba6a2..98d6bab8ef65d 100644 --- a/DQM/L1TMonitorClient/src/L1TGCTClient.cc +++ b/DQM/L1TMonitorClient/src/L1TGCTClient.cc @@ -88,7 +88,7 @@ void L1TGCTClient::processHistograms(DQMStore::IGetter &igetter) { if(m_stage1_layer2_ ==false){ InputDir = "L1T/L1TGCT/"; } else{ - InputDir = "L1T/stage1layer2/"; + InputDir = "L1T/L1TStage1Layer2/"; } Input = igetter.get(InputDir + "IsoEmOccEtaPhi"); diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index e1e0fa28779ba..b75492a397058 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -71,6 +71,7 @@ valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * diff --git a/L1Trigger/HardwareValidation/python/L1Comparator_cfi.py b/L1Trigger/HardwareValidation/python/L1Comparator_cfi.py index 736c0e1082ccb..48dbcc6b7046c 100644 --- a/L1Trigger/HardwareValidation/python/L1Comparator_cfi.py +++ b/L1Trigger/HardwareValidation/python/L1Comparator_cfi.py @@ -14,10 +14,10 @@ DTFsourceData = cms.InputTag("dttfDigis"), DTFsourceEmul = cms.InputTag("valDttfDigis"), - RPCsourceData = cms.InputTag("gtDigis"), + RPCsourceData = cms.InputTag("l1GtUnpack"), RPCsourceEmul = cms.InputTag("valRpcTriggerDigis"), - GMTsourceData = cms.InputTag("gtDigis"), + GMTsourceData = cms.InputTag("l1GtUnpack"), GMTsourceEmul = cms.InputTag("valGmtDigis"), FEDsourceData = cms.untracked.InputTag("rawDataCollector"), From 9ab048827927dbbb4e81d9f3567c5baf7e43fdf2 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Tue, 13 Oct 2015 13:58:59 +0200 Subject: [PATCH 03/46] some fix --- DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py | 2 +- DQM/L1TMonitor/python/L1TMonitor_cff.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py index bd2ad86e00436..b107caecd5c72 100644 --- a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py @@ -39,7 +39,7 @@ from DQM.L1TMonitor.L1TdeRCT_cfi import * l1TdeRCTRun1 = l1TdeRCT.clone() l1TdeRCT.rctSourceData = 'caloStage1Digis' -l1TdeRCT.gctSourceData = 'caloStage1Digis' +#l1TdeRCT.gctSourceData = 'caloStage1Digis' l1TdeRCT.rctSourceEmul = 'valRctDigis' l1TdeRCTfromRCT = l1TdeRCT.clone() diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 826e03d3282dd..03c5552f5aba2 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -30,7 +30,7 @@ from DQM.L1TMonitor.L1TRCT_cfi import * l1tRctRun1 = l1tRct.clone() l1tRct.rctSource = 'caloStage1Digis' -l1tRct.gctSource = 'caloStage1Digis' +#l1tRct.gctSource = 'caloStage1Digis' l1tRctfromRCT = l1tRct.clone() l1tRctfromRCT.rctSource = 'rctDigis' From 87b15c2cde0e1ec71507ac88bf150b081f6e6419 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Tue, 13 Oct 2015 17:25:08 +0200 Subject: [PATCH 04/46] Update l1t_dqm_sourceclient-live_cfg.py --- DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py index 32dc503f52880..1fdfeb260c103 100644 --- a/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1t_dqm_sourceclient-live_cfg.py @@ -138,7 +138,7 @@ process.l1tMonitorOnline.remove(process.l1tGmt) -process.l1tMonitorOnline.remove(process.l1tGt) +#process.l1tMonitorOnline.remove(process.l1tGt) process.l1tGt.HistFolder = cms.untracked.string("L1T/L1TGTTestCrate") #process.l1tMonitorOnline.remove(process.l1ExtraDqmSeq) From adbd85707820864f845a11ba2a7e031d5e9fc199 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 11 Nov 2015 19:22:08 +0100 Subject: [PATCH 05/46] fix merge conflict --- .../l1tstage1emulator_dqm_sourceclient-live_cfg.py | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py index a1cd2c2e9d8c3..d263d5882821a 100644 --- a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py @@ -54,16 +54,6 @@ process.load("DQM.L1TMonitorClient.L1TEMUMonitorClient_cff") #process.load("L1Trigger.L1TCalorimeter.caloStage1Params_cfi") -process.GlobalTag.toGet = cms.VPSet( - cms.PSet( - record = cms.string("L1TCaloParamsRcd"), - tag = cms.string("L1TCaloParams_CRAFT09_hlt"), - connect = cms.untracked.string("frontier://(proxyurl=http://localhost:3128)(serverurl=http://localhost:8000/FrontierOnProd)(serverurl=http://localhost:8000/FrontierOnProd)(retrieve-ziplevel=0)(failovertoserver=no)/CMS_CONDITIONS") - ) -) - - - #------------------------------------- # paths & schedule for L1 emulator DQM # From fceea28e380ce04262e9ae2f7de91a799c00e45a Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 11 Nov 2015 19:23:34 +0100 Subject: [PATCH 06/46] fix merge conflict --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index b75492a397058..2b081676f615d 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -70,8 +70,7 @@ valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) -from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * -from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * +#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From 03562a4d88384de8612a9cf33110af301eff0011 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 19:45:27 -0600 Subject: [PATCH 07/46] fix --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 2b081676f615d..e1e0fa28779ba 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -70,7 +70,7 @@ valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) -#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From 741a4dd60762aced49fd77f04a605b0f62d16b43 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:30:10 -0600 Subject: [PATCH 08/46] fix RelVal crash --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 1 + 1 file changed, 1 insertion(+) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index e1e0fa28779ba..b75492a397058 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -71,6 +71,7 @@ valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From fab70beab1c88f798bc204515c873242b2668676 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:35:06 -0600 Subject: [PATCH 09/46] get caloParam from global tag --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index b75492a397058..2e46ef8b07e12 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -70,7 +70,7 @@ valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) -from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator From a6a5fe6f61762dd6a945718a0e1aee48c05e29d9 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:40:55 -0600 Subject: [PATCH 10/46] fix merge conflict --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 2e46ef8b07e12..b75492a397058 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -70,7 +70,7 @@ valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) -#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator From 90b981ffacd717ea1baa6e2d9f0fb1d3e9e7782e Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:43:00 -0600 Subject: [PATCH 11/46] fix merge conflict --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index b75492a397058..51665e13f47a9 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -55,6 +55,7 @@ valGctDigis.preSamples = cms.uint32(0) valGctDigis.postSamples = cms.uint32(0) +from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # Stage1Layer2 emulator from L1Trigger.L1TCalorimeter.simRctUpgradeFormatDigis_cfi import * simRctUpgradeFormatDigis.regionTag = cms.InputTag("gctDigis") @@ -70,8 +71,7 @@ valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0) valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0) -from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * -from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * +#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From 31b5fe161416234d8c302915ba6a5b3dd5d92fca Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 04:48:11 +0100 Subject: [PATCH 12/46] add stage1 HIon monitoring --- DQM/L1TMonitor/interface/L1THIonImp.h | 165 ++++++++ DQM/L1TMonitor/python/L1THIonImp_cfi.py | 19 + DQM/L1TMonitor/src/L1THIonImp.cc | 506 ++++++++++++++++++++++++ 3 files changed, 690 insertions(+) create mode 100644 DQM/L1TMonitor/interface/L1THIonImp.h create mode 100644 DQM/L1TMonitor/python/L1THIonImp_cfi.py create mode 100644 DQM/L1TMonitor/src/L1THIonImp.cc diff --git a/DQM/L1TMonitor/interface/L1THIonImp.h b/DQM/L1TMonitor/interface/L1THIonImp.h new file mode 100644 index 0000000000000..17992ac5a7d83 --- /dev/null +++ b/DQM/L1TMonitor/interface/L1THIonImp.h @@ -0,0 +1,165 @@ +#ifndef L1THIonImp_H +#define L1THIonImp_H + +#include +#include + + +#include +#include +#include + + +// user include files +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/EDAnalyzer.h" + +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" + +#include "FWCore/ParameterSet/interface/ParameterSet.h" + +#include "FWCore/ServiceRegistry/interface/Service.h" + +// DQM +#include "DQMServices/Core/interface/DQMStore.h" +#include "DQMServices/Core/interface/MonitorElement.h" +#include "DataFormats/L1GlobalCaloTrigger/interface/L1GctCollections.h" +#include "DataFormats/L1CaloTrigger/interface/L1CaloCollections.h" +#include "DataFormats/L1CaloTrigger/interface/L1CaloRegionDetId.h" + +#include "DQMServices/Core/interface/DQMEDAnalyzer.h" + +class L1THIonImp : public DQMEDAnalyzer { + +public: + +// Constructor + L1THIonImp(const edm::ParameterSet& ps); + +// Destructor + virtual ~L1THIonImp(); + +protected: +// Analyze + void analyze(const edm::Event& e, const edm::EventSetup& c); + + virtual void dqmBeginRun(const edm::Run&, const edm::EventSetup&); + virtual void bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const&) override ; + virtual void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); + //virtual std::vector SortMinBiasBit(std::vector, std::vector); + virtual std::vector SortMinBiasBit(uint16_t, uint16_t); + +private: + // ----------member data --------------------------- + + // Jet and EM stuff + MonitorElement* l1GctCenJetsEtEtaPhi_; + MonitorElement* l1GctForJetsEtEtaPhi_; + MonitorElement* l1GctTauJetsEtEtaPhi_; + MonitorElement* l1GctIsoEmRankEtaPhi_; + MonitorElement* l1GctNonIsoEmRankEtaPhi_; + + MonitorElement* l1GctCenJetsOccEtaPhi_; + MonitorElement* l1GctForJetsOccEtaPhi_; + MonitorElement* l1GctTauJetsOccEtaPhi_; + MonitorElement* l1GctIsoEmOccEtaPhi_; + MonitorElement* l1GctNonIsoEmOccEtaPhi_; + + MonitorElement* l1GctCenJetsRank_; + MonitorElement* l1GctForJetsRank_; + MonitorElement* l1GctTauJetsRank_; + MonitorElement* l1GctIsoEmRank_; + MonitorElement* l1GctNonIsoEmRank_; + + MonitorElement* l1GctAllJetsOccRankBx_; + MonitorElement* l1GctAllEmOccRankBx_; + + // Energy sums stuff + MonitorElement* l1GctEtMiss_; + MonitorElement* l1GctEtMissPhi_; + MonitorElement* l1GctEtMissOf_; + MonitorElement* l1GctEtMissOccBx_; + MonitorElement* l1GctEtTotal_; + MonitorElement* l1GctEtTotalOf_; + MonitorElement* l1GctEtTotalOccBx_; + MonitorElement* l1GctEtHad_; + MonitorElement* l1GctEtHadOf_; + MonitorElement* l1GctEtHadOccBx_; + MonitorElement* l1GctEtTotalEtHadCorr_; + MonitorElement* l1GctHFRingETSum_; + MonitorElement* l1GctHFRingETDiff_; + + // HF Rings stuff + MonitorElement* l1GctHFRing1PosEtaNegEta_; + MonitorElement* l1GctHFRing1TowerCountPosEtaNegEta_; + MonitorElement* l1GctHFRing2TowerCountPosEtaNegEta_; + MonitorElement* l1GctHFRing1TowerCountPosEta_; + MonitorElement* l1GctHFRing1TowerCountNegEta_; + MonitorElement* l1GctHFRing2TowerCountPosEta_; + MonitorElement* l1GctHFRing2TowerCountNegEta_; + MonitorElement* l1GctHFRing1ETSumPosEta_; + MonitorElement* l1GctHFRing1ETSumNegEta_; + MonitorElement* l1GctHFRingRatioPosEta_; + MonitorElement* l1GctHFRingETSumOccBx_; + MonitorElement* l1GctHFRingTowerCountOccBx_; + MonitorElement* l1GctMinBiasBitHFEt_; + + MonitorElement* HFNegEnergy_; + MonitorElement* HFPosEnergy_; + MonitorElement* HFEnergy_; + + MonitorElement* DECorr_[3][8]; + + MonitorElement* centralityCorr_; + MonitorElement* centralityExtCorr_; + MonitorElement* MinBiasCorr_; + + edm::InputTag gctCenJetsDataSource_; + edm::InputTag gctForJetsDataSource_; + edm::InputTag gctTauJetsDataSource_; + edm::InputTag gctIsoTauJetsDataSource_; + edm::InputTag gctEnergySumsDataSource_; + edm::InputTag gctIsoEmDataSource_; + edm::InputTag gctNonIsoEmDataSource_; + + edm::EDGetTokenT rctSource_L1CRCollection_; + + edm::InputTag gctCenJetsEmulSource_; + edm::InputTag gctForJetsEmulSource_; + edm::InputTag gctTauJetsEmulSource_; + edm::InputTag gctIsoTauJetsEmulSource_; + edm::InputTag gctEnergySumsEmulSource_; + edm::InputTag gctIsoEmEmulSource_; + edm::InputTag gctNonIsoEmEmulSource_; + + //define Token(-s) + edm::EDGetTokenT gctIsoEmSourceDataToken_; + edm::EDGetTokenT gctNonIsoEmSourceDataToken_; + edm::EDGetTokenT gctCenJetsSourceDataToken_; + edm::EDGetTokenT gctForJetsSourceDataToken_; + edm::EDGetTokenT gctTauJetsSourceDataToken_; + edm::EDGetTokenT gctIsoTauJetsSourceDataToken_; + edm::EDGetTokenT gctEnergySumsSourceDataToken_; + edm::EDGetTokenT l1HFCountsDataToken_; + edm::EDGetTokenT l1EtMissDataToken_; + edm::EDGetTokenT l1HtMissDataToken_; + edm::EDGetTokenT l1EtHadDataToken_; + edm::EDGetTokenT l1EtTotalDataToken_; + + edm::EDGetTokenT gctIsoEmSourceEmulToken_; + edm::EDGetTokenT gctNonIsoEmSourceEmulToken_; + edm::EDGetTokenT gctCenJetsSourceEmulToken_; + edm::EDGetTokenT gctForJetsSourceEmulToken_; + edm::EDGetTokenT gctTauJetsSourceEmulToken_; + edm::EDGetTokenT gctIsoTauJetsSourceEmulToken_; + edm::EDGetTokenT gctEnergySumsSourceEmulToken_; + edm::EDGetTokenT l1HFCountsEmulToken_; + edm::EDGetTokenT l1EtMissEmulToken_; + edm::EDGetTokenT l1HtMissEmulToken_; + edm::EDGetTokenT l1EtHadEmulToken_; + edm::EDGetTokenT l1EtTotalEmulToken_; + +}; + +#endif diff --git a/DQM/L1TMonitor/python/L1THIonImp_cfi.py b/DQM/L1TMonitor/python/L1THIonImp_cfi.py new file mode 100644 index 0000000000000..071a88399fe59 --- /dev/null +++ b/DQM/L1TMonitor/python/L1THIonImp_cfi.py @@ -0,0 +1,19 @@ +import FWCore.ParameterSet.Config as cms + +l1tHIonImp = cms.EDAnalyzer("L1THIonImp", + gctCentralJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets"), + gctForwardJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets"), + gctTauJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets"), + gctEnergySumsDataSource = cms.InputTag("caloStage1LegacyFormatDigis"), + gctIsoEmDataSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm"), + gctNonIsoEmDataSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm"), + rctSource = cms.InputTag("gctDigis"), + gctCentralJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","cenJets"), + gctForwardJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","forJets"), + gctTauJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","tauJets"), + gctEnergySumsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis"), + gctIsoEmEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","isoEm"), + gctNonIsoEmEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","nonIsoEm") +) + + diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc new file mode 100644 index 0000000000000..15b70e3ffca99 --- /dev/null +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -0,0 +1,506 @@ +#include "DQM/L1TMonitor/interface/L1THIonImp.h" + +using namespace edm; + +const unsigned int JETETABINS = 22; +const float JETETAMIN = -0.5; +const float JETETAMAX = 21.5; + +const unsigned int EMETABINS = 22; +const float EMETAMIN = -0.5; +const float EMETAMAX = 21.5; + +const unsigned int METPHIBINS = 72; +const float METPHIMIN = -0.5; +const float METPHIMAX = 71.5; + +const unsigned int MHTPHIBINS = 18; +const float MHTPHIMIN = -0.5; +const float MHTPHIMAX = 17.5; + +const unsigned int PHIBINS = 18; +const float PHIMIN = -0.5; +const float PHIMAX = 17.5; + +const unsigned int OFBINS = 2; +const float OFMIN = -0.5; +const float OFMAX = 1.5; + +const unsigned int BXBINS = 5; +const float BXMIN = -2.5; +const float BXMAX = 2.5; + +// Bins for 3, 5, 6, 7, 10 and 12 bits +const unsigned int R3BINS = 8; +const float R3MIN = -0.5; +const float R3MAX = 7.5; +const unsigned int R5BINS = 32; +const float R5MIN = -0.5; +const float R5MAX = 31.5; +const unsigned int R6BINS = 64; +const float R6MIN = -0.5; +const float R6MAX = 63.5; +const unsigned int R7BINS = 128; +const float R7MIN = -0.5; +const float R7MAX = 127.5; +const unsigned int R12BINS = 4096; +const float R12MIN = -0.5; +const float R12MAX = 4095.5; + +L1THIonImp::L1THIonImp(const edm::ParameterSet & ps) : + // data + gctCenJetsDataSource_(ps.getParameter("gctCentralJetsDataSource")), + gctForJetsDataSource_(ps.getParameter("gctForwardJetsDataSource")), + gctTauJetsDataSource_(ps.getParameter("gctTauJetsDataSource")), + gctEnergySumsDataSource_(ps.getParameter("gctEnergySumsDataSource")), + gctIsoEmDataSource_(ps.getParameter("gctIsoEmDataSource")), + gctNonIsoEmDataSource_(ps.getParameter("gctNonIsoEmDataSource")), + // RCT + rctSource_L1CRCollection_( consumes(ps.getParameter< InputTag >("rctSource") )), + // emul + gctCenJetsEmulSource_(ps.getParameter("gctCentralJetsEmulSource")), + gctForJetsEmulSource_(ps.getParameter("gctForwardJetsEmulSource")), + gctTauJetsEmulSource_(ps.getParameter("gctTauJetsEmulSource")), + gctEnergySumsEmulSource_(ps.getParameter("gctEnergySumsEmulSource")), + gctIsoEmEmulSource_(ps.getParameter("gctIsoEmEmulSource")), + gctNonIsoEmEmulSource_(ps.getParameter("gctNonIsoEmEmulSource")) +{ + //set Token(-s) + gctIsoEmSourceDataToken_ = consumes(ps.getParameter("gctIsoEmDataSource")); + gctNonIsoEmSourceDataToken_ = consumes(ps.getParameter("gctNonIsoEmDataSource")); + gctCenJetsSourceDataToken_ = consumes(ps.getParameter("gctCentralJetsDataSource")); + gctForJetsSourceDataToken_ = consumes(ps.getParameter("gctForwardJetsDataSource")); + gctTauJetsSourceDataToken_ = consumes(ps.getParameter("gctTauJetsDataSource")); + gctEnergySumsSourceDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1HFCountsDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtMissDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1HtMissDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtHadDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtTotalDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + + gctIsoEmSourceEmulToken_ = consumes(ps.getParameter("gctIsoEmEmulSource")); + gctNonIsoEmSourceEmulToken_ = consumes(ps.getParameter("gctNonIsoEmEmulSource")); + gctCenJetsSourceEmulToken_ = consumes(ps.getParameter("gctCentralJetsEmulSource")); + gctForJetsSourceEmulToken_ = consumes(ps.getParameter("gctForwardJetsEmulSource")); + gctTauJetsSourceEmulToken_ = consumes(ps.getParameter("gctTauJetsEmulSource")); + gctEnergySumsSourceEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1HFCountsEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtMissEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1HtMissEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtHadEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtTotalEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); +} + +L1THIonImp::~L1THIonImp() +{ +} + +void L1THIonImp::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const&){ + + ibooker.setCurrentFolder("L1T/L1THIon"); + + l1GctCenJetsEtEtaPhi_ = ibooker.book2D("CenJetsEtEtaPhi", "CENTRAL JET E_{T}",JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctForJetsEtEtaPhi_ = ibooker.book2D("ForJetsEtEtaPhi", "FORWARD JET E_{T}", JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctTauJetsEtEtaPhi_ = ibooker.book2D("SingleTrackTriggerEtEtaPhi", "TAU JET E_{T}", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctIsoEmRankEtaPhi_ = ibooker.book2D("IsoEmRankEtaPhi", "ISO EM E_{T}", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctNonIsoEmRankEtaPhi_ = ibooker.book2D("NonIsoEmRankEtaPhi", "NON-ISO EM E_{T}", EMETABINS, EMETAMIN, EMETAMAX,PHIBINS, PHIMIN, PHIMAX); + + l1GctCenJetsOccEtaPhi_ = ibooker.book2D("CenJetsOccEtaPhi", "CENTRAL JET OCCUPANCY", JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctForJetsOccEtaPhi_ = ibooker.book2D("ForJetsOccEtaPhi", "FORWARD JET OCCUPANCY",JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctTauJetsOccEtaPhi_ = ibooker.book2D("SingleTrackTriggerOccEtaPhi", "TAU JET OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctIsoEmOccEtaPhi_ = ibooker.book2D("IsoEmOccEtaPhi", "ISO EM OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctNonIsoEmOccEtaPhi_ = ibooker.book2D("NonIsoEmOccEtaPhi", "NON-ISO EM OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + + l1GctHFRing1TowerCountPosEtaNegEta_ = ibooker.book2D("HFRing1TowerCountCorr", "HF RING1 TOWER COUNT CORRELATION +/- #eta", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountPosEtaNegEta_ = ibooker.book2D("HFRing2TowerCountCorr", "HF RING2 TOWER COUNT CORRELATION +/- #eta", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + + l1GctHFRing1TowerCountPosEta_ = ibooker.book1D("HFRing1TowerCountPosEta", "HF RING1 TOWER COUNT #eta +", R3BINS, R3MIN, R3MAX); + l1GctHFRing1TowerCountNegEta_ = ibooker.book1D("HFRing1TowerCountNegEta", "HF RING1 TOWER COUNT #eta -", R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountPosEta_ = ibooker.book1D("HFRing2TowerCountPosEta", "HF RING2 TOWER COUNT #eta +", R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountNegEta_ = ibooker.book1D("HFRing2TowerCountNegEta", "HF RING2 TOWER COUNT #eta -", R3BINS, R3MIN, R3MAX); + + l1GctHFRingTowerCountOccBx_ = ibooker.book2D("HFRingTowerCountOccBx", "HF RING TOWER COUNT PER BX",BXBINS, BXMIN, BXMAX, R3BINS, R3MIN, R3MAX); + + l1GctHFRing1PosEtaNegEta_ = ibooker.book2D("centrality and centrality ext Corr", "centrality and centrality ext E_{T} CORRELATION", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + l1GctHFRing1ETSumPosEta_ = ibooker.book1D("centrality", "centrality E_{T}", 8, -0.5, 7.5); + l1GctHFRing1ETSumNegEta_ = ibooker.book1D("centrality ext", "centrality ext E_{T}", 8, -0.5, 7.5); + l1GctHFRingETSum_ = ibooker.book1D("centrality+centralityExt Et","centrality+centralityExt E_{T}", 8, -0.5, 7.5); + l1GctHFRingETDiff_ = ibooker.book1D("centrality-centralityExt Et","centrality-centralityExt E_{T}", 8, -0.5, 7.5); + + l1GctHFRingETSumOccBx_ = ibooker.book2D("centrality OccBx","centrality PER BX",BXBINS, BXMIN, BXMAX, R3BINS, R3MIN, R3MAX); + l1GctHFRingRatioPosEta_ = ibooker.book1D("centrality centralityExt ratio","centrality centralityExt ratio", 9, -0.5, 8.5); + + l1GctMinBiasBitHFEt_ = ibooker.book1D("HI Minimum Bias bits HF Et", "HI Minimum Bias bits HF Et", 6, -0.5, 5.5); + + l1GctCenJetsRank_ = ibooker.book1D("CenJetsRank", "CENTRAL JET E_{T}", R6BINS, R6MIN, R6MAX); + l1GctForJetsRank_ = ibooker.book1D("ForJetsRank", "FORWARD JET E_{T}", R6BINS, R6MIN, R6MAX); + l1GctTauJetsRank_ = ibooker.book1D("SingleTrackTriggerRank", "Single Track Trigger E_{T}", R6BINS, R6MIN, R6MAX); + l1GctIsoEmRank_ = ibooker.book1D("IsoEmRank", "ISO EM E_{T}", R6BINS, R6MIN, R6MAX); + l1GctNonIsoEmRank_ = ibooker.book1D("NonIsoEmRank", "NON-ISO EM E_{T}", R6BINS, R6MIN, R6MAX); + + l1GctAllJetsOccRankBx_ = ibooker.book2D("AllJetsOccRankBx","ALL JETS E_{T} PER BX",BXBINS,BXMIN,BXMAX,R6BINS,R6MIN,R6MAX); + l1GctAllEmOccRankBx_ = ibooker.book2D("AllEmOccRankBx","ALL EM E_{T} PER BX",BXBINS,BXMIN,BXMAX,R6BINS,R6MIN,R6MAX); + + l1GctEtMiss_ = ibooker.book1D("EtMiss", "MET", R12BINS, R12MIN, R12MAX); + l1GctEtMissPhi_ = ibooker.book1D("EtMissPhi", "MET #phi", METPHIBINS, METPHIMIN, METPHIMAX); + l1GctEtMissOf_ = ibooker.book1D("EtMissOf", "MET OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtMissOccBx_ = ibooker.book2D("EtMissOccBx","MET PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtTotal_ = ibooker.book1D("EtTotal", "SUM E_{T}", R12BINS, R12MIN, R12MAX); + l1GctEtTotalOf_ = ibooker.book1D("EtTotalOf", "SUM E_{T} OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtTotalOccBx_ = ibooker.book2D("EtTotalOccBx","SUM E_{T} PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtHad_ = ibooker.book1D("EtHad", "H_{T}", R12BINS, R12MIN, R12MAX); + l1GctEtHadOf_ = ibooker.book1D("EtHadOf", "H_{T} OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtHadOccBx_ = ibooker.book2D("EtHadOccBx","H_{T} PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtTotalEtHadCorr_ = ibooker.book2D("EtTotalEtHadCorr", "Sum E_{T} H_{T} CORRELATION", R6BINS, R12MIN, R12MAX, R6BINS, R12MIN, R12MAX); + + HFPosEnergy_= ibooker.book1D("HF+ Energy Sum", "HF+ Energy Sum", R12BINS, R12MIN, R12MAX); + HFNegEnergy_= ibooker.book1D("HF- Energy Sum", "HF- Energy Sum", R12BINS, R12MIN, R12MAX); + HFEnergy_= ibooker.book1D("HF Energy Sum", "HF Energy Sum", R12BINS, R12MIN, R12MAX); + + ibooker.setCurrentFolder("L1TEMU/L1TEMUHIon"); + + const std::string clabel[8] = {"cenJet","forJet","single track", "isoEm", "nonIsoEm", "EtSum", "MET", "HTT"}; + const std::string olabel[3] = {"rank", "eta", "phi"}; + + unsigned int Bin[3][8] = {{64,64,64,64,64,R12BINS,R12BINS,R12BINS}, + {EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS}, + {PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,METPHIBINS,PHIBINS}}; + float Min[3][8] = {{-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, + {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, + {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}}; + float Max[3][8] = {{63.5,63.5,63.5,63.5,63.5,4095.5,4095.5,4095.5}, + {21.5,21.5,21.5,21.5,21.5,21.5,21.5,21.5}, + {17.5,17.5,17.5,17.5,17.5,17.5,71.5,17.5}}; + + for(int i=0; i<3; i++){ + for(int j=0; j<8; j++){ + DECorr_[i][j] = ibooker.book2D(clabel[j]+olabel[i]+" data vs emul", clabel[j]+olabel[i]+" data vs emul", Bin[i][j], Min[i][j], Max[i][j], Bin[i][j], Min[i][j], Max[i][j]); + } + } + + centralityCorr_=ibooker.book2D("centrality data vs emul","centrality data vs emul",8,-0.5,7.5,8,-0.5,7.5); + centralityExtCorr_=ibooker.book2D("centrality ext data vs emul","centrality ext data vs emul",8,-0.5,7.5,8,-0.5,7.5); + MinBiasCorr_ = ibooker.book2D("Minimum Bias Trigger Data vs Emul","Minimum Bias Trigger Data vs Emul",6,-0.5,5.5,6,-0.5,5.5); +} + +void L1THIonImp::dqmBeginRun(edm::Run const& iRrun, edm::EventSetup const& evSetup) { +} + +void L1THIonImp::beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& evSetup) { +} + +void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { + + edm::Handle < L1GctEmCandCollection > l1IsoEm; + edm::Handle < L1GctEmCandCollection > l1NonIsoEm; + edm::Handle < L1GctJetCandCollection > l1CenJets; + edm::Handle < L1GctJetCandCollection > l1ForJets; + edm::Handle < L1GctJetCandCollection > l1TauJets; + edm::Handle < L1GctHFRingEtSumsCollection > l1HFSums; + edm::Handle < L1GctHFBitCountsCollection > l1HFCounts; + edm::Handle < L1GctEtMissCollection > l1EtMiss; + edm::Handle < L1GctHtMissCollection > l1HtMiss; + edm::Handle < L1GctEtHadCollection > l1EtHad; + edm::Handle < L1GctEtTotalCollection > l1EtTotal; + + edm::Handle < L1GctEmCandCollection > l1IsoEmEmul; + edm::Handle < L1GctEmCandCollection > l1NonIsoEmEmul; + edm::Handle < L1GctJetCandCollection > l1CenJetsEmul; + edm::Handle < L1GctJetCandCollection > l1ForJetsEmul; + edm::Handle < L1GctJetCandCollection > l1TauJetsEmul; + edm::Handle < L1GctHFRingEtSumsCollection > l1HFSumsEmul; + edm::Handle < L1GctHFBitCountsCollection > l1HFCountsEmul; + edm::Handle < L1GctEtMissCollection > l1EtMissEmul; + edm::Handle < L1GctHtMissCollection > l1HtMissEmul; + edm::Handle < L1GctEtHadCollection > l1EtHadEmul; + edm::Handle < L1GctEtTotalCollection > l1EtTotalEmul; + + edm::Handle < L1CaloRegionCollection > rgn; + e.getByToken(rctSource_L1CRCollection_,rgn); + + e.getByToken(gctIsoEmSourceDataToken_, l1IsoEm); + e.getByToken(gctNonIsoEmSourceDataToken_, l1NonIsoEm); + e.getByToken(gctCenJetsSourceDataToken_, l1CenJets); + e.getByToken(gctForJetsSourceDataToken_, l1ForJets); + e.getByToken(gctTauJetsSourceDataToken_, l1TauJets); + e.getByToken(gctEnergySumsSourceDataToken_, l1HFSums); + e.getByToken(l1HFCountsDataToken_, l1HFCounts); + e.getByToken(l1EtMissDataToken_, l1EtMiss); + e.getByToken(l1HtMissDataToken_, l1HtMiss); + e.getByToken(l1EtHadDataToken_, l1EtHad); + e.getByToken(l1EtTotalDataToken_, l1EtTotal); + + e.getByToken(gctIsoEmSourceEmulToken_, l1IsoEmEmul); + e.getByToken(gctNonIsoEmSourceEmulToken_, l1NonIsoEmEmul); + e.getByToken(gctCenJetsSourceEmulToken_, l1CenJetsEmul); + e.getByToken(gctForJetsSourceEmulToken_, l1ForJetsEmul); + e.getByToken(gctTauJetsSourceEmulToken_, l1TauJetsEmul); + e.getByToken(gctEnergySumsSourceEmulToken_, l1HFSumsEmul); + e.getByToken(l1HFCountsEmulToken_, l1HFCountsEmul); + e.getByToken(l1EtMissEmulToken_, l1EtMissEmul); + e.getByToken(l1HtMissEmulToken_, l1HtMissEmul); + e.getByToken(l1EtHadEmulToken_, l1EtHadEmul); + e.getByToken(l1EtTotalEmulToken_, l1EtTotalEmul); + + // Fill histograms + + // Central jets + + for (L1GctJetCandCollection::const_iterator cj = l1CenJets->begin();cj != l1CenJets->end(); cj++) { + // only plot central BX + if (cj->bx()==0) { + l1GctCenJetsRank_->Fill(cj->rank()); + std::cout<<"Data: "<rank())<rank()) { + l1GctCenJetsEtEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi(),cj->rank()); + l1GctCenJetsOccEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi()); + } + } + if (cj->rank()) l1GctAllJetsOccRankBx_->Fill(cj->bx(),cj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { + if (cj->bx()==0 && j->bx()==0 && std::distance(l1CenJets->begin(), cj)==std::distance(l1CenJetsEmul->begin(),j)){ + //std::cout<Fill(cj->rank(), j->rank()); + DECorr_[1][0]->Fill(cj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][0]->Fill(cj->regionId().iphi(),j->regionId().iphi()); + } + } + } + for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { + std::cout<<"Emul: "<rank())<begin(); fj != l1ForJets->end(); fj++) { + // only plot central BX + if (fj->bx()==0) { + l1GctForJetsRank_->Fill(fj->rank()); + // only plot eta and phi maps for non-zero candidates + if (fj->rank()) { + l1GctForJetsEtEtaPhi_->Fill(fj->regionId().ieta(),fj->regionId().iphi(),fj->rank()); + l1GctForJetsOccEtaPhi_->Fill(fj->regionId().ieta(),fj->regionId().iphi()); + } + } + if (fj->rank()) l1GctAllJetsOccRankBx_->Fill(fj->bx(),fj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1ForJetsEmul->begin();j != l1ForJetsEmul->end(); j++) { + if (fj->bx()==0 && j->bx()==0 && std::distance(l1ForJets->begin(), fj)==std::distance(l1ForJetsEmul->begin(),j)){ + DECorr_[0][1]->Fill(fj->rank(), j->rank()); + DECorr_[1][1]->Fill(fj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][1]->Fill(fj->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctJetCandCollection::const_iterator tj = l1TauJets->begin(); tj != l1TauJets->end(); tj++) { + // only plot central BX + if (tj->bx()==0) { + l1GctTauJetsRank_->Fill(tj->rank()); + // only plot eta and phi maps for non-zero candidates + if (tj->rank()) { + l1GctTauJetsEtEtaPhi_->Fill(tj->regionId().ieta(),tj->regionId().iphi(),tj->rank()); + l1GctTauJetsOccEtaPhi_->Fill(tj->regionId().ieta(),tj->regionId().iphi()); + } + } + if (tj->rank()) l1GctAllJetsOccRankBx_->Fill(tj->bx(),tj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1TauJetsEmul->begin(); j!= l1TauJetsEmul->end(); j++) { + if (tj->bx()==0 && j->bx()==0 && std::distance(l1TauJets->begin(), tj)==std::distance(l1TauJetsEmul->begin(),j)){ + DECorr_[0][2]->Fill(tj->rank(), j->rank()); + DECorr_[1][2]->Fill(tj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][2]->Fill(tj->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctEtMissCollection::const_iterator met = l1EtMiss->begin(); met != l1EtMiss->end(); met++) { + // only plot central BX + if (met->bx()==0) { + if (met->overFlow() == 0 && met->et() > 0) { + //Avoid problems with met=0 candidates affecting MET_PHI plots + l1GctEtMiss_->Fill(met->et()); + l1GctEtMissPhi_->Fill(met->phi()); + } + l1GctEtMissOf_->Fill(met->overFlow()); + } + if (met->overFlow() == 0 && met->et() > 0) l1GctEtMissOccBx_->Fill(met->bx(),met->et()); // for all BX + for (L1GctEtMissCollection::const_iterator j = l1EtMissEmul->begin(); j != l1EtMissEmul->end(); j++){ + if (met->bx()==0 && j->bx()==0){ + DECorr_[0][6]->Fill(met->et(), j->et()); + DECorr_[2][6]->Fill(met->phi(),j->phi()); + } + } + } + + for (L1GctEtHadCollection::const_iterator ht = l1EtHad->begin(); ht != l1EtHad->end(); ht++) { + // only plot central BX + if (ht->bx()==0) { + l1GctEtHad_->Fill(ht->et()); + l1GctEtHadOf_->Fill(ht->overFlow()); + } + l1GctEtHadOccBx_->Fill(ht->bx(),ht->et()); // for all BX + for (L1GctEtHadCollection::const_iterator j = l1EtHadEmul->begin(); j != l1EtHadEmul->end(); j++){ + if (ht->bx()==0 && j->bx()==0){ + DECorr_[0][7]->Fill(ht->et(), j->et()); + //DECorr_[2][7]->Fill(ht->ieta(),j->ieta()); + //DECorr_[3][7]->Fill(ht->iphi(),j->iphi()); + } + } + } + + for (L1GctEtTotalCollection::const_iterator et = l1EtTotal->begin(); et != l1EtTotal->end(); et++) { + // only plot central BX + if (et->bx()==0) { + l1GctEtTotal_->Fill(et->et()); + l1GctEtTotalOf_->Fill(et->overFlow()); + } + l1GctEtTotalOccBx_->Fill(et->bx(),et->et()); // for all BX + for (L1GctEtTotalCollection::const_iterator j = l1EtTotalEmul->begin(); j != l1EtTotalEmul->end(); j++){ + if (et->bx()==0 && j->bx()==0){ + DECorr_[0][5]->Fill(et->et(), j->et()); + //DECorr_[2][5]->Fill(et->eta(),j->eta()); + //DECorr_[3][5]->Fill(et->iphi(),j->iphi()); + } + } + } + + for (L1GctEmCandCollection::const_iterator ie=l1IsoEm->begin(); ie!=l1IsoEm->end(); ie++) { + // only plot central BX + if (ie->bx()==0) { + l1GctIsoEmRank_->Fill(ie->rank()); + // only plot eta and phi maps for non-zero candidates + if (ie->rank()){ + l1GctIsoEmRankEtaPhi_->Fill(ie->regionId().ieta(),ie->regionId().iphi(),ie->rank()); + l1GctIsoEmOccEtaPhi_->Fill(ie->regionId().ieta(),ie->regionId().iphi()); + } + } + if (ie->rank()) l1GctAllEmOccRankBx_->Fill(ie->bx(),ie->rank()); // for all BX + for (L1GctEmCandCollection::const_iterator j = l1IsoEmEmul->begin(); j!= l1IsoEmEmul->end(); j++) { + if (ie->bx()==0 && j->bx()==0 && std::distance(l1IsoEm->begin(), ie)==std::distance(l1IsoEmEmul->begin(),j)){ + DECorr_[0][3]->Fill(ie->rank(), j->rank()); + DECorr_[1][3]->Fill(ie->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][3]->Fill(ie->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctEmCandCollection::const_iterator ne=l1NonIsoEm->begin(); ne!=l1NonIsoEm->end(); ne++) { + // only plot central BX + if (ne->bx()==0) { + l1GctNonIsoEmRank_->Fill(ne->rank()); + // only plot eta and phi maps for non-zero candidates + if (ne->rank()){ + l1GctNonIsoEmRankEtaPhi_->Fill(ne->regionId().ieta(),ne->regionId().iphi(),ne->rank()); + l1GctNonIsoEmOccEtaPhi_->Fill(ne->regionId().ieta(),ne->regionId().iphi()); + } + } + if (ne->rank()) l1GctAllEmOccRankBx_->Fill(ne->bx(),ne->rank()); // for all BX + for (L1GctEmCandCollection::const_iterator j = l1NonIsoEmEmul->begin(); j!= l1NonIsoEmEmul->end(); j++) { + if (ne->bx()==0 && j->bx()==0 && std::distance(l1NonIsoEm->begin(), ne)==std::distance(l1NonIsoEmEmul->begin(),j)){ + DECorr_[0][4]->Fill(ne->rank(), j->rank()); + DECorr_[1][4]->Fill(ne->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][4]->Fill(ne->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctHFBitCountsCollection::const_iterator hfc=l1HFCounts->begin(); hfc!=l1HFCounts->end(); hfc++){ + // only plot central BX + if (hfc->bx()==0) { + // Individual ring counts + l1GctHFRing1TowerCountPosEta_->Fill(hfc->bitCount(0)); + l1GctHFRing1TowerCountNegEta_->Fill(hfc->bitCount(1)); + l1GctHFRing2TowerCountPosEta_->Fill(hfc->bitCount(2)); + l1GctHFRing2TowerCountNegEta_->Fill(hfc->bitCount(3)); + // Correlate positive and negative eta + l1GctHFRing1TowerCountPosEtaNegEta_->Fill(hfc->bitCount(0),hfc->bitCount(1)); + l1GctHFRing2TowerCountPosEtaNegEta_->Fill(hfc->bitCount(2),hfc->bitCount(3)); + } + // Occupancy vs BX + for (unsigned i=0; i<4; i++){ + l1GctHFRingTowerCountOccBx_->Fill(hfc->bx(),hfc->bitCount(i)); + } + } + + for (L1GctHFRingEtSumsCollection::const_iterator hfs=l1HFSums->begin(); hfs!=l1HFSums->end(); hfs++){ + if (hfs->bx()==0) { + l1GctHFRing1ETSumPosEta_->Fill(hfs->etSum(0)); + l1GctHFRing1ETSumNegEta_->Fill(hfs->etSum(1)); + l1GctHFRingETSum_->Fill(hfs->etSum(0)+hfs->etSum(1)); + l1GctHFRingETDiff_->Fill(abs(hfs->etSum(0)-hfs->etSum(1))); + if (hfs->etSum(1)!=0) l1GctHFRingRatioPosEta_->Fill((hfs->etSum(0))/(hfs->etSum(1))); + l1GctHFRing1PosEtaNegEta_->Fill(hfs->etSum(0),hfs->etSum(1)); + std::vector bit = SortMinBiasBit(hfs->etSum(2),hfs->etSum(3)); + for(std::vector::const_iterator it=bit.begin(); it !=bit.end(); it++){ + l1GctMinBiasBitHFEt_->Fill(it - bit.begin(),*it); + } + } + for (unsigned i=0; i<4; i++){ + l1GctHFRingETSumOccBx_->Fill(hfs->bx(),hfs->etSum(i)); + } + for (L1GctHFRingEtSumsCollection::const_iterator j=l1HFSumsEmul->begin(); j!=l1HFSumsEmul->end(); j++){ + if (hfs->bx()==0 && j->bx()==0 && std::distance(l1HFSums->begin(),hfs)==std::distance(l1HFSumsEmul->begin(),j)){ + centralityCorr_->Fill(hfs->etSum(0),j->etSum(0)); + centralityExtCorr_->Fill(hfs->etSum(1),j->etSum(1)); + std::vector dbit = SortMinBiasBit(hfs->etSum(2),hfs->etSum(3)); + std::vector ebit = SortMinBiasBit(j->etSum(2),j->etSum(3)); + } + } + } + + for (L1CaloRegionCollection::const_iterator it=rgn->begin(); it!=rgn->end(); it++){ + if (it -> bx()==0){ + int totm = 0; + int totp = 0; + int tot = 0; + if (it->gctEta() < 4){ + totm += it->et(); + } + if (it->gctEta() > 17){ + totp += it->et(); + } + if (it->gctEta() < 4 && it->gctEta() > 17){ + tot += it->et(); + } + HFNegEnergy_->Fill(totm); + HFPosEnergy_->Fill(totp); + HFEnergy_->Fill(totm+totp); + } + } +} + +std::vector L1THIonImp::SortMinBiasBit(uint16_t a, uint16_t b) { + std::vector Bit; + + if ((a+1)/4>0.5){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + if (a==2 || a==3 || a==6 || a==7){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + Bit.push_back(a%2); + + if ((b+1)/4>0.5){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + if (b==2 || b==3 || b==6 || b==7){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + Bit.push_back(b%2); + + return Bit; +} From 86541ca9e64cc8a3edc88f1ddb9bea6abc8bc81f Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 06:13:04 +0100 Subject: [PATCH 13/46] update SealModule --- DQM/L1TMonitor/src/SealModule.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/DQM/L1TMonitor/src/SealModule.cc b/DQM/L1TMonitor/src/SealModule.cc index 3490adba0eaf1..a97f20e896ae5 100644 --- a/DQM/L1TMonitor/src/SealModule.cc +++ b/DQM/L1TMonitor/src/SealModule.cc @@ -60,5 +60,8 @@ DEFINE_FWK_MODULE(L1TdeRCT); #include "DQM/L1TMonitor/interface/L1TdeCSCTF.h" DEFINE_FWK_MODULE(L1TdeCSCTF); +#include "DQM/L1TMonitor/interface/L1THIonImp.h" +DEFINE_FWK_MODULE(L1THIonImp); + //#include "DQM/L1TMonitor/interface/L1GtHwValidation.h" //DEFINE_FWK_MODULE(L1GtHwValidation); From 7d5cb5ac0f8ef433406ab29a1296f31b6ac42c5c Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 15:51:33 +0100 Subject: [PATCH 14/46] fix llvm compiler errors --- DQM/L1TMonitor/src/L1THIonImp.cc | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 15b70e3ffca99..488a481d390c2 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -14,10 +14,6 @@ const unsigned int METPHIBINS = 72; const float METPHIMIN = -0.5; const float METPHIMAX = 71.5; -const unsigned int MHTPHIBINS = 18; -const float MHTPHIMIN = -0.5; -const float MHTPHIMAX = 17.5; - const unsigned int PHIBINS = 18; const float PHIMIN = -0.5; const float PHIMAX = 17.5; @@ -34,15 +30,9 @@ const float BXMAX = 2.5; const unsigned int R3BINS = 8; const float R3MIN = -0.5; const float R3MAX = 7.5; -const unsigned int R5BINS = 32; -const float R5MIN = -0.5; -const float R5MAX = 31.5; const unsigned int R6BINS = 64; const float R6MIN = -0.5; const float R6MAX = 63.5; -const unsigned int R7BINS = 128; -const float R7MIN = -0.5; -const float R7MAX = 127.5; const unsigned int R12BINS = 4096; const float R12MIN = -0.5; const float R12MAX = 4095.5; From 1b91fb948564bb3409ea5b3e90b8670cd39f135f Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 14:43:28 -0600 Subject: [PATCH 15/46] lean couts --- DQM/L1TMonitor/src/L1THIonImp.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 488a481d390c2..7a53abdce390b 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -243,7 +243,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { // only plot central BX if (cj->bx()==0) { l1GctCenJetsRank_->Fill(cj->rank()); - std::cout<<"Data: "<rank())<rank()) { l1GctCenJetsEtEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi(),cj->rank()); @@ -261,7 +260,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { } } for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { - std::cout<<"Emul: "<rank())< Date: Wed, 18 Nov 2015 17:11:10 -0600 Subject: [PATCH 16/46] drop useless HF total energy calculation --- DQM/L1TMonitor/src/L1THIonImp.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 7a53abdce390b..d4825a07f0c1b 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -449,9 +449,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { if (it->gctEta() > 17){ totp += it->et(); } - if (it->gctEta() < 4 && it->gctEta() > 17){ - tot += it->et(); - } HFNegEnergy_->Fill(totm); HFPosEnergy_->Fill(totp); HFEnergy_->Fill(totm+totp); From 92bc8ed2e1c000b8c28a22fdbd4a92202548764d Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 17:50:31 -0600 Subject: [PATCH 17/46] remove useless headers --- DQM/L1TMonitor/interface/L1THIonImp.h | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1THIonImp.h b/DQM/L1TMonitor/interface/L1THIonImp.h index 17992ac5a7d83..f65c76d39f732 100644 --- a/DQM/L1TMonitor/interface/L1THIonImp.h +++ b/DQM/L1TMonitor/interface/L1THIonImp.h @@ -1,26 +1,12 @@ #ifndef L1THIonImp_H #define L1THIonImp_H -#include -#include - - -#include -#include -#include - - // user include files -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/ServiceRegistry/interface/Service.h" - // DQM #include "DQMServices/Core/interface/DQMStore.h" #include "DQMServices/Core/interface/MonitorElement.h" From a94e0194cc61000d449d17b982250afeefc9a42b Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 17:51:03 -0600 Subject: [PATCH 18/46] remove tot --- DQM/L1TMonitor/src/L1THIonImp.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index d4825a07f0c1b..c77d2ab489a08 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -442,7 +442,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { if (it -> bx()==0){ int totm = 0; int totp = 0; - int tot = 0; if (it->gctEta() < 4){ totm += it->et(); } From 7355b1622460b9a18eb45af10ed069db1d17c22b Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 23:14:06 -0600 Subject: [PATCH 19/46] don't need HIonImp in offline --- DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py | 1 + 1 file changed, 1 insertion(+) diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index d39b9b47ce070..5b0f291bc73a5 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -122,6 +122,7 @@ #l1TriggerOnline.remove(l1tMonitorOnline) # l1tMonitorStage1Online.remove(bxTiming) +l1Stage1HwValEmulatorMonitor.remove(l1tHIonImp) #l1tMonitorOnline.remove(l1tDttf) #l1tMonitorOnline.remove(l1tCsctf) #l1tMonitorOnline.remove(l1tRpctf) From fbc16af4003763a13010553298a406b0279afca3 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 00:14:29 -0600 Subject: [PATCH 20/46] scrap the previous commit --- DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py | 1 - 1 file changed, 1 deletion(-) diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index 5b0f291bc73a5..d39b9b47ce070 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -122,7 +122,6 @@ #l1TriggerOnline.remove(l1tMonitorOnline) # l1tMonitorStage1Online.remove(bxTiming) -l1Stage1HwValEmulatorMonitor.remove(l1tHIonImp) #l1tMonitorOnline.remove(l1tDttf) #l1tMonitorOnline.remove(l1tCsctf) #l1tMonitorOnline.remove(l1tRpctf) From 2d8b97cf7b8e7aaefd917e9b895fd2a8feabaa28 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:23:12 -0600 Subject: [PATCH 21/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index ee51cada3fdd4..0d434eec7c57b 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,6 +83,9 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; + //MonitorElement* runId_; + //MonitorElement* lumisecId_; + //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; //MonitorElement* haloDelEta113; From a3c2f5014d54b8be1bc9b45a21bede53ca025241 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:24:56 -0600 Subject: [PATCH 22/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 0d434eec7c57b..609b314432fac 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -85,7 +85,8 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { //MonitorElement* runId_; //MonitorElement* lumisecId_; - + + //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; //MonitorElement* haloDelEta113; From ae52915b21e885a2781db4a6727e61488a0d1788 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:26:25 -0600 Subject: [PATCH 23/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 609b314432fac..2e0ad2048b103 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -85,8 +85,8 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { //MonitorElement* runId_; //MonitorElement* lumisecId_; - - + + //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; //MonitorElement* haloDelEta113; From e9cb8ec43dff904b0977daeced7684c2d6ad1943 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:27:48 -0600 Subject: [PATCH 24/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 2e0ad2048b103..7ec9fcbdbce16 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,10 +83,10 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; - //MonitorElement* runId_; - //MonitorElement* lumisecId_; - - + //MonitorElement* runId_; + //MonitorElement* runId_; + //MonitorElement* lumisecId_; + //MonitorElement* lumisecId_; + + //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; //MonitorElement* haloDelEta113; From c1275ec4682ac900a6d29d93508a7c99e851e040 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:29:05 -0600 Subject: [PATCH 25/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 7ec9fcbdbce16..5832be555794e 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,8 +83,8 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; - //MonitorElement* runId_; + //MonitorElement* runId_; - //MonitorElement* lumisecId_; + //MonitorElement* lumisecId_; + //MonitorElement* runId_; + //MonitorElement* lumisecId_; //MonitorElement* haloDelEta112; From 6f04ae88eca0918c22baaefc175ba9e586dbe7b4 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:30:40 -0600 Subject: [PATCH 26/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 5832be555794e..4fd6712074f7c 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,9 +83,9 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; - //MonitorElement* runId_; - //MonitorElement* lumisecId_; - + //MonitorElement* runId_; + //MonitorElement* lumisecId_; + //MonitorElement* haloDelEta112; //MonitorElement* haloDelEta12; From 2245beeb766850083224f68edb43eb8c3a83035e Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Thu, 19 Nov 2015 16:31:55 -0600 Subject: [PATCH 27/46] fix merge conflict --- DQM/L1TMonitor/interface/L1TCSCTF.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DQM/L1TMonitor/interface/L1TCSCTF.h b/DQM/L1TMonitor/interface/L1TCSCTF.h index 4fd6712074f7c..6412e9fbc054a 100755 --- a/DQM/L1TMonitor/interface/L1TCSCTF.h +++ b/DQM/L1TMonitor/interface/L1TCSCTF.h @@ -83,7 +83,7 @@ class L1TCSCTF : public thread_unsafe::DQMEDAnalyzer { MonitorElement* csctfoccupancies; MonitorElement* csctfoccupancies_H; - //MonitorElement* runId_; + //MonitorElement* runId_; //MonitorElement* lumisecId_; From b518bec3753054457c51a48d783eb9df2bbe08c6 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Thu, 19 Nov 2015 23:41:26 +0100 Subject: [PATCH 28/46] make sure it plot run1 Digis --- .../python/clients/l1tstage1_dqm_sourceclient-live_cfg.py | 2 ++ DQM/L1TMonitor/python/L1TMonitor_cff.py | 1 + DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py | 1 + 3 files changed, 4 insertions(+) diff --git a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py index b813504a34444..b5774dca59b32 100644 --- a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py @@ -133,6 +133,8 @@ #process.l1tMonitorStage1Online.remove(process.bxTiming) process.l1tMonitorStage1Online.remove(process.l1tBPTX) +process.l1tMonitorStage1Online.remove(process.l1tRctRun1) + #process.l1tMonitorOnline.remove(process.l1tLtc) #process.l1tMonitorStage1Online.remove(process.l1tDttf) diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 03c5552f5aba2..4fd6c50bed392 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -176,6 +176,7 @@ #l1tBPTX + #l1tRate + l1tStage1Layer2Seq + + l1tRctRun1 + l1tRctSeq ) diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index d39b9b47ce070..819cb3c9ec321 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -45,6 +45,7 @@ from DQMOffline.L1Trigger.L1TRate_Offline_cfi import * from DQMOffline.L1Trigger.L1TSync_Offline_cfi import * from DQMOffline.L1Trigger.L1TEmulatorMonitorOffline_cff import * +l1TdeRCT.rctSourceData = 'gctDigis' # DQM Offline Step 2 cfi/cff imports from DQMOffline.L1Trigger.L1TEmulatorMonitorClientOffline_cff import * From c926d66f34e38033c45377e7b04a4a236fbee52d Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Tue, 24 Nov 2015 21:56:10 +0100 Subject: [PATCH 29/46] put eras and customise switch between run1 and stage1 --- .../python/RawToDigi_Data_cff.py | 18 +++++ .../l1tstage1_dqm_sourceclient-live_cfg.py | 3 +- ...tage1emulator_dqm_sourceclient-live_cfg.py | 3 + .../python/L1TEmulatorMonitor_cff.py | 4 +- DQM/L1TMonitor/python/L1TMonitor_cff.py | 6 +- DQM/L1TMonitor/src/L1THIonImp.cc | 4 +- .../python/L1TriggerDqmOffline_cff.py | 75 ++++++++++++++++++- .../python/L1HardwareValidation_cff.py | 1 + L1Trigger/L1TCommon/python/customsPostLS1.py | 41 ++++++++++ 9 files changed, 146 insertions(+), 9 deletions(-) diff --git a/Configuration/StandardSequences/python/RawToDigi_Data_cff.py b/Configuration/StandardSequences/python/RawToDigi_Data_cff.py index 201205abdcc15..68b6b6adad84f 100644 --- a/Configuration/StandardSequences/python/RawToDigi_Data_cff.py +++ b/Configuration/StandardSequences/python/RawToDigi_Data_cff.py @@ -41,3 +41,21 @@ #False by default ecalDigis.DoRegional = False +## Make changes for Run 2 +## +def _modifyRawToDigiForStage1Trigger( theProcess ) : + """ + Modifies the RawToDigi sequence if using the Stage 1 L1 trigger + """ + theProcess.load("L1Trigger.L1TCommon.l1tRawToDigi_cfi") + theProcess.load("L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi") + # Note that this function is applied before the objects in this file are added + # to the process. So things declared in this file should be used "bare", i.e. + # not with "theProcess." in front of them. caloStage1Digis and caloStage1LegacyFormatDigis + # are an exception because they are not declared in this file but loaded into the + # process in the "load" statements above. + L1RawToDigiSeq = cms.Sequence( gctDigis + theProcess.caloStage1Digis + theProcess.caloStage1LegacyFormatDigis) + RawToDigi.replace( gctDigis, L1RawToDigiSeq ) + +# A unique name is required for this object, so I'll call it "modifyForRun2_" +modifyConfigurationStandardSequencesRawToDigiForRun2_ = eras.stage1L1Trigger.makeProcessModifier( _modifyRawToDigiForStage1Trigger ) diff --git a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py index b5774dca59b32..eacdcf34dc24f 100644 --- a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py @@ -91,7 +91,7 @@ #process.l1tMonitorPath = cms.Path(process.l1tMonitorStage1Online) process.l1tMonitorClientPath = cms.Path(process.l1tMonitorStage1Client) - +process.stage1UnpackPath = cms.Path(process.caloStage1Digis+process.caloStage1LegacyFormatDigis) # process.l1tMonitorEndPath = cms.EndPath(process.l1tMonitorEndPathSeq) @@ -106,6 +106,7 @@ # process.schedule = cms.Schedule(process.rawToDigiPath, + process.stage1UnpackPath, process.l1tMonitorPath, process.l1tSyncPath, process.l1tMonitorClientPath, diff --git a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py index d263d5882821a..ed20af06bab17 100644 --- a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py @@ -79,6 +79,8 @@ #process.load("L1TriggerConfig.RCTConfigProducers.l1RCTOmdsFedVectorProducer_cfi") #process.valRctDigis.getFedsFromOmds = cms.bool(True) +process.stage1UnpackerPath = cms.Path(process.caloStage1Digis+process.caloStage1LegacyFormatDigis) + # process.l1EmulatorMonitorClientPath = cms.Path(process.l1EmulatorMonitorClient) @@ -89,6 +91,7 @@ # process.schedule = cms.Schedule(process.rawToDigiPath, + process.stage1UnpackerPath, process.l1HwValEmulatorMonitorPath, process.l1EmulatorMonitorClientPath, process.l1EmulatorMonitorEndPath) diff --git a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py index b107caecd5c72..dba77fb76cc55 100644 --- a/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TEmulatorMonitor_cff.py @@ -117,8 +117,8 @@ l1Stage1HwValEmulatorMonitor = cms.Sequence( rctDigis* - caloStage1Digis* - caloStage1LegacyFormatDigis* + #caloStage1Digis* + #caloStage1LegacyFormatDigis* l1GtUnpack* L1HardwareValidationforStage1 + l1EmulatorMonitorStage1 diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 4fd6c50bed392..44d7f42e0ae9d 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -170,13 +170,13 @@ l1tGmt + l1tGt + rctDigis * - caloStage1Digis * - caloStage1LegacyFormatDigis* + #caloStage1Digis * + #caloStage1LegacyFormatDigis* l1ExtraStage1DqmSeq + #l1tBPTX + #l1tRate + l1tStage1Layer2Seq + - l1tRctRun1 + + #l1tRctRun1 + l1tRctSeq ) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index c77d2ab489a08..29996f63d7be2 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -155,13 +155,13 @@ void L1THIonImp::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm const std::string clabel[8] = {"cenJet","forJet","single track", "isoEm", "nonIsoEm", "EtSum", "MET", "HTT"}; const std::string olabel[3] = {"rank", "eta", "phi"}; - unsigned int Bin[3][8] = {{64,64,64,64,64,R12BINS,R12BINS,R12BINS}, + unsigned int Bin[3][8] = {{64,64,64,64,64,128,128,128}, {EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS}, {PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,METPHIBINS,PHIBINS}}; float Min[3][8] = {{-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}}; - float Max[3][8] = {{63.5,63.5,63.5,63.5,63.5,4095.5,4095.5,4095.5}, + float Max[3][8] = {{63.5,63.5,63.5,63.5,63.5,1023.5,1023.5,1023.5}, {21.5,21.5,21.5,21.5,21.5,21.5,21.5,21.5}, {17.5,17.5,17.5,17.5,17.5,17.5,71.5,17.5}}; diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index 819cb3c9ec321..7dc9d50265429 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -45,13 +45,86 @@ from DQMOffline.L1Trigger.L1TRate_Offline_cfi import * from DQMOffline.L1Trigger.L1TSync_Offline_cfi import * from DQMOffline.L1Trigger.L1TEmulatorMonitorOffline_cff import * -l1TdeRCT.rctSourceData = 'gctDigis' # DQM Offline Step 2 cfi/cff imports from DQMOffline.L1Trigger.L1TEmulatorMonitorClientOffline_cff import * from DQMOffline.L1Trigger.L1TEmulatorMonitorClientOffline_cff import * +# Stage1 customization +l1TdeRCT.rctSourceData = 'gctDigis' +l1TdeRCTfromRCT.rctSourceData = 'gctDigis' +l1tRct.rctSource = 'gctDigis' +l1tRctfromRCT.rctSource = 'gctDigis' +l1tPUM.regionSource = cms.InputTag("gctDigis") + +l1tStage1Layer2.gctCentralJetsSource = cms.InputTag("gctDigis","cenJets") +l1tStage1Layer2.gctForwardJetsSource = cms.InputTag("gctDigis","forJets") +l1tStage1Layer2.gctTauJetsSource = cms.InputTag("gctDigis","tauJets") +l1tStage1Layer2.gctIsoTauJetsSource = cms.InputTag("","") +l1tStage1Layer2.gctEnergySumsSource = cms.InputTag("gctDigis") +l1tStage1Layer2.gctIsoEmSource = cms.InputTag("gctDigis","isoEm") +l1tStage1Layer2.gctNonIsoEmSource = cms.InputTag("gctDigis","nonIsoEm") +l1tStage1Layer2.stage1_layer2_ = cms.bool(False) + +dqmL1ExtraParticlesStage1.etTotalSource = 'gctDigis' +dqmL1ExtraParticlesStage1.nonIsolatedEmSource = 'gctDigis:nonIsoEm' +dqmL1ExtraParticlesStage1.etMissSource = 'gctDigis' +dqmL1ExtraParticlesStage1.htMissSource = 'gctDigis' +dqmL1ExtraParticlesStage1.forwardJetSource = 'gctDigis:forJets' +dqmL1ExtraParticlesStage1.centralJetSource = 'gctDigis:cenJets' +dqmL1ExtraParticlesStage1.tauJetSource = 'gctDigis:tauJets' +dqmL1ExtraParticlesStage1.isolatedEmSource = 'gctDigis:isoEm' +dqmL1ExtraParticlesStage1.etHadSource = 'gctDigis' +dqmL1ExtraParticlesStage1.hfRingEtSumsSource = 'gctDigis' +dqmL1ExtraParticlesStage1.hfRingBitCountsSource = 'gctDigis' +l1ExtraDQMStage1.stage1_layer2_ = cms.bool(False) +l1ExtraDQMStage1.L1ExtraIsoTauJetSource_ = cms.InputTag("fake") + +l1compareforstage1.GCTsourceData = cms.InputTag("gctDigis") +l1compareforstage1.GCTsourceEmul = cms.InputTag("valGctDigis") +l1compareforstage1.stage1_layer2_ = cms.bool(False) + +valStage1GtDigis.GctInputTag = 'gctDigis' + +from Configuration.StandardSequences.Eras import eras + +eras.stage1L1Trigger.toModify(l1TdeRCT, rctSourceData = 'caloStage1Digis') +eras.stage1L1Trigger.toModify(l1TdeRCTfromRCT, rctSourceData = 'rctDigis') +eras.stage1L1Trigger.toModify(l1tRct, rctSource = 'caloStage1Digis') +eras.stage1L1Trigger.toModify(l1tRctfromRCT, rctSource = 'rctDigis') +eras.stage1L1Trigger.toModify(l1tPUM, regionSource = cms.InputTag("rctDigis")) + +eras.stage1L1Trigger.toModify(l1tStage1Layer2, stage1_layer2_ = cms.bool(True)) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctCentralJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctForwardJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctIsoTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm")) +eras.stage1L1Trigger.toModify(l1tStage1Layer2, gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm")) + +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, etTotalSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, nonIsolatedEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, etMissSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, htMissSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, forwardJetSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, centralJetSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, tauJetSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, isoTauJetSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, isolatedEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, etHadSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, hfRingEtSumsSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( dqmL1ExtraParticlesStage1, hfRingBitCountsSource = cms.InputTag("caloStage1LegacyFormatDigis") ) +eras.stage1L1Trigger.toModify( l1ExtraDQMStage1, stage1_layer2_ = cms.bool(True)) +eras.stage1L1Trigger.toModify( l1ExtraDQMStage1, L1ExtraIsoTauJetSource_ = cms.InputTag("dqmL1ExtraParticlesStage1", "IsoTau")) + +eras.stage1L1Trigger.toModify(l1compareforstage1, GCTsourceData = cms.InputTag("caloStage1LegacyFormatDigis")) +eras.stage1L1Trigger.toModify(l1compareforstage1, GCTsourceEmul = cms.InputTag("valCaloStage1LegacyFormatDigis")) +eras.stage1L1Trigger.toModify(l1compareforstage1, stage1_layer2_ = cms.bool(True)) + +eras.stage1L1Trigger.toModify(valStage1GtDigis, GctInputTag = 'caloStage1LegacyFormatDigis') + # # define sequences # diff --git a/L1Trigger/HardwareValidation/python/L1HardwareValidation_cff.py b/L1Trigger/HardwareValidation/python/L1HardwareValidation_cff.py index be181c90d5e32..50ed871f73425 100644 --- a/L1Trigger/HardwareValidation/python/L1HardwareValidation_cff.py +++ b/L1Trigger/HardwareValidation/python/L1HardwareValidation_cff.py @@ -56,6 +56,7 @@ deHcal+ deRct+ deStage1Layer2+ + deGct+ deDt+ deCsc+ deCsctfTracks + diff --git a/L1Trigger/L1TCommon/python/customsPostLS1.py b/L1Trigger/L1TCommon/python/customsPostLS1.py index 9c2789cef9d72..0ba64e961ea00 100644 --- a/L1Trigger/L1TCommon/python/customsPostLS1.py +++ b/L1Trigger/L1TCommon/python/customsPostLS1.py @@ -171,3 +171,44 @@ def customiseL1RawToDigiFor74XMC(process): if hasattr(process,'hltCaloStage1Digis'): process.hltCaloStage1Digis.FWId = cms.uint32(0xff000000) return process + +# dustomization for offline DQM +def customiseStage1ForOfflineDQM(process): + + process.load('DQMOffline.L1Trigger.L1TriggerDqmOffline_cff') + + if hasattr(process, 'l1tMonitorStage1Online'): + process.l1tRct.rctSource = 'caloStage1Digis' + process.l1tRctfromRCT.rctSource = 'rctDigis' + process.l1tPUM.regionSource = cms.InputTag("rctDigis") + process.l1tStage1Layer2.stage1_layer2_ = cms.bool(True) + process.l1tStage1Layer2.gctCentralJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets") + process.l1tStage1Layer2.gctForwardJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets") + process.l1tStage1Layer2.gctTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets") + process.l1tStage1Layer2.gctIsoTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets") + process.l1tStage1Layer2.gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis") + process.l1tStage1Layer2.gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm") + process.l1tStage1Layer2.gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm") + process.dqmL1ExtraParticlesStage1.etTotalSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.nonIsolatedEmSource = 'caloStage1LegacyFormatDigis:nonIsoEm' + process.dqmL1ExtraParticlesStage1.etMissSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.htMissSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.forwardJetSource = 'caloStage1LegacyFormatDigis:forJets' + process.dqmL1ExtraParticlesStage1.centralJetSource = 'caloStage1LegacyFormatDigis:cenJets' + process.dqmL1ExtraParticlesStage1.tauJetSource = 'caloStage1LegacyFormatDigis:tauJets' + process.dqmL1ExtraParticlesStage1.isolatedEmSource = 'caloStage1LegacyFormatDigis:isoEm' + process.dqmL1ExtraParticlesStage1.etHadSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.hfRingEtSumsSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.hfRingBitCountsSource = 'caloStage1LegacyFormatDigis' + process.l1ExtraDQMStage1.stage1_layer2_ = cms.bool(True) + process.l1ExtraDQMStage1.L1ExtraIsoTauJetSource_ = cms.InputTag("dqmL1ExtraParticlesStage1", "IsoTau") + + if hasattr(process, 'l1Stage1HwValEmulatorMonitor'): + process.l1TdeRCT.rctSourceData = 'caloStage1Digis' + process.l1TdeRCTfromRCT.rctSourceData = 'rctDigis' + process.l1compareforstage1.GCTsourceData = cms.InputTag("caloStage1LegacyFormatDigis") + process.l1compareforstage1.GCTsourceEmul = cms.InputTag("valCaloStage1LegacyFormatDigis") + process.l1compareforstage1.stage1_layer2_ = cms.bool(True) + process.valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' + + return process From 7703e1df31ec2384f5e2159bbaca3977c86754f6 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Wed, 25 Nov 2015 00:49:25 +0100 Subject: [PATCH 30/46] change customise to postLS1Customs --- L1Trigger/L1TCommon/python/customsPostLS1.py | 41 ----------------- .../Configuration/python/postLS1Customs.py | 44 +++++++++++++++++++ 2 files changed, 44 insertions(+), 41 deletions(-) diff --git a/L1Trigger/L1TCommon/python/customsPostLS1.py b/L1Trigger/L1TCommon/python/customsPostLS1.py index 0ba64e961ea00..9c2789cef9d72 100644 --- a/L1Trigger/L1TCommon/python/customsPostLS1.py +++ b/L1Trigger/L1TCommon/python/customsPostLS1.py @@ -171,44 +171,3 @@ def customiseL1RawToDigiFor74XMC(process): if hasattr(process,'hltCaloStage1Digis'): process.hltCaloStage1Digis.FWId = cms.uint32(0xff000000) return process - -# dustomization for offline DQM -def customiseStage1ForOfflineDQM(process): - - process.load('DQMOffline.L1Trigger.L1TriggerDqmOffline_cff') - - if hasattr(process, 'l1tMonitorStage1Online'): - process.l1tRct.rctSource = 'caloStage1Digis' - process.l1tRctfromRCT.rctSource = 'rctDigis' - process.l1tPUM.regionSource = cms.InputTag("rctDigis") - process.l1tStage1Layer2.stage1_layer2_ = cms.bool(True) - process.l1tStage1Layer2.gctCentralJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets") - process.l1tStage1Layer2.gctForwardJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets") - process.l1tStage1Layer2.gctTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets") - process.l1tStage1Layer2.gctIsoTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets") - process.l1tStage1Layer2.gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis") - process.l1tStage1Layer2.gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm") - process.l1tStage1Layer2.gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm") - process.dqmL1ExtraParticlesStage1.etTotalSource = 'caloStage1LegacyFormatDigis' - process.dqmL1ExtraParticlesStage1.nonIsolatedEmSource = 'caloStage1LegacyFormatDigis:nonIsoEm' - process.dqmL1ExtraParticlesStage1.etMissSource = 'caloStage1LegacyFormatDigis' - process.dqmL1ExtraParticlesStage1.htMissSource = 'caloStage1LegacyFormatDigis' - process.dqmL1ExtraParticlesStage1.forwardJetSource = 'caloStage1LegacyFormatDigis:forJets' - process.dqmL1ExtraParticlesStage1.centralJetSource = 'caloStage1LegacyFormatDigis:cenJets' - process.dqmL1ExtraParticlesStage1.tauJetSource = 'caloStage1LegacyFormatDigis:tauJets' - process.dqmL1ExtraParticlesStage1.isolatedEmSource = 'caloStage1LegacyFormatDigis:isoEm' - process.dqmL1ExtraParticlesStage1.etHadSource = 'caloStage1LegacyFormatDigis' - process.dqmL1ExtraParticlesStage1.hfRingEtSumsSource = 'caloStage1LegacyFormatDigis' - process.dqmL1ExtraParticlesStage1.hfRingBitCountsSource = 'caloStage1LegacyFormatDigis' - process.l1ExtraDQMStage1.stage1_layer2_ = cms.bool(True) - process.l1ExtraDQMStage1.L1ExtraIsoTauJetSource_ = cms.InputTag("dqmL1ExtraParticlesStage1", "IsoTau") - - if hasattr(process, 'l1Stage1HwValEmulatorMonitor'): - process.l1TdeRCT.rctSourceData = 'caloStage1Digis' - process.l1TdeRCTfromRCT.rctSourceData = 'rctDigis' - process.l1compareforstage1.GCTsourceData = cms.InputTag("caloStage1LegacyFormatDigis") - process.l1compareforstage1.GCTsourceEmul = cms.InputTag("valCaloStage1LegacyFormatDigis") - process.l1compareforstage1.stage1_layer2_ = cms.bool(True) - process.valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' - - return process diff --git a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py index 6d58c3f3b52df..f089c6534d87e 100644 --- a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py +++ b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py @@ -194,6 +194,50 @@ def customise_DQM_25ns(process): # Switch the default decision of the HCAL noise filter if hasattr(process,'HBHENoiseFilterResultProducer'): process.HBHENoiseFilterResultProducer.defaultDecision = cms.string("HBHENoiseFilterResultRun2Loose") + + # Switch to Stage1 Digi + process.load("L1Trigger.L1TCommon.l1tRawToDigi_cfi") + process.load("L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi") + if hasattr(process, 'RawToDigi'): + process.L1RawToDigiSeq = cms.Sequence(process.gctDigis+process.caloStage1Digis+process.caloStage1LegacyFormatDigis) + process.RawToDigi.replace(process.gctDigis, process.L1RawToDigiSeq) + + process.load('DQMOffline.L1Trigger.L1TriggerDqmOffline_cff') + + if hasattr(process, 'l1tMonitorStage1Online'): + process.l1tRct.rctSource = 'caloStage1Digis' + process.l1tRctfromRCT.rctSource = 'rctDigis' + process.l1tPUM.regionSource = cms.InputTag("rctDigis") + process.l1tStage1Layer2.stage1_layer2_ = cms.bool(True) + process.l1tStage1Layer2.gctCentralJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets") + process.l1tStage1Layer2.gctForwardJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets") + process.l1tStage1Layer2.gctTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets") + process.l1tStage1Layer2.gctIsoTauJetsSource = cms.InputTag("caloStage1LegacyFormatDigis","isoTauJets") + process.l1tStage1Layer2.gctEnergySumsSource = cms.InputTag("caloStage1LegacyFormatDigis") + process.l1tStage1Layer2.gctIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm") + process.l1tStage1Layer2.gctNonIsoEmSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm") + process.dqmL1ExtraParticlesStage1.etTotalSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.nonIsolatedEmSource = 'caloStage1LegacyFormatDigis:nonIsoEm' + process.dqmL1ExtraParticlesStage1.etMissSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.htMissSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.forwardJetSource = 'caloStage1LegacyFormatDigis:forJets' + process.dqmL1ExtraParticlesStage1.centralJetSource = 'caloStage1LegacyFormatDigis:cenJets' + process.dqmL1ExtraParticlesStage1.tauJetSource = 'caloStage1LegacyFormatDigis:tauJets' + process.dqmL1ExtraParticlesStage1.isolatedEmSource = 'caloStage1LegacyFormatDigis:isoEm' + process.dqmL1ExtraParticlesStage1.etHadSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.hfRingEtSumsSource = 'caloStage1LegacyFormatDigis' + process.dqmL1ExtraParticlesStage1.hfRingBitCountsSource = 'caloStage1LegacyFormatDigis' + process.l1ExtraDQMStage1.stage1_layer2_ = cms.bool(True) + process.l1ExtraDQMStage1.L1ExtraIsoTauJetSource_ = cms.InputTag("dqmL1ExtraParticlesStage1", "IsoTau") + + if hasattr(process, 'l1Stage1HwValEmulatorMonitor'): + process.l1TdeRCT.rctSourceData = 'caloStage1Digis' + process.l1TdeRCTfromRCT.rctSourceData = 'rctDigis' + process.l1compareforstage1.GCTsourceData = cms.InputTag("caloStage1LegacyFormatDigis") + process.l1compareforstage1.GCTsourceEmul = cms.InputTag("valCaloStage1LegacyFormatDigis") + process.l1compareforstage1.stage1_layer2_ = cms.bool(True) + process.valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' + return process From a2eb2d9b32474613a0e537d96d833fdb7d4665f7 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Tue, 24 Nov 2015 18:42:49 -0600 Subject: [PATCH 31/46] fix merge conflict --- SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py index f089c6534d87e..5315b19578d5a 100644 --- a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py +++ b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py @@ -194,7 +194,7 @@ def customise_DQM_25ns(process): # Switch the default decision of the HCAL noise filter if hasattr(process,'HBHENoiseFilterResultProducer'): process.HBHENoiseFilterResultProducer.defaultDecision = cms.string("HBHENoiseFilterResultRun2Loose") - + #Empty place-holder # Switch to Stage1 Digi process.load("L1Trigger.L1TCommon.l1tRawToDigi_cfi") process.load("L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi") From 79dd34ea9cd0f377144377217da10c832474a185 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Tue, 24 Nov 2015 18:44:25 -0600 Subject: [PATCH 32/46] fix merge conflict --- SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py index 5315b19578d5a..031f6e31d3fae 100644 --- a/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py +++ b/SLHCUpgradeSimulations/Configuration/python/postLS1Customs.py @@ -191,6 +191,7 @@ def customise_DQM(process): def customise_DQM_25ns(process): + #Empty place-holder # Switch the default decision of the HCAL noise filter if hasattr(process,'HBHENoiseFilterResultProducer'): process.HBHENoiseFilterResultProducer.defaultDecision = cms.string("HBHENoiseFilterResultRun2Loose") @@ -203,7 +204,6 @@ def customise_DQM_25ns(process): process.RawToDigi.replace(process.gctDigis, process.L1RawToDigiSeq) process.load('DQMOffline.L1Trigger.L1TriggerDqmOffline_cff') - if hasattr(process, 'l1tMonitorStage1Online'): process.l1tRct.rctSource = 'caloStage1Digis' process.l1tRctfromRCT.rctSource = 'rctDigis' From b1870bf624f7aad7ba2b1e24d6b5ff4306ef8a13 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 19:45:27 -0600 Subject: [PATCH 33/46] fix --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 447b2f6c53b42..d1417c74a566f 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -68,7 +68,7 @@ valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("simCaloStage1Digis:HFRingSums") valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") -#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From a292e72eda890bada2c0c7a06c292031daead004 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:30:10 -0600 Subject: [PATCH 34/46] fix RelVal crash --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 1 + 1 file changed, 1 insertion(+) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index d1417c74a566f..2511a8a71a6e0 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -69,6 +69,7 @@ valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From ec7e74e16229f905dc5d2483281bed966a7fe0c5 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:35:06 -0600 Subject: [PATCH 35/46] get caloParam from global tag --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 2511a8a71a6e0..2736937312080 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -68,7 +68,7 @@ valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("simCaloStage1Digis:HFRingSums") valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") -from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator From 7925df03f612abd3c076a0d7c9ff2ca4b4e8e0a8 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:40:55 -0600 Subject: [PATCH 36/46] fix merge conflict --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 2736937312080..2511a8a71a6e0 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -68,7 +68,7 @@ valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("simCaloStage1Digis:HFRingSums") valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") -#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * +from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # DT TP emulator From 4d540a5158d511d7213e7a6e09d8d650b1f5381d Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Sun, 15 Nov 2015 21:43:00 -0600 Subject: [PATCH 37/46] fix merge conflict --- L1Trigger/Configuration/python/ValL1Emulator_cff.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/L1Trigger/Configuration/python/ValL1Emulator_cff.py b/L1Trigger/Configuration/python/ValL1Emulator_cff.py index 2511a8a71a6e0..af0976e0a646e 100644 --- a/L1Trigger/Configuration/python/ValL1Emulator_cff.py +++ b/L1Trigger/Configuration/python/ValL1Emulator_cff.py @@ -55,6 +55,7 @@ valGctDigis.preSamples = cms.uint32(0) valGctDigis.postSamples = cms.uint32(0) +from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * # Stage1Layer2 emulator from L1Trigger.L1TCalorimeter.simRctUpgradeFormatDigis_cfi import * simRctUpgradeFormatDigis.regionTag = cms.InputTag("gctDigis") @@ -68,8 +69,7 @@ valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("simCaloStage1Digis:HFRingSums") valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("simCaloStage1Digis:HFBitCounts") -from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * -from L1Trigger.L1TCalorimeter.caloConfigStage1PP_cfi import * +#from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import * # DT TP emulator from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import * From 1e79072f1a9cb78ddac86c83e18b7faf588f0c53 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 04:48:11 +0100 Subject: [PATCH 38/46] add stage1 HIon monitoring --- DQM/L1TMonitor/interface/L1THIonImp.h | 165 ++++++++ DQM/L1TMonitor/python/L1THIonImp_cfi.py | 19 + DQM/L1TMonitor/src/L1THIonImp.cc | 506 ++++++++++++++++++++++++ 3 files changed, 690 insertions(+) create mode 100644 DQM/L1TMonitor/interface/L1THIonImp.h create mode 100644 DQM/L1TMonitor/python/L1THIonImp_cfi.py create mode 100644 DQM/L1TMonitor/src/L1THIonImp.cc diff --git a/DQM/L1TMonitor/interface/L1THIonImp.h b/DQM/L1TMonitor/interface/L1THIonImp.h new file mode 100644 index 0000000000000..17992ac5a7d83 --- /dev/null +++ b/DQM/L1TMonitor/interface/L1THIonImp.h @@ -0,0 +1,165 @@ +#ifndef L1THIonImp_H +#define L1THIonImp_H + +#include +#include + + +#include +#include +#include + + +// user include files +#include "FWCore/Framework/interface/Frameworkfwd.h" +#include "FWCore/Framework/interface/EDAnalyzer.h" + +#include "FWCore/Framework/interface/Event.h" +#include "FWCore/Framework/interface/MakerMacros.h" + +#include "FWCore/ParameterSet/interface/ParameterSet.h" + +#include "FWCore/ServiceRegistry/interface/Service.h" + +// DQM +#include "DQMServices/Core/interface/DQMStore.h" +#include "DQMServices/Core/interface/MonitorElement.h" +#include "DataFormats/L1GlobalCaloTrigger/interface/L1GctCollections.h" +#include "DataFormats/L1CaloTrigger/interface/L1CaloCollections.h" +#include "DataFormats/L1CaloTrigger/interface/L1CaloRegionDetId.h" + +#include "DQMServices/Core/interface/DQMEDAnalyzer.h" + +class L1THIonImp : public DQMEDAnalyzer { + +public: + +// Constructor + L1THIonImp(const edm::ParameterSet& ps); + +// Destructor + virtual ~L1THIonImp(); + +protected: +// Analyze + void analyze(const edm::Event& e, const edm::EventSetup& c); + + virtual void dqmBeginRun(const edm::Run&, const edm::EventSetup&); + virtual void bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const&) override ; + virtual void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&); + //virtual std::vector SortMinBiasBit(std::vector, std::vector); + virtual std::vector SortMinBiasBit(uint16_t, uint16_t); + +private: + // ----------member data --------------------------- + + // Jet and EM stuff + MonitorElement* l1GctCenJetsEtEtaPhi_; + MonitorElement* l1GctForJetsEtEtaPhi_; + MonitorElement* l1GctTauJetsEtEtaPhi_; + MonitorElement* l1GctIsoEmRankEtaPhi_; + MonitorElement* l1GctNonIsoEmRankEtaPhi_; + + MonitorElement* l1GctCenJetsOccEtaPhi_; + MonitorElement* l1GctForJetsOccEtaPhi_; + MonitorElement* l1GctTauJetsOccEtaPhi_; + MonitorElement* l1GctIsoEmOccEtaPhi_; + MonitorElement* l1GctNonIsoEmOccEtaPhi_; + + MonitorElement* l1GctCenJetsRank_; + MonitorElement* l1GctForJetsRank_; + MonitorElement* l1GctTauJetsRank_; + MonitorElement* l1GctIsoEmRank_; + MonitorElement* l1GctNonIsoEmRank_; + + MonitorElement* l1GctAllJetsOccRankBx_; + MonitorElement* l1GctAllEmOccRankBx_; + + // Energy sums stuff + MonitorElement* l1GctEtMiss_; + MonitorElement* l1GctEtMissPhi_; + MonitorElement* l1GctEtMissOf_; + MonitorElement* l1GctEtMissOccBx_; + MonitorElement* l1GctEtTotal_; + MonitorElement* l1GctEtTotalOf_; + MonitorElement* l1GctEtTotalOccBx_; + MonitorElement* l1GctEtHad_; + MonitorElement* l1GctEtHadOf_; + MonitorElement* l1GctEtHadOccBx_; + MonitorElement* l1GctEtTotalEtHadCorr_; + MonitorElement* l1GctHFRingETSum_; + MonitorElement* l1GctHFRingETDiff_; + + // HF Rings stuff + MonitorElement* l1GctHFRing1PosEtaNegEta_; + MonitorElement* l1GctHFRing1TowerCountPosEtaNegEta_; + MonitorElement* l1GctHFRing2TowerCountPosEtaNegEta_; + MonitorElement* l1GctHFRing1TowerCountPosEta_; + MonitorElement* l1GctHFRing1TowerCountNegEta_; + MonitorElement* l1GctHFRing2TowerCountPosEta_; + MonitorElement* l1GctHFRing2TowerCountNegEta_; + MonitorElement* l1GctHFRing1ETSumPosEta_; + MonitorElement* l1GctHFRing1ETSumNegEta_; + MonitorElement* l1GctHFRingRatioPosEta_; + MonitorElement* l1GctHFRingETSumOccBx_; + MonitorElement* l1GctHFRingTowerCountOccBx_; + MonitorElement* l1GctMinBiasBitHFEt_; + + MonitorElement* HFNegEnergy_; + MonitorElement* HFPosEnergy_; + MonitorElement* HFEnergy_; + + MonitorElement* DECorr_[3][8]; + + MonitorElement* centralityCorr_; + MonitorElement* centralityExtCorr_; + MonitorElement* MinBiasCorr_; + + edm::InputTag gctCenJetsDataSource_; + edm::InputTag gctForJetsDataSource_; + edm::InputTag gctTauJetsDataSource_; + edm::InputTag gctIsoTauJetsDataSource_; + edm::InputTag gctEnergySumsDataSource_; + edm::InputTag gctIsoEmDataSource_; + edm::InputTag gctNonIsoEmDataSource_; + + edm::EDGetTokenT rctSource_L1CRCollection_; + + edm::InputTag gctCenJetsEmulSource_; + edm::InputTag gctForJetsEmulSource_; + edm::InputTag gctTauJetsEmulSource_; + edm::InputTag gctIsoTauJetsEmulSource_; + edm::InputTag gctEnergySumsEmulSource_; + edm::InputTag gctIsoEmEmulSource_; + edm::InputTag gctNonIsoEmEmulSource_; + + //define Token(-s) + edm::EDGetTokenT gctIsoEmSourceDataToken_; + edm::EDGetTokenT gctNonIsoEmSourceDataToken_; + edm::EDGetTokenT gctCenJetsSourceDataToken_; + edm::EDGetTokenT gctForJetsSourceDataToken_; + edm::EDGetTokenT gctTauJetsSourceDataToken_; + edm::EDGetTokenT gctIsoTauJetsSourceDataToken_; + edm::EDGetTokenT gctEnergySumsSourceDataToken_; + edm::EDGetTokenT l1HFCountsDataToken_; + edm::EDGetTokenT l1EtMissDataToken_; + edm::EDGetTokenT l1HtMissDataToken_; + edm::EDGetTokenT l1EtHadDataToken_; + edm::EDGetTokenT l1EtTotalDataToken_; + + edm::EDGetTokenT gctIsoEmSourceEmulToken_; + edm::EDGetTokenT gctNonIsoEmSourceEmulToken_; + edm::EDGetTokenT gctCenJetsSourceEmulToken_; + edm::EDGetTokenT gctForJetsSourceEmulToken_; + edm::EDGetTokenT gctTauJetsSourceEmulToken_; + edm::EDGetTokenT gctIsoTauJetsSourceEmulToken_; + edm::EDGetTokenT gctEnergySumsSourceEmulToken_; + edm::EDGetTokenT l1HFCountsEmulToken_; + edm::EDGetTokenT l1EtMissEmulToken_; + edm::EDGetTokenT l1HtMissEmulToken_; + edm::EDGetTokenT l1EtHadEmulToken_; + edm::EDGetTokenT l1EtTotalEmulToken_; + +}; + +#endif diff --git a/DQM/L1TMonitor/python/L1THIonImp_cfi.py b/DQM/L1TMonitor/python/L1THIonImp_cfi.py new file mode 100644 index 0000000000000..071a88399fe59 --- /dev/null +++ b/DQM/L1TMonitor/python/L1THIonImp_cfi.py @@ -0,0 +1,19 @@ +import FWCore.ParameterSet.Config as cms + +l1tHIonImp = cms.EDAnalyzer("L1THIonImp", + gctCentralJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","cenJets"), + gctForwardJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","forJets"), + gctTauJetsDataSource = cms.InputTag("caloStage1LegacyFormatDigis","tauJets"), + gctEnergySumsDataSource = cms.InputTag("caloStage1LegacyFormatDigis"), + gctIsoEmDataSource = cms.InputTag("caloStage1LegacyFormatDigis","isoEm"), + gctNonIsoEmDataSource = cms.InputTag("caloStage1LegacyFormatDigis","nonIsoEm"), + rctSource = cms.InputTag("gctDigis"), + gctCentralJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","cenJets"), + gctForwardJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","forJets"), + gctTauJetsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","tauJets"), + gctEnergySumsEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis"), + gctIsoEmEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","isoEm"), + gctNonIsoEmEmulSource = cms.InputTag("valCaloStage1LegacyFormatDigis","nonIsoEm") +) + + diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc new file mode 100644 index 0000000000000..15b70e3ffca99 --- /dev/null +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -0,0 +1,506 @@ +#include "DQM/L1TMonitor/interface/L1THIonImp.h" + +using namespace edm; + +const unsigned int JETETABINS = 22; +const float JETETAMIN = -0.5; +const float JETETAMAX = 21.5; + +const unsigned int EMETABINS = 22; +const float EMETAMIN = -0.5; +const float EMETAMAX = 21.5; + +const unsigned int METPHIBINS = 72; +const float METPHIMIN = -0.5; +const float METPHIMAX = 71.5; + +const unsigned int MHTPHIBINS = 18; +const float MHTPHIMIN = -0.5; +const float MHTPHIMAX = 17.5; + +const unsigned int PHIBINS = 18; +const float PHIMIN = -0.5; +const float PHIMAX = 17.5; + +const unsigned int OFBINS = 2; +const float OFMIN = -0.5; +const float OFMAX = 1.5; + +const unsigned int BXBINS = 5; +const float BXMIN = -2.5; +const float BXMAX = 2.5; + +// Bins for 3, 5, 6, 7, 10 and 12 bits +const unsigned int R3BINS = 8; +const float R3MIN = -0.5; +const float R3MAX = 7.5; +const unsigned int R5BINS = 32; +const float R5MIN = -0.5; +const float R5MAX = 31.5; +const unsigned int R6BINS = 64; +const float R6MIN = -0.5; +const float R6MAX = 63.5; +const unsigned int R7BINS = 128; +const float R7MIN = -0.5; +const float R7MAX = 127.5; +const unsigned int R12BINS = 4096; +const float R12MIN = -0.5; +const float R12MAX = 4095.5; + +L1THIonImp::L1THIonImp(const edm::ParameterSet & ps) : + // data + gctCenJetsDataSource_(ps.getParameter("gctCentralJetsDataSource")), + gctForJetsDataSource_(ps.getParameter("gctForwardJetsDataSource")), + gctTauJetsDataSource_(ps.getParameter("gctTauJetsDataSource")), + gctEnergySumsDataSource_(ps.getParameter("gctEnergySumsDataSource")), + gctIsoEmDataSource_(ps.getParameter("gctIsoEmDataSource")), + gctNonIsoEmDataSource_(ps.getParameter("gctNonIsoEmDataSource")), + // RCT + rctSource_L1CRCollection_( consumes(ps.getParameter< InputTag >("rctSource") )), + // emul + gctCenJetsEmulSource_(ps.getParameter("gctCentralJetsEmulSource")), + gctForJetsEmulSource_(ps.getParameter("gctForwardJetsEmulSource")), + gctTauJetsEmulSource_(ps.getParameter("gctTauJetsEmulSource")), + gctEnergySumsEmulSource_(ps.getParameter("gctEnergySumsEmulSource")), + gctIsoEmEmulSource_(ps.getParameter("gctIsoEmEmulSource")), + gctNonIsoEmEmulSource_(ps.getParameter("gctNonIsoEmEmulSource")) +{ + //set Token(-s) + gctIsoEmSourceDataToken_ = consumes(ps.getParameter("gctIsoEmDataSource")); + gctNonIsoEmSourceDataToken_ = consumes(ps.getParameter("gctNonIsoEmDataSource")); + gctCenJetsSourceDataToken_ = consumes(ps.getParameter("gctCentralJetsDataSource")); + gctForJetsSourceDataToken_ = consumes(ps.getParameter("gctForwardJetsDataSource")); + gctTauJetsSourceDataToken_ = consumes(ps.getParameter("gctTauJetsDataSource")); + gctEnergySumsSourceDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1HFCountsDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtMissDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1HtMissDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtHadDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + l1EtTotalDataToken_ = consumes(ps.getParameter("gctEnergySumsDataSource")); + + gctIsoEmSourceEmulToken_ = consumes(ps.getParameter("gctIsoEmEmulSource")); + gctNonIsoEmSourceEmulToken_ = consumes(ps.getParameter("gctNonIsoEmEmulSource")); + gctCenJetsSourceEmulToken_ = consumes(ps.getParameter("gctCentralJetsEmulSource")); + gctForJetsSourceEmulToken_ = consumes(ps.getParameter("gctForwardJetsEmulSource")); + gctTauJetsSourceEmulToken_ = consumes(ps.getParameter("gctTauJetsEmulSource")); + gctEnergySumsSourceEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1HFCountsEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtMissEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1HtMissEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtHadEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); + l1EtTotalEmulToken_ = consumes(ps.getParameter("gctEnergySumsEmulSource")); +} + +L1THIonImp::~L1THIonImp() +{ +} + +void L1THIonImp::bookHistograms(DQMStore::IBooker &ibooker, edm::Run const&, edm::EventSetup const&){ + + ibooker.setCurrentFolder("L1T/L1THIon"); + + l1GctCenJetsEtEtaPhi_ = ibooker.book2D("CenJetsEtEtaPhi", "CENTRAL JET E_{T}",JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctForJetsEtEtaPhi_ = ibooker.book2D("ForJetsEtEtaPhi", "FORWARD JET E_{T}", JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctTauJetsEtEtaPhi_ = ibooker.book2D("SingleTrackTriggerEtEtaPhi", "TAU JET E_{T}", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctIsoEmRankEtaPhi_ = ibooker.book2D("IsoEmRankEtaPhi", "ISO EM E_{T}", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctNonIsoEmRankEtaPhi_ = ibooker.book2D("NonIsoEmRankEtaPhi", "NON-ISO EM E_{T}", EMETABINS, EMETAMIN, EMETAMAX,PHIBINS, PHIMIN, PHIMAX); + + l1GctCenJetsOccEtaPhi_ = ibooker.book2D("CenJetsOccEtaPhi", "CENTRAL JET OCCUPANCY", JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctForJetsOccEtaPhi_ = ibooker.book2D("ForJetsOccEtaPhi", "FORWARD JET OCCUPANCY",JETETABINS, JETETAMIN, JETETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctTauJetsOccEtaPhi_ = ibooker.book2D("SingleTrackTriggerOccEtaPhi", "TAU JET OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctIsoEmOccEtaPhi_ = ibooker.book2D("IsoEmOccEtaPhi", "ISO EM OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + l1GctNonIsoEmOccEtaPhi_ = ibooker.book2D("NonIsoEmOccEtaPhi", "NON-ISO EM OCCUPANCY", EMETABINS, EMETAMIN, EMETAMAX, PHIBINS, PHIMIN, PHIMAX); + + l1GctHFRing1TowerCountPosEtaNegEta_ = ibooker.book2D("HFRing1TowerCountCorr", "HF RING1 TOWER COUNT CORRELATION +/- #eta", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountPosEtaNegEta_ = ibooker.book2D("HFRing2TowerCountCorr", "HF RING2 TOWER COUNT CORRELATION +/- #eta", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + + l1GctHFRing1TowerCountPosEta_ = ibooker.book1D("HFRing1TowerCountPosEta", "HF RING1 TOWER COUNT #eta +", R3BINS, R3MIN, R3MAX); + l1GctHFRing1TowerCountNegEta_ = ibooker.book1D("HFRing1TowerCountNegEta", "HF RING1 TOWER COUNT #eta -", R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountPosEta_ = ibooker.book1D("HFRing2TowerCountPosEta", "HF RING2 TOWER COUNT #eta +", R3BINS, R3MIN, R3MAX); + l1GctHFRing2TowerCountNegEta_ = ibooker.book1D("HFRing2TowerCountNegEta", "HF RING2 TOWER COUNT #eta -", R3BINS, R3MIN, R3MAX); + + l1GctHFRingTowerCountOccBx_ = ibooker.book2D("HFRingTowerCountOccBx", "HF RING TOWER COUNT PER BX",BXBINS, BXMIN, BXMAX, R3BINS, R3MIN, R3MAX); + + l1GctHFRing1PosEtaNegEta_ = ibooker.book2D("centrality and centrality ext Corr", "centrality and centrality ext E_{T} CORRELATION", R3BINS, R3MIN, R3MAX, R3BINS, R3MIN, R3MAX); + l1GctHFRing1ETSumPosEta_ = ibooker.book1D("centrality", "centrality E_{T}", 8, -0.5, 7.5); + l1GctHFRing1ETSumNegEta_ = ibooker.book1D("centrality ext", "centrality ext E_{T}", 8, -0.5, 7.5); + l1GctHFRingETSum_ = ibooker.book1D("centrality+centralityExt Et","centrality+centralityExt E_{T}", 8, -0.5, 7.5); + l1GctHFRingETDiff_ = ibooker.book1D("centrality-centralityExt Et","centrality-centralityExt E_{T}", 8, -0.5, 7.5); + + l1GctHFRingETSumOccBx_ = ibooker.book2D("centrality OccBx","centrality PER BX",BXBINS, BXMIN, BXMAX, R3BINS, R3MIN, R3MAX); + l1GctHFRingRatioPosEta_ = ibooker.book1D("centrality centralityExt ratio","centrality centralityExt ratio", 9, -0.5, 8.5); + + l1GctMinBiasBitHFEt_ = ibooker.book1D("HI Minimum Bias bits HF Et", "HI Minimum Bias bits HF Et", 6, -0.5, 5.5); + + l1GctCenJetsRank_ = ibooker.book1D("CenJetsRank", "CENTRAL JET E_{T}", R6BINS, R6MIN, R6MAX); + l1GctForJetsRank_ = ibooker.book1D("ForJetsRank", "FORWARD JET E_{T}", R6BINS, R6MIN, R6MAX); + l1GctTauJetsRank_ = ibooker.book1D("SingleTrackTriggerRank", "Single Track Trigger E_{T}", R6BINS, R6MIN, R6MAX); + l1GctIsoEmRank_ = ibooker.book1D("IsoEmRank", "ISO EM E_{T}", R6BINS, R6MIN, R6MAX); + l1GctNonIsoEmRank_ = ibooker.book1D("NonIsoEmRank", "NON-ISO EM E_{T}", R6BINS, R6MIN, R6MAX); + + l1GctAllJetsOccRankBx_ = ibooker.book2D("AllJetsOccRankBx","ALL JETS E_{T} PER BX",BXBINS,BXMIN,BXMAX,R6BINS,R6MIN,R6MAX); + l1GctAllEmOccRankBx_ = ibooker.book2D("AllEmOccRankBx","ALL EM E_{T} PER BX",BXBINS,BXMIN,BXMAX,R6BINS,R6MIN,R6MAX); + + l1GctEtMiss_ = ibooker.book1D("EtMiss", "MET", R12BINS, R12MIN, R12MAX); + l1GctEtMissPhi_ = ibooker.book1D("EtMissPhi", "MET #phi", METPHIBINS, METPHIMIN, METPHIMAX); + l1GctEtMissOf_ = ibooker.book1D("EtMissOf", "MET OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtMissOccBx_ = ibooker.book2D("EtMissOccBx","MET PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtTotal_ = ibooker.book1D("EtTotal", "SUM E_{T}", R12BINS, R12MIN, R12MAX); + l1GctEtTotalOf_ = ibooker.book1D("EtTotalOf", "SUM E_{T} OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtTotalOccBx_ = ibooker.book2D("EtTotalOccBx","SUM E_{T} PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtHad_ = ibooker.book1D("EtHad", "H_{T}", R12BINS, R12MIN, R12MAX); + l1GctEtHadOf_ = ibooker.book1D("EtHadOf", "H_{T} OVERFLOW", OFBINS, OFMIN, OFMAX); + l1GctEtHadOccBx_ = ibooker.book2D("EtHadOccBx","H_{T} PER BX",BXBINS,BXMIN,BXMAX,R12BINS,R12MIN,R12MAX); + + l1GctEtTotalEtHadCorr_ = ibooker.book2D("EtTotalEtHadCorr", "Sum E_{T} H_{T} CORRELATION", R6BINS, R12MIN, R12MAX, R6BINS, R12MIN, R12MAX); + + HFPosEnergy_= ibooker.book1D("HF+ Energy Sum", "HF+ Energy Sum", R12BINS, R12MIN, R12MAX); + HFNegEnergy_= ibooker.book1D("HF- Energy Sum", "HF- Energy Sum", R12BINS, R12MIN, R12MAX); + HFEnergy_= ibooker.book1D("HF Energy Sum", "HF Energy Sum", R12BINS, R12MIN, R12MAX); + + ibooker.setCurrentFolder("L1TEMU/L1TEMUHIon"); + + const std::string clabel[8] = {"cenJet","forJet","single track", "isoEm", "nonIsoEm", "EtSum", "MET", "HTT"}; + const std::string olabel[3] = {"rank", "eta", "phi"}; + + unsigned int Bin[3][8] = {{64,64,64,64,64,R12BINS,R12BINS,R12BINS}, + {EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS,EMETABINS}, + {PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,PHIBINS,METPHIBINS,PHIBINS}}; + float Min[3][8] = {{-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, + {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}, + {-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5}}; + float Max[3][8] = {{63.5,63.5,63.5,63.5,63.5,4095.5,4095.5,4095.5}, + {21.5,21.5,21.5,21.5,21.5,21.5,21.5,21.5}, + {17.5,17.5,17.5,17.5,17.5,17.5,71.5,17.5}}; + + for(int i=0; i<3; i++){ + for(int j=0; j<8; j++){ + DECorr_[i][j] = ibooker.book2D(clabel[j]+olabel[i]+" data vs emul", clabel[j]+olabel[i]+" data vs emul", Bin[i][j], Min[i][j], Max[i][j], Bin[i][j], Min[i][j], Max[i][j]); + } + } + + centralityCorr_=ibooker.book2D("centrality data vs emul","centrality data vs emul",8,-0.5,7.5,8,-0.5,7.5); + centralityExtCorr_=ibooker.book2D("centrality ext data vs emul","centrality ext data vs emul",8,-0.5,7.5,8,-0.5,7.5); + MinBiasCorr_ = ibooker.book2D("Minimum Bias Trigger Data vs Emul","Minimum Bias Trigger Data vs Emul",6,-0.5,5.5,6,-0.5,5.5); +} + +void L1THIonImp::dqmBeginRun(edm::Run const& iRrun, edm::EventSetup const& evSetup) { +} + +void L1THIonImp::beginLuminosityBlock(const edm::LuminosityBlock& iLumi, const edm::EventSetup& evSetup) { +} + +void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { + + edm::Handle < L1GctEmCandCollection > l1IsoEm; + edm::Handle < L1GctEmCandCollection > l1NonIsoEm; + edm::Handle < L1GctJetCandCollection > l1CenJets; + edm::Handle < L1GctJetCandCollection > l1ForJets; + edm::Handle < L1GctJetCandCollection > l1TauJets; + edm::Handle < L1GctHFRingEtSumsCollection > l1HFSums; + edm::Handle < L1GctHFBitCountsCollection > l1HFCounts; + edm::Handle < L1GctEtMissCollection > l1EtMiss; + edm::Handle < L1GctHtMissCollection > l1HtMiss; + edm::Handle < L1GctEtHadCollection > l1EtHad; + edm::Handle < L1GctEtTotalCollection > l1EtTotal; + + edm::Handle < L1GctEmCandCollection > l1IsoEmEmul; + edm::Handle < L1GctEmCandCollection > l1NonIsoEmEmul; + edm::Handle < L1GctJetCandCollection > l1CenJetsEmul; + edm::Handle < L1GctJetCandCollection > l1ForJetsEmul; + edm::Handle < L1GctJetCandCollection > l1TauJetsEmul; + edm::Handle < L1GctHFRingEtSumsCollection > l1HFSumsEmul; + edm::Handle < L1GctHFBitCountsCollection > l1HFCountsEmul; + edm::Handle < L1GctEtMissCollection > l1EtMissEmul; + edm::Handle < L1GctHtMissCollection > l1HtMissEmul; + edm::Handle < L1GctEtHadCollection > l1EtHadEmul; + edm::Handle < L1GctEtTotalCollection > l1EtTotalEmul; + + edm::Handle < L1CaloRegionCollection > rgn; + e.getByToken(rctSource_L1CRCollection_,rgn); + + e.getByToken(gctIsoEmSourceDataToken_, l1IsoEm); + e.getByToken(gctNonIsoEmSourceDataToken_, l1NonIsoEm); + e.getByToken(gctCenJetsSourceDataToken_, l1CenJets); + e.getByToken(gctForJetsSourceDataToken_, l1ForJets); + e.getByToken(gctTauJetsSourceDataToken_, l1TauJets); + e.getByToken(gctEnergySumsSourceDataToken_, l1HFSums); + e.getByToken(l1HFCountsDataToken_, l1HFCounts); + e.getByToken(l1EtMissDataToken_, l1EtMiss); + e.getByToken(l1HtMissDataToken_, l1HtMiss); + e.getByToken(l1EtHadDataToken_, l1EtHad); + e.getByToken(l1EtTotalDataToken_, l1EtTotal); + + e.getByToken(gctIsoEmSourceEmulToken_, l1IsoEmEmul); + e.getByToken(gctNonIsoEmSourceEmulToken_, l1NonIsoEmEmul); + e.getByToken(gctCenJetsSourceEmulToken_, l1CenJetsEmul); + e.getByToken(gctForJetsSourceEmulToken_, l1ForJetsEmul); + e.getByToken(gctTauJetsSourceEmulToken_, l1TauJetsEmul); + e.getByToken(gctEnergySumsSourceEmulToken_, l1HFSumsEmul); + e.getByToken(l1HFCountsEmulToken_, l1HFCountsEmul); + e.getByToken(l1EtMissEmulToken_, l1EtMissEmul); + e.getByToken(l1HtMissEmulToken_, l1HtMissEmul); + e.getByToken(l1EtHadEmulToken_, l1EtHadEmul); + e.getByToken(l1EtTotalEmulToken_, l1EtTotalEmul); + + // Fill histograms + + // Central jets + + for (L1GctJetCandCollection::const_iterator cj = l1CenJets->begin();cj != l1CenJets->end(); cj++) { + // only plot central BX + if (cj->bx()==0) { + l1GctCenJetsRank_->Fill(cj->rank()); + std::cout<<"Data: "<rank())<rank()) { + l1GctCenJetsEtEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi(),cj->rank()); + l1GctCenJetsOccEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi()); + } + } + if (cj->rank()) l1GctAllJetsOccRankBx_->Fill(cj->bx(),cj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { + if (cj->bx()==0 && j->bx()==0 && std::distance(l1CenJets->begin(), cj)==std::distance(l1CenJetsEmul->begin(),j)){ + //std::cout<Fill(cj->rank(), j->rank()); + DECorr_[1][0]->Fill(cj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][0]->Fill(cj->regionId().iphi(),j->regionId().iphi()); + } + } + } + for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { + std::cout<<"Emul: "<rank())<begin(); fj != l1ForJets->end(); fj++) { + // only plot central BX + if (fj->bx()==0) { + l1GctForJetsRank_->Fill(fj->rank()); + // only plot eta and phi maps for non-zero candidates + if (fj->rank()) { + l1GctForJetsEtEtaPhi_->Fill(fj->regionId().ieta(),fj->regionId().iphi(),fj->rank()); + l1GctForJetsOccEtaPhi_->Fill(fj->regionId().ieta(),fj->regionId().iphi()); + } + } + if (fj->rank()) l1GctAllJetsOccRankBx_->Fill(fj->bx(),fj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1ForJetsEmul->begin();j != l1ForJetsEmul->end(); j++) { + if (fj->bx()==0 && j->bx()==0 && std::distance(l1ForJets->begin(), fj)==std::distance(l1ForJetsEmul->begin(),j)){ + DECorr_[0][1]->Fill(fj->rank(), j->rank()); + DECorr_[1][1]->Fill(fj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][1]->Fill(fj->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctJetCandCollection::const_iterator tj = l1TauJets->begin(); tj != l1TauJets->end(); tj++) { + // only plot central BX + if (tj->bx()==0) { + l1GctTauJetsRank_->Fill(tj->rank()); + // only plot eta and phi maps for non-zero candidates + if (tj->rank()) { + l1GctTauJetsEtEtaPhi_->Fill(tj->regionId().ieta(),tj->regionId().iphi(),tj->rank()); + l1GctTauJetsOccEtaPhi_->Fill(tj->regionId().ieta(),tj->regionId().iphi()); + } + } + if (tj->rank()) l1GctAllJetsOccRankBx_->Fill(tj->bx(),tj->rank()); // for all BX + for (L1GctJetCandCollection::const_iterator j = l1TauJetsEmul->begin(); j!= l1TauJetsEmul->end(); j++) { + if (tj->bx()==0 && j->bx()==0 && std::distance(l1TauJets->begin(), tj)==std::distance(l1TauJetsEmul->begin(),j)){ + DECorr_[0][2]->Fill(tj->rank(), j->rank()); + DECorr_[1][2]->Fill(tj->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][2]->Fill(tj->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctEtMissCollection::const_iterator met = l1EtMiss->begin(); met != l1EtMiss->end(); met++) { + // only plot central BX + if (met->bx()==0) { + if (met->overFlow() == 0 && met->et() > 0) { + //Avoid problems with met=0 candidates affecting MET_PHI plots + l1GctEtMiss_->Fill(met->et()); + l1GctEtMissPhi_->Fill(met->phi()); + } + l1GctEtMissOf_->Fill(met->overFlow()); + } + if (met->overFlow() == 0 && met->et() > 0) l1GctEtMissOccBx_->Fill(met->bx(),met->et()); // for all BX + for (L1GctEtMissCollection::const_iterator j = l1EtMissEmul->begin(); j != l1EtMissEmul->end(); j++){ + if (met->bx()==0 && j->bx()==0){ + DECorr_[0][6]->Fill(met->et(), j->et()); + DECorr_[2][6]->Fill(met->phi(),j->phi()); + } + } + } + + for (L1GctEtHadCollection::const_iterator ht = l1EtHad->begin(); ht != l1EtHad->end(); ht++) { + // only plot central BX + if (ht->bx()==0) { + l1GctEtHad_->Fill(ht->et()); + l1GctEtHadOf_->Fill(ht->overFlow()); + } + l1GctEtHadOccBx_->Fill(ht->bx(),ht->et()); // for all BX + for (L1GctEtHadCollection::const_iterator j = l1EtHadEmul->begin(); j != l1EtHadEmul->end(); j++){ + if (ht->bx()==0 && j->bx()==0){ + DECorr_[0][7]->Fill(ht->et(), j->et()); + //DECorr_[2][7]->Fill(ht->ieta(),j->ieta()); + //DECorr_[3][7]->Fill(ht->iphi(),j->iphi()); + } + } + } + + for (L1GctEtTotalCollection::const_iterator et = l1EtTotal->begin(); et != l1EtTotal->end(); et++) { + // only plot central BX + if (et->bx()==0) { + l1GctEtTotal_->Fill(et->et()); + l1GctEtTotalOf_->Fill(et->overFlow()); + } + l1GctEtTotalOccBx_->Fill(et->bx(),et->et()); // for all BX + for (L1GctEtTotalCollection::const_iterator j = l1EtTotalEmul->begin(); j != l1EtTotalEmul->end(); j++){ + if (et->bx()==0 && j->bx()==0){ + DECorr_[0][5]->Fill(et->et(), j->et()); + //DECorr_[2][5]->Fill(et->eta(),j->eta()); + //DECorr_[3][5]->Fill(et->iphi(),j->iphi()); + } + } + } + + for (L1GctEmCandCollection::const_iterator ie=l1IsoEm->begin(); ie!=l1IsoEm->end(); ie++) { + // only plot central BX + if (ie->bx()==0) { + l1GctIsoEmRank_->Fill(ie->rank()); + // only plot eta and phi maps for non-zero candidates + if (ie->rank()){ + l1GctIsoEmRankEtaPhi_->Fill(ie->regionId().ieta(),ie->regionId().iphi(),ie->rank()); + l1GctIsoEmOccEtaPhi_->Fill(ie->regionId().ieta(),ie->regionId().iphi()); + } + } + if (ie->rank()) l1GctAllEmOccRankBx_->Fill(ie->bx(),ie->rank()); // for all BX + for (L1GctEmCandCollection::const_iterator j = l1IsoEmEmul->begin(); j!= l1IsoEmEmul->end(); j++) { + if (ie->bx()==0 && j->bx()==0 && std::distance(l1IsoEm->begin(), ie)==std::distance(l1IsoEmEmul->begin(),j)){ + DECorr_[0][3]->Fill(ie->rank(), j->rank()); + DECorr_[1][3]->Fill(ie->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][3]->Fill(ie->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctEmCandCollection::const_iterator ne=l1NonIsoEm->begin(); ne!=l1NonIsoEm->end(); ne++) { + // only plot central BX + if (ne->bx()==0) { + l1GctNonIsoEmRank_->Fill(ne->rank()); + // only plot eta and phi maps for non-zero candidates + if (ne->rank()){ + l1GctNonIsoEmRankEtaPhi_->Fill(ne->regionId().ieta(),ne->regionId().iphi(),ne->rank()); + l1GctNonIsoEmOccEtaPhi_->Fill(ne->regionId().ieta(),ne->regionId().iphi()); + } + } + if (ne->rank()) l1GctAllEmOccRankBx_->Fill(ne->bx(),ne->rank()); // for all BX + for (L1GctEmCandCollection::const_iterator j = l1NonIsoEmEmul->begin(); j!= l1NonIsoEmEmul->end(); j++) { + if (ne->bx()==0 && j->bx()==0 && std::distance(l1NonIsoEm->begin(), ne)==std::distance(l1NonIsoEmEmul->begin(),j)){ + DECorr_[0][4]->Fill(ne->rank(), j->rank()); + DECorr_[1][4]->Fill(ne->regionId().ieta(),j->regionId().ieta()); + DECorr_[2][4]->Fill(ne->regionId().iphi(),j->regionId().iphi()); + } + } + } + + for (L1GctHFBitCountsCollection::const_iterator hfc=l1HFCounts->begin(); hfc!=l1HFCounts->end(); hfc++){ + // only plot central BX + if (hfc->bx()==0) { + // Individual ring counts + l1GctHFRing1TowerCountPosEta_->Fill(hfc->bitCount(0)); + l1GctHFRing1TowerCountNegEta_->Fill(hfc->bitCount(1)); + l1GctHFRing2TowerCountPosEta_->Fill(hfc->bitCount(2)); + l1GctHFRing2TowerCountNegEta_->Fill(hfc->bitCount(3)); + // Correlate positive and negative eta + l1GctHFRing1TowerCountPosEtaNegEta_->Fill(hfc->bitCount(0),hfc->bitCount(1)); + l1GctHFRing2TowerCountPosEtaNegEta_->Fill(hfc->bitCount(2),hfc->bitCount(3)); + } + // Occupancy vs BX + for (unsigned i=0; i<4; i++){ + l1GctHFRingTowerCountOccBx_->Fill(hfc->bx(),hfc->bitCount(i)); + } + } + + for (L1GctHFRingEtSumsCollection::const_iterator hfs=l1HFSums->begin(); hfs!=l1HFSums->end(); hfs++){ + if (hfs->bx()==0) { + l1GctHFRing1ETSumPosEta_->Fill(hfs->etSum(0)); + l1GctHFRing1ETSumNegEta_->Fill(hfs->etSum(1)); + l1GctHFRingETSum_->Fill(hfs->etSum(0)+hfs->etSum(1)); + l1GctHFRingETDiff_->Fill(abs(hfs->etSum(0)-hfs->etSum(1))); + if (hfs->etSum(1)!=0) l1GctHFRingRatioPosEta_->Fill((hfs->etSum(0))/(hfs->etSum(1))); + l1GctHFRing1PosEtaNegEta_->Fill(hfs->etSum(0),hfs->etSum(1)); + std::vector bit = SortMinBiasBit(hfs->etSum(2),hfs->etSum(3)); + for(std::vector::const_iterator it=bit.begin(); it !=bit.end(); it++){ + l1GctMinBiasBitHFEt_->Fill(it - bit.begin(),*it); + } + } + for (unsigned i=0; i<4; i++){ + l1GctHFRingETSumOccBx_->Fill(hfs->bx(),hfs->etSum(i)); + } + for (L1GctHFRingEtSumsCollection::const_iterator j=l1HFSumsEmul->begin(); j!=l1HFSumsEmul->end(); j++){ + if (hfs->bx()==0 && j->bx()==0 && std::distance(l1HFSums->begin(),hfs)==std::distance(l1HFSumsEmul->begin(),j)){ + centralityCorr_->Fill(hfs->etSum(0),j->etSum(0)); + centralityExtCorr_->Fill(hfs->etSum(1),j->etSum(1)); + std::vector dbit = SortMinBiasBit(hfs->etSum(2),hfs->etSum(3)); + std::vector ebit = SortMinBiasBit(j->etSum(2),j->etSum(3)); + } + } + } + + for (L1CaloRegionCollection::const_iterator it=rgn->begin(); it!=rgn->end(); it++){ + if (it -> bx()==0){ + int totm = 0; + int totp = 0; + int tot = 0; + if (it->gctEta() < 4){ + totm += it->et(); + } + if (it->gctEta() > 17){ + totp += it->et(); + } + if (it->gctEta() < 4 && it->gctEta() > 17){ + tot += it->et(); + } + HFNegEnergy_->Fill(totm); + HFPosEnergy_->Fill(totp); + HFEnergy_->Fill(totm+totp); + } + } +} + +std::vector L1THIonImp::SortMinBiasBit(uint16_t a, uint16_t b) { + std::vector Bit; + + if ((a+1)/4>0.5){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + if (a==2 || a==3 || a==6 || a==7){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + Bit.push_back(a%2); + + if ((b+1)/4>0.5){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + if (b==2 || b==3 || b==6 || b==7){ + Bit.push_back(1); + } else { + Bit.push_back(0); + } + + Bit.push_back(b%2); + + return Bit; +} From 444eb12afb4b1370861b0c4f888c13b0dbdd9fa7 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 06:13:04 +0100 Subject: [PATCH 39/46] update SealModule --- DQM/L1TMonitor/src/SealModule.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/DQM/L1TMonitor/src/SealModule.cc b/DQM/L1TMonitor/src/SealModule.cc index 3490adba0eaf1..a97f20e896ae5 100644 --- a/DQM/L1TMonitor/src/SealModule.cc +++ b/DQM/L1TMonitor/src/SealModule.cc @@ -60,5 +60,8 @@ DEFINE_FWK_MODULE(L1TdeRCT); #include "DQM/L1TMonitor/interface/L1TdeCSCTF.h" DEFINE_FWK_MODULE(L1TdeCSCTF); +#include "DQM/L1TMonitor/interface/L1THIonImp.h" +DEFINE_FWK_MODULE(L1THIonImp); + //#include "DQM/L1TMonitor/interface/L1GtHwValidation.h" //DEFINE_FWK_MODULE(L1GtHwValidation); From c24ce339056348aa09981306d609dd11a8dc173b Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Mon, 16 Nov 2015 15:51:33 +0100 Subject: [PATCH 40/46] fix llvm compiler errors --- DQM/L1TMonitor/src/L1THIonImp.cc | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 15b70e3ffca99..488a481d390c2 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -14,10 +14,6 @@ const unsigned int METPHIBINS = 72; const float METPHIMIN = -0.5; const float METPHIMAX = 71.5; -const unsigned int MHTPHIBINS = 18; -const float MHTPHIMIN = -0.5; -const float MHTPHIMAX = 17.5; - const unsigned int PHIBINS = 18; const float PHIMIN = -0.5; const float PHIMAX = 17.5; @@ -34,15 +30,9 @@ const float BXMAX = 2.5; const unsigned int R3BINS = 8; const float R3MIN = -0.5; const float R3MAX = 7.5; -const unsigned int R5BINS = 32; -const float R5MIN = -0.5; -const float R5MAX = 31.5; const unsigned int R6BINS = 64; const float R6MIN = -0.5; const float R6MAX = 63.5; -const unsigned int R7BINS = 128; -const float R7MIN = -0.5; -const float R7MAX = 127.5; const unsigned int R12BINS = 4096; const float R12MIN = -0.5; const float R12MAX = 4095.5; From e338468635eac87d61f23f35c8450be60823fb21 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 14:43:28 -0600 Subject: [PATCH 41/46] lean couts --- DQM/L1TMonitor/src/L1THIonImp.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 488a481d390c2..7a53abdce390b 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -243,7 +243,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { // only plot central BX if (cj->bx()==0) { l1GctCenJetsRank_->Fill(cj->rank()); - std::cout<<"Data: "<rank())<rank()) { l1GctCenJetsEtEtaPhi_->Fill(cj->regionId().ieta(),cj->regionId().iphi(),cj->rank()); @@ -261,7 +260,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { } } for (L1GctJetCandCollection::const_iterator j = l1CenJetsEmul->begin();j != l1CenJetsEmul->end(); j++) { - std::cout<<"Emul: "<rank())< Date: Wed, 18 Nov 2015 17:11:10 -0600 Subject: [PATCH 42/46] drop useless HF total energy calculation --- DQM/L1TMonitor/src/L1THIonImp.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index 7a53abdce390b..d4825a07f0c1b 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -449,9 +449,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { if (it->gctEta() > 17){ totp += it->et(); } - if (it->gctEta() < 4 && it->gctEta() > 17){ - tot += it->et(); - } HFNegEnergy_->Fill(totm); HFPosEnergy_->Fill(totp); HFEnergy_->Fill(totm+totp); From 31aced7f2443009286ea40cd42c64c72a16bf6ef Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 17:50:31 -0600 Subject: [PATCH 43/46] remove useless headers --- DQM/L1TMonitor/interface/L1THIonImp.h | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/DQM/L1TMonitor/interface/L1THIonImp.h b/DQM/L1TMonitor/interface/L1THIonImp.h index 17992ac5a7d83..f65c76d39f732 100644 --- a/DQM/L1TMonitor/interface/L1THIonImp.h +++ b/DQM/L1TMonitor/interface/L1THIonImp.h @@ -1,26 +1,12 @@ #ifndef L1THIonImp_H #define L1THIonImp_H -#include -#include - - -#include -#include -#include - - // user include files -#include "FWCore/Framework/interface/Frameworkfwd.h" -#include "FWCore/Framework/interface/EDAnalyzer.h" #include "FWCore/Framework/interface/Event.h" -#include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/ServiceRegistry/interface/Service.h" - // DQM #include "DQMServices/Core/interface/DQMStore.h" #include "DQMServices/Core/interface/MonitorElement.h" From ce05a9277a12dfff63fd85ab27dace23abdec1c9 Mon Sep 17 00:00:00 2001 From: Jingyu Zhang Date: Wed, 18 Nov 2015 17:51:03 -0600 Subject: [PATCH 44/46] remove tot --- DQM/L1TMonitor/src/L1THIonImp.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/DQM/L1TMonitor/src/L1THIonImp.cc b/DQM/L1TMonitor/src/L1THIonImp.cc index d4825a07f0c1b..c77d2ab489a08 100644 --- a/DQM/L1TMonitor/src/L1THIonImp.cc +++ b/DQM/L1TMonitor/src/L1THIonImp.cc @@ -442,7 +442,6 @@ void L1THIonImp::analyze(const edm::Event & e, const edm::EventSetup & c) { if (it -> bx()==0){ int totm = 0; int totp = 0; - int tot = 0; if (it->gctEta() < 4){ totm += it->et(); } From ba02768e0b4c435587949b482ce090cfdf006e35 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Thu, 19 Nov 2015 23:41:26 +0100 Subject: [PATCH 45/46] make sure it plot run1 Digis --- .../python/clients/l1tstage1_dqm_sourceclient-live_cfg.py | 2 ++ DQM/L1TMonitor/python/L1TMonitor_cff.py | 1 + DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py | 1 + 3 files changed, 4 insertions(+) diff --git a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py index 08d177f9aeaec..ff5b280198041 100644 --- a/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1_dqm_sourceclient-live_cfg.py @@ -148,6 +148,8 @@ process.l1tMonitorStage1Online.remove(process.bxTiming) #process.l1tMonitorStage1Online.remove(process.l1tBPTX) +process.l1tMonitorStage1Online.remove(process.l1tRctRun1) + #process.l1tMonitorOnline.remove(process.l1tLtc) process.l1tMonitorStage1Online.remove(process.l1tDttf) diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 1457b63bf83c1..62f98d2571296 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -166,6 +166,7 @@ #l1tBPTX + #l1tRate + l1tStage1Layer2Seq + + l1tRctRun1 + l1tRctSeq ) diff --git a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py index ce669cd98f596..96cbb40b4088b 100644 --- a/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py +++ b/DQMOffline/L1Trigger/python/L1TriggerDqmOffline_cff.py @@ -45,6 +45,7 @@ from DQMOffline.L1Trigger.L1TRate_Offline_cfi import * from DQMOffline.L1Trigger.L1TSync_Offline_cfi import * from DQMOffline.L1Trigger.L1TEmulatorMonitorOffline_cff import * +l1TdeRCT.rctSourceData = 'gctDigis' # DQM Offline Step 2 cfi/cff imports from DQMOffline.L1Trigger.L1TEmulatorMonitorClientOffline_cff import * From 179962fbc1341a097659ecc5c396927ddfea2be6 Mon Sep 17 00:00:00 2001 From: jingyu zhang Date: Thu, 26 Nov 2015 00:34:58 +0100 Subject: [PATCH 46/46] fix offline run2 data comparison plots --- .../clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py | 2 ++ DQM/L1TMonitor/python/L1TMonitor_cff.py | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py index ed20af06bab17..f19cfa2f9a77e 100644 --- a/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py +++ b/DQM/Integration/python/clients/l1tstage1emulator_dqm_sourceclient-live_cfg.py @@ -80,6 +80,8 @@ #process.valRctDigis.getFedsFromOmds = cms.bool(True) process.stage1UnpackerPath = cms.Path(process.caloStage1Digis+process.caloStage1LegacyFormatDigis) +process.caloStage1LegacyFormatDigis.bxMin = cms.int32(-2) +process.caloStage1LegacyFormatDigis.bxMax = cms.int32(2) # process.l1EmulatorMonitorClientPath = cms.Path(process.l1EmulatorMonitorClient) diff --git a/DQM/L1TMonitor/python/L1TMonitor_cff.py b/DQM/L1TMonitor/python/L1TMonitor_cff.py index 44d7f42e0ae9d..01c090309ff98 100644 --- a/DQM/L1TMonitor/python/L1TMonitor_cff.py +++ b/DQM/L1TMonitor/python/L1TMonitor_cff.py @@ -98,8 +98,8 @@ # transfer stage1 format digis to legacy format digis from L1Trigger.L1TCommon.caloStage1LegacyFormatDigis_cfi import * -caloStage1LegacyFormatDigis.bxMin = cms.int32(-2) -caloStage1LegacyFormatDigis.bxMax = cms.int32(2) +#caloStage1LegacyFormatDigis.bxMin = cms.int32(-2) +#caloStage1LegacyFormatDigis.bxMax = cms.int32(2) #################################################################