Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a DQM sequence for pixel-only tracking #23

Merged
merged 3 commits into from
Mar 1, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions Configuration/PyReleaseValidation/python/relval_steps.py
Original file line number Diff line number Diff line change
Expand Up @@ -1514,7 +1514,7 @@ def gen2018HiMix(fragment,howMuch):
'--eventcontent':'RECOSIM,DQM',
}
step3_pixelTrackingOnly = {
'-s': 'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation',
'-s': 'RAW2DIGI:RawToDigi_pixelOnly,RECO:reconstruction_pixelTrackingOnly,VALIDATION:@pixelTrackingOnlyValidation,DQM:@pixelTrackingOnlyDQM',
'--datatier': 'GEN-SIM-RECO,DQMIO',
'--eventcontent': 'RECOSIM,DQM',
}
Expand Down Expand Up @@ -2391,17 +2391,17 @@ def gen2018HiMix(fragment,howMuch):
for step in upgradeSteps['pixelTrackingOnly']['steps']:
stepName = step + upgradeSteps['pixelTrackingOnly']['suffix']
if 'Reco' in step: upgradeStepDict[stepName][k] = merge([step3_pixelTrackingOnly, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation'}, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'}, upgradeStepDict[step][k]])

for step in upgradeSteps['pixelTrackingOnlyRiemannFit']['steps']:
stepName = step + upgradeSteps['pixelTrackingOnlyRiemannFit']['suffix']
if 'Reco' in step: upgradeStepDict[stepName][k] = merge([step3_riemannFit, step3_pixelTrackingOnly, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation'}, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'}, upgradeStepDict[step][k]])

