diff --git a/Configuration/EventContent/python/EventContent_cff.py b/Configuration/EventContent/python/EventContent_cff.py index d5525c3dc94ec..deb95f2bb7f23 100644 --- a/Configuration/EventContent/python/EventContent_cff.py +++ b/Configuration/EventContent/python/EventContent_cff.py @@ -238,6 +238,7 @@ def SwapKeepAndDrop(l): from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer from Configuration.Eras.Modifier_run2_GEM_2017_cff import run2_GEM_2017 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA from RecoLocalFastTime.Configuration.RecoLocalFastTime_EventContent_cff import * from RecoMTD.Configuration.RecoMTD_EventContent_cff import * @@ -640,6 +641,19 @@ def SwapKeepAndDrop(l): FEVTDEBUGHLTEventContent.outputCommands.append('keep *_*_MergedTrackTruth_*') FEVTDEBUGHLTEventContent.outputCommands.append('keep *_*_StripDigiSimLink_*') FEVTDEBUGHLTEventContent.outputCommands.append('keep *_*_PixelDigiSimLink_*') + +pp_on_PbPb_run3.toModify(FEVTDEBUGHLTEventContent, + outputCommands = FEVTDEBUGHLTEventContent.outputCommands+[ + 'keep *_hltMergedTracksPPOnAA_*_*', + 'keep *_hltVerticesPFFilterPPOnAA_*_*', + 'keep *_hltDoubletRecoveryPFlowTrackSelectionHighPurityPPOnAA_*_*', + 'keep *_hltPixelTracksPPOnAA_*_*', + 'keep *_hltPixelVerticesPPOnAA_*_*', + 'keep *_hltTrimmedPixelVerticesPPOnAA_*_*', + 'keep *_hltSiPixelClustersAfterSplittingPPOnAA_*_*', + 'keep *_hltHITrackingSiStripRawToClustersFacilityFullZeroSuppression_*_*' + ]) + approxSiStripClusters.toModify(FEVTDEBUGHLTEventContent, outputCommands = FEVTDEBUGHLTEventContent.outputCommands+[ 'keep *_hltSiStripClusters2ApproxClusters_*_*', diff --git a/Configuration/PyReleaseValidation/python/relval_standard.py b/Configuration/PyReleaseValidation/python/relval_standard.py index bf41c572ea342..7d29cd38dc663 100644 --- a/Configuration/PyReleaseValidation/python/relval_standard.py +++ b/Configuration/PyReleaseValidation/python/relval_standard.py @@ -564,6 +564,9 @@ workflows[141.008511] = ['Run3-2023_JetMET2023B_RecoECALOnlyCPU',['RunJetMET2023B','HLTDR3_2023','RECODR3_reHLT_ECALOnlyCPU','HARVESTRUN3_ECALOnly']] workflows[141.008521] = ['Run3-2023_JetMET2023B_RecoHCALOnlyCPU',['RunJetMET2023B','HLTDR3_2023','RECODR3_reHLT_HCALOnlyCPU','HARVESTRUN3_HCALOnly']] +### run3-2023 (2023 HI data RawPrime with re-HLT) +workflows[142.0] = ['',['RunHIPhysicsRawPrime2023A','HLTDR3_HI2023ARawprime','RECOHIRUN3_reHLT_2023','HARVESTRUN3_HI2023A']] + ### fastsim ### workflows[5.1] = ['TTbarFS', ['TTbarFS','HARVESTFS']] workflows[5.2] = ['SingleMuPt10FS', ['SingleMuPt10FS','HARVESTFS']] diff --git a/Configuration/PyReleaseValidation/python/relval_steps.py b/Configuration/PyReleaseValidation/python/relval_steps.py index bc9361cdd89ef..83cccca61235a 100644 --- a/Configuration/PyReleaseValidation/python/relval_steps.py +++ b/Configuration/PyReleaseValidation/python/relval_steps.py @@ -613,6 +613,9 @@ steps['RunMuonEG2023D']={'INPUT':InputInfo(dataSet='/MuonEG/Run2023D-v1/RAW',label='2023D',events=100000,location='STD', ls=Run2023D)} steps['RunParkingDoubleMuonLowMass2023D']={'INPUT':InputInfo(dataSet='/ParkingDoubleMuonLowMass0/Run2023D-v1/RAW',label='2023D',events=100000,location='STD', ls=Run2023D)} +RunHI2023={375491: [[100, 100]]} +steps['RunHIPhysicsRawPrime2023A']={'INPUT':InputInfo(dataSet='/HIPhysicsRawPrime0/HIRun2023A-v1/RAW',label='HI2023A',events=100000,location='STD', ls=RunHI2023)} + # Highstat HLTPhysics Run2015DHS=selectedLS([258712,258713,258714,258741,258742,258745,258749,258750,259626,259637,259683,259685,259686,259721,259809,259810,259818,259820,259821,259822,259862,259890,259891]) steps['RunHLTPhy2015DHS']={'INPUT':InputInfo(dataSet='/HLTPhysics/Run2015D-v1/RAW',label='2015DHS',events=100000,location='STD', ls=Run2015DHS)} @@ -2073,6 +2076,12 @@ def lhegensim2018ml(fragment,howMuch): steps['HLTDR3_2023B']=merge( [ {'-s':'L1REPACK:Full,HLT:@%s'%hltKey2023,},{'--conditions':'auto:run3_hlt_relval'},{'--era' : 'Run3'},steps['HLTD'] ] ) +steps['HLTDR3_HI2023ARawprime']=merge([{'-s':'L1REPACK:Full,HLT:HIon'}, + {'--conditions':'auto:run3_hlt_HIon'}, + {'--era' : 'Run3_pp_on_PbPb_approxSiStripClusters_2023'}, + {'--customise' : 'HLTrigger/Configuration/CustomConfigs.customiseL1THLTforHIonRepackedRAWPrime'}, + steps['HLTD']]) + # special setting for lumi section boundary crossing in RunEGamma2018Dml steps['HLTDR2_2018ml']=merge( [ {'--customise_commands':'"process.source.skipEvents=cms.untracked.uint32(7000)"'},steps['HLTDR2_2018'] ] ) @@ -2934,6 +2943,8 @@ def gen2023HiMix(fragment,howMuch): steps['RECONANORUN3_ZB_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,NANO,DQM:@rerecoZeroBias+@miniAODDQM+@nanoAODDQM'},steps['RECONANORUN3_reHLT_2023']]) steps['RECOCOSMRUN3_reHLT_2023']=merge([{'--scenario':'cosmics','-s':'RAW2DIGI,L1Reco,RECO,DQM','--datatier':'RECO,DQMIO','--eventcontent':'RECO,DQM'},steps['RECONANORUN3_reHLT_2023']]) +steps['RECOHIRUN3_reHLT_2023']=merge([{'-s':'RAW2DIGI,L1Reco,RECO,PAT,DQM:@standardDQM','--datatier':'RECO,MINIAOD,DQMIO','--eventcontent':'RECO,MINIAOD,DQM','--era':'Run3_pp_on_PbPb_approxSiStripClusters_2023','--conditions':'auto:run3_data_HIon'},steps['RECODR3_reHLT_2023']]) + # Run-3 2022 skim for s in autoSkim.keys(): @@ -3600,6 +3611,9 @@ def gen2023HiMix(fragment,howMuch): steps['HARVESTRUN3_COS_2022']=merge([{'--data':'', '--scenario':'cosmics', '--era':'Run3', '-s':'HARVESTING:dqmHarvesting'},steps['HARVESTDRUN3']]) steps['HARVESTRUN3_2023']=merge([{'--era':'Run3_2023', '-s':'HARVESTING:@standardDQM+@miniAODDQM+@nanoAODDQM'},steps['HARVESTRUN3_2022']]) steps['HARVESTRUN3_2023B']=merge([{'--era':'Run3', '-s':'HARVESTING:@standardDQM+@miniAODDQM+@nanoAODDQM'},steps['HARVESTRUN3_2022']]) + +steps['HARVESTRUN3_HI2023A']=merge([{'--era':'Run3_pp_on_PbPb_approxSiStripClusters_2023', '-s':'HARVESTING:@standardDQM+@miniAODDQM'},steps['HARVESTRUN3_2022']]) + steps['HARVESTRUN3_ZB_2023B']=merge([{'--era':'Run3', '-s':'HARVESTING:@rerecoZeroBias+@miniAODDQM+@nanoAODDQM'},steps['HARVESTRUN3_2022']]) steps['HARVESTRUN3_ZB_2023']=merge([{'--era':'Run3_2023', '-s':'HARVESTING:@rerecoZeroBias+@miniAODDQM+@nanoAODDQM'},steps['HARVESTRUN3_2022']]) steps['HARVESTRUN3_COS_2023']=merge([{'--scenario':'cosmics', '--era':'Run3_2023', '-s':'HARVESTING:dqmHarvesting'},steps['HARVESTRUN3_2022']]) diff --git a/DQMOffline/Trigger/python/PrimaryVertexMonitoring_cff.py b/DQMOffline/Trigger/python/PrimaryVertexMonitoring_cff.py index c661ff15cdd2f..86eb7e4faa9de 100644 --- a/DQMOffline/Trigger/python/PrimaryVertexMonitoring_cff.py +++ b/DQMOffline/Trigger/python/PrimaryVertexMonitoring_cff.py @@ -11,17 +11,30 @@ ndof = 1, useHPforAlignmentPlots = False ) + +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(hltPixelVerticesMonitoring, + vertexLabel = "hltPixelVerticesPPOnAA") + hltTrimmedPixelVerticesMonitoring = hltVerticesMonitoring.clone( TopFolderName = "HLT/Vertexing/hltTrimmedPixelVertices", vertexLabel = "hltTrimmedPixelVertices", ndof = 1, useHPforAlignmentPlots = False ) + +pp_on_PbPb_run3.toModify(hltTrimmedPixelVerticesMonitoring, + vertexLabel = "hltTrimmedPixelVerticesPPOnAA") + hltVerticesPFFilterMonitoring = hltVerticesMonitoring.clone( TopFolderName = "HLT/Vertexing/hltVerticesPFFilter", vertexLabel = "hltVerticesPFFilter", useHPforAlignmentPlots = False ) + +pp_on_PbPb_run3.toModify(hltVerticesPFFilterMonitoring, + vertexLabel = cms.InputTag("hltVerticesPFFilterPPOnAA")) + hltVerticesL3PFBjetsMonitoring = hltVerticesMonitoring.clone( TopFolderName = "HLT/Vertexing/hltVerticesL3PFBjets", vertexLabel = "hltVerticesL3PFBjets", diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_Cluster_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_Cluster_cff.py index 5846bf38d33f4..006c01eb02637 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_Cluster_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_Cluster_cff.py @@ -303,6 +303,11 @@ triggerflag = hltSiPixelPhase1ClustersTriggers, ) +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(hltSiPixelPhase1ClustersAnalyzer, + pixelSrc = "hltSiPixelClustersAfterSplittingPPOnAA", + stripSrc = "hltHITrackingSiStripRawToClustersFacilityFullZeroSuppression") + hltSiPixelPhase1ClustersHarvester = DQMEDHarvester("SiPixelPhase1Harvester", histograms = hltSiPixelPhase1ClustersConf, geometry = hltSiPixelPhase1Geometry diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py index 2b49d0a9a5034..57c5d46f19a28 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_TrackCluster_cff.py @@ -433,6 +433,10 @@ geometry = hltSiPixelPhase1Geometry ) +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(hltSiPixelPhase1TrackClustersAnalyzer, + clusters = "hltSiPixelClustersAfterSplittingPPOnAA") + hltSiPixelPhase1TrackClustersHarvester = DQMEDHarvester("SiPixelPhase1Harvester", histograms = hltSiPixelPhase1TrackClustersConf, geometry = hltSiPixelPhase1Geometry diff --git a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py index 709fe6f77318d..ecd04eb15e582 100644 --- a/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiPixel_OfflineMonitoring_cff.py @@ -7,12 +7,21 @@ from RecoLocalTracker.SiPixelRecHits.SiPixelTemplateStoreESProducer_cfi import * hltSiPixelClusterShapeCache = siPixelClusterShapeCache.clone(src = 'hltSiPixelClusters') + +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(hltSiPixelClusterShapeCache, + src = "hltSiPixelClustersAfterSplittingPPOnAA") + hltrefittedForPixelDQM = refittedForPixelDQM.clone(src ='hltMergedTracks', TTRHBuilder = 'WithTrackAngle') # no templates at HLT + +pp_on_PbPb_run3.toModify(hltrefittedForPixelDQM, + src ='hltMergedTracksPPOnAA') + sipixelMonitorHLTsequence = cms.Sequence( hltSiPixelClusterShapeCache + hltSiPixelPhase1ClustersAnalyzer + hltrefittedForPixelDQM + hltSiPixelPhase1TrackClustersAnalyzer, cms.Task(SiPixelTemplateStoreESProducer) -) +) diff --git a/DQMOffline/Trigger/python/SiStrip_OfflineMonitoring_cff.py b/DQMOffline/Trigger/python/SiStrip_OfflineMonitoring_cff.py index 35c9ed9776c9f..56e26a6a85787 100644 --- a/DQMOffline/Trigger/python/SiStrip_OfflineMonitoring_cff.py +++ b/DQMOffline/Trigger/python/SiStrip_OfflineMonitoring_cff.py @@ -16,6 +16,12 @@ ClusterHisto = True, Mod_On = False ) + +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(HLTSiStripMonitorCluster, + ClusterProducerStrip = "hltHITrackingSiStripRawToClustersFacilityFullZeroSuppression", + ClusterProducerPix = "hltSiPixelClustersAfterSplittingPPOnAA") + HLTSiStripMonitorCluster.TH1TotalNumberOfClusters.subdetswitchon = cms.bool(True) HLTSiStripMonitorCluster.TProfClustersApvCycle.subdetswitchon = cms.bool(False) HLTSiStripMonitorCluster.TProfTotalNumberOfClusters.subdetswitchon = cms.bool(True) @@ -144,6 +150,10 @@ #TTRHBuilder = 'hltESPTTRHBuilderAngleAndTemplate', TTRHBuilder = 'hltESPTTRHBWithTrackAngle' ) + +pp_on_PbPb_run3.toModify(hltTrackRefitterForSiStripMonitorTrack, + src = 'hltMergedTracksPPOnAA') + import DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi HLTSiStripMonitorTrack = DQM.SiStripMonitorTrack.SiStripMonitorTrack_cfi.SiStripMonitorTrack.clone( TrackProducer = 'hltTrackRefitterForSiStripMonitorTrack', @@ -154,6 +164,10 @@ TopFolderName = 'HLT/SiStrip', Mod_On = False ) + +pp_on_PbPb_run3.toModify(HLTSiStripMonitorTrack, + Cluster_src = 'hltHITrackingSiStripRawToClustersFacilityFullZeroSuppression') + sistripMonitorHLTsequence = cms.Sequence( HLTSiStripMonitorCluster * hltTrackRefitterForSiStripMonitorTrack diff --git a/DQMOffline/Trigger/python/TrackToTrackMonitoring_cff.py b/DQMOffline/Trigger/python/TrackToTrackMonitoring_cff.py index 62b13daf49481..8dd36dbd7dd54 100644 --- a/DQMOffline/Trigger/python/TrackToTrackMonitoring_cff.py +++ b/DQMOffline/Trigger/python/TrackToTrackMonitoring_cff.py @@ -22,6 +22,12 @@ monitoredPrimaryVertices = "hltVerticesPFSelector" ) +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(hltMerged2highPurity, + topDirName = "HLT/Tracking/ValidationWRTOffline/hltMergedPPonAAWrtHighPurity", + monitoredTrack = "hltMergedTracksPPOnAA", + monitoredPrimaryVertices = "hltVerticesPFFilterPPOnAA") + hltMerged2highPurityPV = TrackToTrackComparisonHists.clone( dzWRTPvCut = 0.1, monitoredTrack = "hltMergedTracks", @@ -32,6 +38,12 @@ referencePrimaryVertices = "offlinePrimaryVertices", monitoredPrimaryVertices = "hltVerticesPFSelector" ) + +pp_on_PbPb_run3.toModify(hltMerged2highPurityPV, + topDirName = "HLT/Tracking/ValidationWRTOffline/hltMergedPPonAAWrtHighPurityPV", + monitoredTrack = "hltMergedTracksPPOnAA", + monitoredPrimaryVertices = "hltVerticesPFFilterPPOnAA") + hltToOfflineTrackValidatorSequence = cms.Sequence( cms.ignore(highPurityTracks) + hltMerged2highPurity diff --git a/DQMOffline/Trigger/python/TrackingMonitoring_Client_cff.py b/DQMOffline/Trigger/python/TrackingMonitoring_Client_cff.py index 0ff5d95b4f6e4..a147c37bc7039 100644 --- a/DQMOffline/Trigger/python/TrackingMonitoring_Client_cff.py +++ b/DQMOffline/Trigger/python/TrackingMonitoring_Client_cff.py @@ -27,8 +27,6 @@ trackingForElectronsEffFromHitPatternHLT ) - - TrackToTrackEfficiencies = DQMEDHarvester("DQMGenericClient", subDirs = cms.untracked.vstring( "HLT/Tracking/ValidationWRTOffline/hltMergedWrtHighPurity", @@ -65,6 +63,12 @@ ), ) +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(TrackToTrackEfficiencies, + subDirs = [ + "HLT/Tracking/ValidationWRTOffline/hltMergedPPonAAWrtHighPurity", + "HLT/Tracking/ValidationWRTOffline/hltMergedPPonAAWrtHighPurityPV"]) + trackEfficiencyMonitoringClientHLT = cms.Sequence( TrackToTrackEfficiencies ) diff --git a/DQMOffline/Trigger/python/TrackingMonitoring_cff.py b/DQMOffline/Trigger/python/TrackingMonitoring_cff.py index 6c8a45ea228ca..857c61e6ad792 100644 --- a/DQMOffline/Trigger/python/TrackingMonitoring_cff.py +++ b/DQMOffline/Trigger/python/TrackingMonitoring_cff.py @@ -26,6 +26,12 @@ doEffFromHitPatternVsBX = False, doEffFromHitPatternVsLUMI = False ) + +from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3 +pp_on_PbPb_run3.toModify(pixelTracksMonitoringHLT, + TrackProducer = 'hltPixelTracksPPOnAA', + allTrackProducer = 'hltPixelTracksPPOnAA') + iter0TracksMonitoringHLT = trackingMonHLT.clone( FolderName = 'HLT/Tracking/iter0', TrackProducer = 'hltIter0PFlowCtfWithMaterialTracks', @@ -94,6 +100,11 @@ doBSPlots = cms.bool(True), doSIPPlots = cms.bool(True) ) + +pp_on_PbPb_run3.toModify(iterHLTTracksMonitoringHLT, + TrackProducer = 'hltMergedTracksPPOnAA', + allTrackProducer = 'hltMergedTracksPPOnAA') + iter3TracksMonitoringHLT = trackingMonHLT.clone( FolderName = 'HLT/Tracking/iter3Merged', TrackProducer = 'hltIter3Merged', @@ -136,6 +147,10 @@ doEffFromHitPatternVsLUMI = False ) +pp_on_PbPb_run3.toModify(doubletRecoveryHPTracksMonitoringHLT, + TrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurityPPOnAA', + allTrackProducer = 'hltDoubletRecoveryPFlowTrackSelectionHighPurityPPOnAA') + ############ #### EGM tracks # GSF: hltEgammaGsfTracks