diff --git a/Configuration/PyReleaseValidation/python/relval_2017.py b/Configuration/PyReleaseValidation/python/relval_2017.py index 1dd7cd8f9c419..c8cce1f30b7c5 100644 --- a/Configuration/PyReleaseValidation/python/relval_2017.py +++ b/Configuration/PyReleaseValidation/python/relval_2017.py @@ -38,6 +38,7 @@ # (Patatrack HCAL-only: TTbar - on CPU) # (TTbar 0T, TTbar PU 0T) # (TTbar PU MLPF) +# (TTbar PU prod-like) # (QCD 1.8TeV DeepCore) # 2023 (TTbar, TTbar PU, TTbar PU premix) # 2024 (TTbar, TTbar PU, TTbar PU premix) @@ -66,6 +67,7 @@ 11634.521, 11634.24,11834.24, 11834.13, + 11834.21, 11723.17, 12434.0,12634.0,12634.99, 12834.0,13034.0,13034.99,] diff --git a/Configuration/PyReleaseValidation/python/relval_steps.py b/Configuration/PyReleaseValidation/python/relval_steps.py index 9bf9d39181406..cfb3034fd8146 100644 --- a/Configuration/PyReleaseValidation/python/relval_steps.py +++ b/Configuration/PyReleaseValidation/python/relval_steps.py @@ -3495,7 +3495,7 @@ def gen2021HiMix(fragment,howMuch): '--filetype':'DQM', } - upgradeStepDict['HARVESTRecNan'][k]={'-s':'HARVESTING:@standardValidation+@standardDQM+@ExtraHLT+@miniAODValidation+@miniAODDQM+@nanoAODDQM', + upgradeStepDict['HARVESTNano'][k]={'-s':'HARVESTING:@standardValidation+@standardDQM+@ExtraHLT+@miniAODValidation+@miniAODDQM+@nanoAODDQM', '--conditions':gt, '--mc':'', '--geometry' : geom, @@ -3546,7 +3546,7 @@ def gen2021HiMix(fragment,howMuch): '--geometry' : geom } - upgradeStepDict['RecNan'][k] = {'-s':'RAW2DIGI,L1Reco,RECO,RECOSIM,EI,PAT,NANO,VALIDATION:@standardValidation+@miniAODValidation,DQM:@standardDQM+@ExtraHLT+@miniAODDQM+@nanoAODDQM', + upgradeStepDict['RecoNano'][k] = {'-s':'RAW2DIGI,L1Reco,RECO,RECOSIM,EI,PAT,NANO,VALIDATION:@standardValidation+@miniAODValidation,DQM:@standardDQM+@ExtraHLT+@miniAODDQM+@nanoAODDQM', '--conditions':gt, '--datatier':'GEN-SIM-RECO,MINIAODSIM,NANOAODSIM,DQMIO', '-n':'10', diff --git a/Configuration/PyReleaseValidation/python/relval_upgrade.py b/Configuration/PyReleaseValidation/python/relval_upgrade.py index 341102308fc28..7467312510e5d 100644 --- a/Configuration/PyReleaseValidation/python/relval_upgrade.py +++ b/Configuration/PyReleaseValidation/python/relval_upgrade.py @@ -46,8 +46,9 @@ def makeStepName(key,frag,step,suffix): # hack to add an extra step if 'ProdLike' in specialType: if 'Reco' in step: # handles both Reco and RecoGlobal - stepList[specialType].append(stepMaker(key,frag[:-4],step.replace('RecoGlobal','MiniAOD').replace('Reco','MiniAOD'),specialWF.suffix)) - stepList[specialType].append(stepMaker(key,frag[:-4],step.replace('RecoGlobal','Nano').replace('Reco','Nano'),specialWF.suffix)) + stepList[specialType].append(stepMaker(key,frag[:-4],step.replace('RecoGlobal','MiniAOD').replace('RecoNano','MiniAOD').replace('Reco','MiniAOD'),specialWF.suffix)) + if 'RecoNano' in step: + stepList[specialType].append(stepMaker(key,frag[:-4],step.replace('RecoNano','Nano'),specialWF.suffix)) # similar hacks for premixing if 'PMX' in specialType: if 'GenSim' in step: @@ -60,11 +61,6 @@ def makeStepName(key,frag,step,suffix): else: stepList[specialType][-1] = stepMade else: stepList[specialType].append(stepMaker(key,frag[:-4],step,'')) - - if specialType in ['baseline']: - for ist, st in enumerate(stepList[specialType]): - if st.split('_')[0] == 'Reco': stepList[specialType][ist] = st.replace('Reco', 'RecNan') - elif st.split('_')[0] == 'HARVEST': stepList[specialType][ist] = st.replace('HARVEST', 'HARVESTRecNan') for specialType,specialWF in upgradeWFs.items(): # remove other steps for premixS1 diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index c18e59bcf4ff5..e07540d196516 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -152,7 +152,7 @@ def setup_(self, step, stepName, stepDict, k, properties): if cust is not None: stepDict[stepName][k]['--customise']=cust if era is not None: stepDict[stepName][k]['--era']=era - if 'RecNan' in stepName: stepDict[stepName][k]['--era'] += ',run3_nanoAOD_devel' + if 'RecoNano' in stepName: stepDict[stepName][k]['--era'] += ',run3_nanoAOD_devel' if modifier is not None: stepDict[stepName][k]['--procModifier']=modifier def condition(self, fragment, stepList, key, hasHarvest): return True @@ -168,16 +168,16 @@ def condition(self, fragment, stepList, key, hasHarvest): 'Reco', 'RecoFakeHLT', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTFakeHLT', - 'HARVESTRecNan', + 'HARVESTNano', 'FastSim', 'HARVESTFast', 'HARVESTGlobal', 'ALCA', 'Nano', 'MiniAOD', - 'RecNan', ], PU = [ 'DigiTrigger', @@ -186,13 +186,13 @@ def condition(self, fragment, stepList, key, hasHarvest): 'Digi', 'Reco', 'RecoFakeHLT', + 'RecoNano', 'HARVEST', 'HARVESTFakeHLT', - 'HARVESTRecNan', + 'HARVESTNano', 'HARVESTGlobal', 'MiniAOD', 'Nano', - 'RecNan', ], suffix = '', offset = 0.0, @@ -221,6 +221,8 @@ def setup_(self, step, stepName, stepDict, k, properties): 'HARVEST', 'RecoGlobal', 'HARVESTGlobal', + 'RecoNano', + 'HARVESTNano', ], PU = [], suffix = '_trackingOnly', @@ -294,6 +296,8 @@ def condition_(self, fragment, stepList, key, hasHarvest): 'HARVEST', 'RecoGlobal', 'HARVESTGlobal', + 'RecoNano', + 'HARVESTNano', ], PU = [], suffix = '_pixelTrackingOnly', @@ -317,6 +321,7 @@ def condition_(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', ], PU = [], suffix = '_trackingMkFit', @@ -347,6 +352,8 @@ def condition(self, fragment, stepList, key, hasHarvest): 'HARVEST', 'RecoGlobal', 'HARVESTGlobal', + 'RecoNano', + 'HARVESTNano', ], PU = [], suffix = '_seedingDeepCore', @@ -382,9 +389,11 @@ def condition(self, fragment, stepList, key, hasHarvest): upgradeWFs['trackdnn'] = UpgradeWorkflow_trackdnn( steps = [ 'Reco', + 'RecoNano', ], PU = [ 'Reco', + 'RecoNano', ], suffix = '_trackdnn', offset = 0.91, @@ -402,16 +411,18 @@ def condition(self, fragment, stepList, key, hasHarvest): upgradeWFs['mlpf'] = UpgradeWorkflow_mlpf( steps = [ 'Reco', + 'RecoNano', ], PU = [ 'Reco', + 'RecoNano', ], suffix = '_mlpf', offset = 0.13, ) upgradeWFs['mlpf'].step3 = { - '--datatier': 'GEN-SIM-RECO,RECOSIM,MINIAODSIM,DQMIO', - '--eventcontent': 'FEVTDEBUGHLT,RECOSIM,MINIAODSIM,DQM', + '--datatier': 'GEN-SIM-RECO,RECOSIM,MINIAODSIM,NANOAODSIM,DQMIO', + '--eventcontent': 'FEVTDEBUGHLT,RECOSIM,MINIAODSIM,NANOEDMAODSIM,DQM', '--procModifiers': 'mlpf' } @@ -433,6 +444,8 @@ def __init__(self, digi = {}, reco = {}, harvest = {}, **kwargs): 'HARVESTFakeHLT', 'RecoGlobal', 'HARVESTGlobal', + 'RecoNano', + 'HARVESTNano', ], PU = [], **kwargs) @@ -736,10 +749,10 @@ def setup_(self, step, stepName, stepDict, k, properties): elif 'MiniAOD' in step: # the separate miniAOD step is used here stepDict[stepName][k] = deepcopy(stepDict[step][k]) - if 'ALCA' in step or 'HARVEST' in step: + elif 'ALCA' in step or 'HARVEST' in step: # remove step stepDict[stepName][k] = None - if 'Nano' in step: + elif 'Nano' in step: stepDict[stepName][k] = merge([{'--filein':'file:step4.root','-s':'NANO','--datatier':'NANOAODSIM','--eventcontent':'NANOEDMAODSIM'}, stepDict[step][k]]) def condition(self, fragment, stepList, key, hasHarvest): return fragment=="TTbar_14TeV" and ('2026' in key or '2021' in key) @@ -750,8 +763,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'MiniAOD', 'ALCA', 'Nano', @@ -762,8 +777,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'MiniAOD', 'ALCA', 'Nano', @@ -863,12 +880,16 @@ def condition(self, fragment, stepList, key, hasHarvest): 'Digi', 'Reco', 'HARVEST', + 'RecoNano', + 'HARVESTNano', 'ALCA', ], PU = [ 'Digi', 'Reco', 'HARVEST', + 'RecoNano', + 'HARVESTNano', ], suffix = '_0T', offset = 0.24, @@ -1040,6 +1061,7 @@ def workflow_(self, workflows, num, fragment, stepList, key): 'RecoLocal', 'Reco', 'RecoGlobal', + 'RecoNano', 'Nano', ], suffix = '_PMXS2', @@ -1057,6 +1079,7 @@ def workflow_(self, workflows, num, fragment, stepList, key): 'RecoLocal', 'Reco', 'RecoGlobal', + 'RecoNano', 'Nano', ], suffix = '_PMXS1S2', @@ -1123,9 +1146,11 @@ def condition(self, fragment, stepList, key, hasHarvest): 'RecoLocal', 'Reco', 'RecoGlobal', + 'RecoNano', 'Nano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'MiniAOD', 'ALCA', ], @@ -1144,9 +1169,11 @@ def condition(self, fragment, stepList, key, hasHarvest): 'RecoLocal', 'Reco', 'RecoGlobal', + 'RecoNano', 'Nano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'MiniAOD', 'ALCA', ], @@ -1173,8 +1200,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'ALCA', ], PU = [], @@ -1200,8 +1229,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'ALCA', ], PU = [], @@ -1213,7 +1244,11 @@ def condition(self, fragment, stepList, key, hasHarvest): class UpgradeWorkflow_DDDDB(UpgradeWorkflow): def setup_(self, step, stepName, stepDict, k, properties): if 'Run3' in stepDict[step][k]['--era']: - stepDict[stepName][k] = merge([{'--conditions': 'auto:phase1_2021_realistic_ddd', '--geometry': 'DB:Extended', '--era': 'Run3_DDD'}, stepDict[step][k]]) + # retain any other eras + tmp_eras = stepDict[step][k]['--era'].split(',') + tmp_eras[tmp_eras.index("Run3")] = 'Run3_DDD' + tmp_eras = ','.join(tmp_eras) + stepDict[stepName][k] = merge([{'--conditions': 'auto:phase1_2021_realistic_ddd', '--geometry': 'DB:Extended', '--era': tmp_eras}, stepDict[step][k]]) def condition(self, fragment, stepList, key, hasHarvest): return '2021' in key upgradeWFs['DDDDB'] = UpgradeWorkflow_DDDDB( @@ -1225,8 +1260,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'ALCA', ], PU = [], @@ -1250,8 +1287,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'ALCA', ], PU = [ @@ -1262,8 +1301,10 @@ def condition(self, fragment, stepList, key, hasHarvest): 'DigiTrigger', 'Reco', 'RecoGlobal', + 'RecoNano', 'HARVEST', 'HARVESTGlobal', + 'HARVESTNano', 'ALCA', ], suffix = '_SonicTriton', @@ -1317,7 +1358,7 @@ def condition(self, fragment, stepList, key, hasHarvest): 'HLTmenu': '@relval2021', 'Era' : 'Run3', 'BeamSpot': 'Run3RoundOptics25ns13TeVLowSigmaZ', - 'ScenToRun' : ['GenSim','Digi','Reco','HARVEST','ALCA'], + 'ScenToRun' : ['GenSim','Digi','RecoNano','HARVESTNano','ALCA'], }, '2021Design' : { 'Geom' : 'DB:Extended', @@ -1325,7 +1366,7 @@ def condition(self, fragment, stepList, key, hasHarvest): 'HLTmenu': '@relval2021', 'Era' : 'Run3', 'BeamSpot': 'GaussSigmaZ4cm', - 'ScenToRun' : ['GenSim','Digi','Reco','HARVEST'], + 'ScenToRun' : ['GenSim','Digi','RecoNano','HARVESTNano'], }, '2023' : { 'Geom' : 'DB:Extended', @@ -1333,7 +1374,7 @@ def condition(self, fragment, stepList, key, hasHarvest): 'HLTmenu': '@relval2021', 'Era' : 'Run3', 'BeamSpot': 'Run3RoundOptics25ns13TeVLowSigmaZ', - 'ScenToRun' : ['GenSim','Digi','Reco','HARVEST','ALCA'], + 'ScenToRun' : ['GenSim','Digi','RecoNano','HARVESTNano','ALCA'], }, '2024' : { 'Geom' : 'DB:Extended', @@ -1341,7 +1382,7 @@ def condition(self, fragment, stepList, key, hasHarvest): 'HLTmenu': '@relval2021', 'Era' : 'Run3', 'BeamSpot': 'Run3RoundOptics25ns13TeVLowSigmaZ', - 'ScenToRun' : ['GenSim','Digi','Reco','HARVEST','ALCA'], + 'ScenToRun' : ['GenSim','Digi','RecoNano','HARVESTNano','ALCA'], }, } @@ -1349,8 +1390,8 @@ def condition(self, fragment, stepList, key, hasHarvest): for key in list(upgradeProperties[2017].keys()): upgradeProperties[2017][key+'PU'] = deepcopy(upgradeProperties[2017][key]) upgradeProperties[2017][key+'PU']['ScenToRun'] = ['GenSim','DigiPU'] + \ - (['RecoPU','HARVESTPU'] if '202' in key else ['RecoFakeHLTPU','HARVESTFakeHLTPU']) + \ - (['Nano'] if 'Design' not in key else []) + (['RecoNanoPU','HARVESTNanoPU'] if '202' in key else ['RecoFakeHLTPU','HARVESTFakeHLTPU']) + \ + (['Nano'] if 'Nano' in upgradeProperties[2017][key]['ScenToRun'] else []) upgradeProperties[2026] = { '2026D49' : {