for step in upgradeSteps['pixelTrackingOnlyGPU']['steps']:
stepName = step + upgradeSteps['pixelTrackingOnlyGPU']['suffix']
if 'Reco' in step: upgradeStepDict[stepName][k] = merge([step3_gpu, step3_pixelTrackingOnly, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation'}, upgradeStepDict[step][k]])
elif 'HARVEST' in step: upgradeStepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation+@pixelTrackingOnlyDQM'}, upgradeStepDict[step][k]])

for step in upgradeSteps['trackingRun2']['steps']:
stepName = step + upgradeSteps['trackingRun2']['suffix']
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import FWCore.ParameterSet.Config as cms
from DQMServices.Core.DQMEDHarvester import DQMEDHarvester

def _layers(suffix, quant, histoPostfix):
return [
"effic_vs_{0}_PXB1 'PXB Layer1 Efficiency vs {1}' Hits{2}_valid_PXB_Subdet1 Hits{2}_total_PXB_Subdet1" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXB2 'PXB Layer2 Efficiency vs {1}' Hits{2}_valid_PXB_Subdet2 Hits{2}_total_PXB_Subdet2" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXB3 'PXB Layer3 Efficiency vs {1}' Hits{2}_valid_PXB_Subdet3 Hits{2}_total_PXB_Subdet3" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXB4 'PXB Layer4 Efficiency vs {1}' Hits{2}_valid_PXB_Subdet4 Hits{2}_total_PXB_Subdet4" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF1 'PXF Layer1 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet1 Hits{2}_total_PXF_Subdet1" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF2 'PXF Layer2 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet2 Hits{2}_total_PXF_Subdet2" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF3 'PXF Layer3 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet3 Hits{2}_total_PXF_Subdet3" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF4 'PXF Layer4 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet4 Hits{2}_total_PXF_Subdet4" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF5 'PXF Layer5 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet5 Hits{2}_total_PXF_Subdet5" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF6 'PXF Layer6 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet6 Hits{2}_total_PXF_Subdet6" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF7 'PXF Layer7 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet7 Hits{2}_total_PXF_Subdet7" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF8 'PXF Layer8 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet8 Hits{2}_total_PXF_Subdet8" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF9 'PXF Layer9 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet9 Hits{2}_total_PXF_Subdet9" .format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF10 'PXF Layer10 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet10 Hits{2}_total_PXF_Subdet10".format(suffix, quant, histoPostfix),
"effic_vs_{0}_PXF11 'PXF Layer11 Efficiency vs {1}' Hits{2}_valid_PXF_Subdet11 Hits{2}_total_PXF_Subdet11".format(suffix, quant, histoPostfix),
]

pixelTrackingEffFromHitPattern = DQMEDHarvester("DQMGenericClient",
subDirs = cms.untracked.vstring("Tracking/PixelTrackParameters/HitEffFromHitPattern*"),
efficiency = cms.vstring(
_layers("PU", "GoodNumVertices", "") +
_layers("BX", "BX", "VsBX") +
_layers("LUMI", "LUMI", "VsLUMI")
),
resolution = cms.vstring(),
verbose = cms.untracked.uint32(5),
outputFileName = cms.untracked.string(""),
)
23 changes: 23 additions & 0 deletions DQM/TrackingMonitorSource/python/pixelTracksMonitoring_cff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import FWCore.ParameterSet.Config as cms

import DQM.TrackingMonitor.TrackerCollisionTrackingMonitor_cfi
pixelTracksMonitoring = DQM.TrackingMonitor.TrackerCollisionTrackingMonitor_cfi.TrackerCollisionTrackMon.clone()
pixelTracksMonitoring.FolderName = 'Tracking/PixelTrackParameters'
pixelTracksMonitoring.TrackProducer = 'pixelTracks'
pixelTracksMonitoring.allTrackProducer = 'pixelTracks'
pixelTracksMonitoring.beamSpot = 'offlineBeamSpot'
pixelTracksMonitoring.primaryVertex = 'pixelVertices'
pixelTracksMonitoring.pvNDOF = 1
pixelTracksMonitoring.doAllPlots = True
pixelTracksMonitoring.doLumiAnalysis = True
pixelTracksMonitoring.doProfilesVsLS = True
pixelTracksMonitoring.doDCAPlots = True
pixelTracksMonitoring.doProfilesVsLS = True
pixelTracksMonitoring.doPlotsVsGoodPVtx = True
pixelTracksMonitoring.doEffFromHitPatternVsPU = False
pixelTracksMonitoring.doEffFromHitPatternVsBX = False
pixelTracksMonitoring.doEffFromHitPatternVsLUMI = False
pixelTracksMonitoring.doPlotsVsGoodPVtx = True
pixelTracksMonitoring.doPlotsVsLUMI = True
pixelTracksMonitoring.doPlotsVsBX = True

3 changes: 3 additions & 0 deletions DQMOffline/Configuration/python/DQMOffline_SecondStep_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
from DQMOffline.JetMET.SusyPostProcessor_cff import *
from DQMOffline.JetMET.dataCertificationJetMET_cff import *
from DQM.TrackingMonitorClient.TrackingClientConfig_Tier0_cff import *
from DQM.TrackingMonitorClient.pixelTrackingEffFromHitPattern_cff import *
from DQM.Phase2OuterTracker.OuterTrackerClientConfig_cff import *

DQMOffline_SecondStep_PrePOG = cms.Sequence( TrackingOfflineDQMClient *
Expand Down Expand Up @@ -116,6 +117,8 @@
DQMHarvestTracking = cms.Sequence( TrackingOfflineDQMClient *
dqmFastTimerServiceClient )

DQMHarvestPixelTracking = cms.Sequence( pixelTrackingEffFromHitPattern )

DQMHarvestOuterTracker = cms.Sequence( dqmRefHistoRootFileGetter *
dqmDcsInfoClient *
OuterTrackerClient *
Expand Down
3 changes: 3 additions & 0 deletions DQMOffline/Configuration/python/DQMOffline_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
from DQM.Physics.DQMTopMiniAOD_cff import *
from Validation.RecoTau.DQMSequences_cfi import *
from DQM.TrackingMonitorSource.TrackingSourceConfig_Tier0_cff import *
from DQM.TrackingMonitorSource.pixelTracksMonitoring_cff import *
from DQM.Phase2OuterTracker.OuterTrackerSourceConfig_cff import *
# miniAOD DQM validation
from Validation.RecoParticleFlow.miniAODDQM_cff import *
Expand Down Expand Up @@ -111,6 +112,8 @@
materialDumperAnalyzer
)

DQMOfflinePixelTracking = cms.Sequence( pixelTracksMonitoring )

DQMOuterTracker = cms.Sequence( dqmDcsInfo *
OuterTrackerSource *
DQMMessageLogger *
Expand Down
9 changes: 6 additions & 3 deletions DQMOffline/Configuration/python/autoDQM.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,12 @@
'commonSiStripZeroBias' : ['DQMOfflineCommonSiStripZeroBias',
'PostDQMOffline',
'DQMHarvestCommonSiStripZeroBias+DQMCertCommon'],
'trackingOnlyDQM' : ["DQMOfflineTracking",
"PostDQMOffline",
"DQMHarvestTracking"],
'trackingOnlyDQM' : ['DQMOfflineTracking',
'PostDQMOffline',
'DQMHarvestTracking'],
'pixelTrackingOnlyDQM': ['DQMOfflinePixelTracking',
'PostDQMOffline',
'DQMHarvestPixelTracking'],
'outerTracker': ['DQMOuterTracker',
'PostDQMOffline',
'DQMHarvestOuterTracker'],
Expand Down