Skip to content

Commit

Permalink
Merge pull request #39387 from malbouis/alca-HIscenarios-125X
Browse files Browse the repository at this point in the history
AlCa Run3 Heavy Ion scenarios
  • Loading branch information
cmsbuild authored Sep 17, 2022
2 parents 6d507e6 + 655c73a commit 7e88734
Show file tree
Hide file tree
Showing 6 changed files with 117 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#!/usr/bin/env python3
"""
_hcalnzsEra_Run3_pp_on_AA_
Scenario supporting Run3 heavyIon collisions
"""

import os
import sys

from Configuration.DataProcessing.Impl.hcalnzs import hcalnzs
from Configuration.Eras.Era_Run3_pp_on_PbPb_cff import Run3_pp_on_PbPb

class hcalnzsEra_Run3_pp_on_PbPb(hcalnzs):
def __init__(self):
hcalnzs.__init__(self)
self.isRepacked=True
self.eras=Run3_pp_on_PbPb
#keep post-era parts the same as in the default Run3 era
self.promptCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
self.expressCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
self.visCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
"""
_hcalnzsEra_Run3_pp_on_PbPb_
Implement configuration building for data processing for heavyIon Run3
collision data taking for Run3 hcal nzs workflow in pp_on_PbPb data taking
"""
34 changes: 34 additions & 0 deletions Configuration/DataProcessing/python/Impl/ppEra_Run3_pp_on_PbPb.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/usr/bin/env python3
"""
_ppEra_Run3_pp_on_PbPb_
Scenario supporting proton collisions
"""

import os
import sys

from Configuration.DataProcessing.Reco import Reco
import FWCore.ParameterSet.Config as cms
from Configuration.Eras.Era_Run3_pp_on_PbPb_cff import Run3_pp_on_PbPb

from Configuration.DataProcessing.Impl.pp import pp

class ppEra_Run3_pp_on_PbPb(pp):
def __init__(self):
pp.__init__(self)
self.recoSeq=''
self.cbSc='pp'
self.isRepacked=True
self.eras=Run3_pp_on_PbPb
self.promptCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
self.expressCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
self.visCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
"""
_ppEra_Run3_pp_on_PbPb_
Implement configuration building for data processing for pp-like processing of HI
collision data taking for Run3
"""
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/usr/bin/env python3
"""
_trackingOnlyEra_Run3_pp_on_PbPb
Scenario supporting Run3 heavyIon collisions and tracking only reconstruction for HP beamspot
"""

import os
import sys

from Configuration.DataProcessing.Impl.trackingOnly import trackingOnly
import FWCore.ParameterSet.Config as cms
from Configuration.Eras.Era_Run3_pp_on_PbPb_cff import Run3_pp_on_PbPb

from Configuration.DataProcessing.Impl.pp import pp

class trackingOnlyEra_Run3_pp_on_PbPb(trackingOnly):
def __init__(self):
trackingOnly.__init__(self)
# tracking only RECO is sufficient, to run high performance BS at PCL;
# some dedicated customization are required, though: customisePostEra_Run2_2018_trackingOnly
self.isRepacked=True
self.eras=Run3_pp_on_PbPb
#keep post-era parts the same as in the default 2018 era
self.promptCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]
self.expressCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb_express_trackingOnly' ]
self.visCustoms += [ 'Configuration/DataProcessing/RecoTLR.customisePostEra_Run3_pp_on_PbPb' ]

"""
_trackingOnlyEra_Run3_pp_on_PbPb
Implement configuration building for data processing for Run3 heavyIon
collision data taking for Run3, high performance beamspot in pp_on_PbPb data taking
"""
10 changes: 10 additions & 0 deletions Configuration/DataProcessing/python/RecoTLR.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,16 @@ def customisePostEra_Run3_express_trackingOnly(process):
customisePostEra_Run2_2018_express_trackingOnly(process)
return process

def customisePostEra_Run3_pp_on_PbPb_express_trackingOnly(process):
#start with repeat of 2018
customisePostEra_Run2_2018_pp_on_AA_express_trackingOnly(process)
return process

def customisePostEra_Run3_pp_on_PbPb(process):
customisePostEra_Run3(process)
return process


##############################################################################
def customisePPData(process):
#deprecated process= customiseCommon(process)
Expand Down
4 changes: 2 additions & 2 deletions Configuration/DataProcessing/test/run_CfgTest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ do
done


declare -a arr=("AlCaLumiPixels" "AlCaTestEnable" "cosmicsEra_Run2_2018" "hcalnzsEra_Run2_2018" "ppEra_Run2_2018" "hcalnzsEra_Run2_2018_highBetaStar" "hcalnzsEra_Run2_2018_pp_on_AA" "ppEra_Run2_2018_highBetaStar" "ppEra_Run2_2018_pp_on_AA" "cosmicsHybridEra_Run2_2018" "cosmicsEra_Run3" "hcalnzsEra_Run3" "ppEra_Run3" "AlCaLumiPixels_Run3" "AlCaPhiSymEcal_Nano" "AlCaPPS_Run3")
declare -a arr=("AlCaLumiPixels" "AlCaTestEnable" "cosmicsEra_Run2_2018" "hcalnzsEra_Run2_2018" "ppEra_Run2_2018" "hcalnzsEra_Run2_2018_highBetaStar" "hcalnzsEra_Run2_2018_pp_on_AA" "ppEra_Run2_2018_highBetaStar" "ppEra_Run2_2018_pp_on_AA" "cosmicsHybridEra_Run2_2018" "cosmicsEra_Run3" "hcalnzsEra_Run3" "ppEra_Run3" "AlCaLumiPixels_Run3" "AlCaPhiSymEcal_Nano" "AlCaPPS_Run3" "ppEra_Run3_pp_on_PbPb" "hcalnzsEra_Run3_pp_on_PbPb")
for scenario in "${arr[@]}"
do
runTest "${LOCAL_TEST_DIR}/RunPromptReco.py --scenario $scenario --reco --aod --dqmio --global-tag GLOBALTAG --lfn=/store/whatever --alcareco TkAlMinBias+SiStripCalMinBias"
Expand Down Expand Up @@ -78,7 +78,7 @@ runTest "${LOCAL_TEST_DIR}/RunExpressProcessing.py --scenario AlCaLumiPixels_Run
runTest "${LOCAL_TEST_DIR}/RunAlcaSkimming.py --scenario AlCaLumiPixels_Run3 --lfn=/store/whatever --global-tag GLOBALTAG --skims AlCaPCCRandom,PromptCalibProdLumiPCC"
runTest "${LOCAL_TEST_DIR}/RunAlcaHarvesting.py --scenario AlCaLumiPixels_Run3 --lfn /store/whatever --dataset /A/B/C --global-tag GLOBALTAG --alcapromptdataset=PromptCalibProdLumiPCC"

declare -a arr=("trackingOnlyEra_Run2_2018" "trackingOnlyEra_Run2_2018_highBetaStar" "trackingOnlyEra_Run2_2018_pp_on_AA" "trackingOnlyEra_Run3")
declare -a arr=("trackingOnlyEra_Run2_2018" "trackingOnlyEra_Run2_2018_highBetaStar" "trackingOnlyEra_Run2_2018_pp_on_AA" "trackingOnlyEra_Run3" "trackingOnlyEra_Run3_pp_on_PbPb")
for scenario in "${arr[@]}"
do
runTest "${LOCAL_TEST_DIR}/RunExpressProcessing.py --scenario $scenario --global-tag GLOBALTAG --lfn /store/whatever --alcarecos=TkAlMinBias+PromptCalibProdBeamSpotHP"
Expand Down
9 changes: 5 additions & 4 deletions DQM/TrackingMonitorSource/python/PPonAATrackingOnly_custom.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,14 @@
import FWCore.ParameterSet.Config as cms

def customise_PPonAATrackingOnlyDQM(process):
if hasattr(process,'dqmofflineOnPAT_step'):
if hasattr(process,'dqmofflineOnPAT_step') or hasattr(process,'dqmoffline_step'):
process=customise_DQMSequenceHiConformalTracks(process)
return process
return process

def customise_DQMSequenceHiConformalTracks(process):
process.TrackingDQMSourceTier0Common.remove(process.hiConformalPixelTracksQA)
process.TrackingDQMSourceTier0Common.remove(process.hiConformalPixelTracksQA)
process.TrackingDQMSourceTier0MinBias.remove(process.hiConformalPixelTracksQA)
process.TrackingDQMSourceTier0.remove(process.hiConformalPixelTracksQA)
return process



0 comments on commit 7e88734

Please sign in to comment.