13 return frag+
'_'+key+
'_'+step+suffix
16 return step+suffix+
'_'+key
18 neutronKeys = [
'2023D14',
'2023D16',
'2023D17']
19 neutronFrags = [
'ZMM_14',
'MinBias_14TeV']
23 for year
in upgradeKeys:
24 for i,key
in enumerate(upgradeKeys[year]):
25 numWF=numWFAll[year][i]
26 for frag
in upgradeFragments:
28 for stepType
in upgradeSteps.keys():
29 stepList[stepType] = []
31 for step
in upgradeProperties[year][key][
'ScenToRun']:
32 stepMaker = makeStepName
34 if 'HLBeamSpotFull' in step
and '14TeV' in frag:
35 step =
'GenSimHLBeamSpotFull14' 36 stepMaker = makeStepNameSim
38 if 'HARVEST' in step: hasHarvest =
True 40 for stepType
in upgradeSteps.keys():
42 if (stepType
is not 'baseline')
and ( (
'PU' in step
and step.replace(
'PU',
'')
in upgradeSteps[stepType][
'PU'])
or (step
in upgradeSteps[stepType][
'steps']) ):
43 stepList[stepType].
append(stepMaker(key,frag[:-4],step,upgradeSteps[stepType][
'suffix']))
45 stepList[stepType].
append(stepMaker(key,frag[:-4],step,upgradeSteps[
'baseline'][
'suffix']))
47 workflows[numWF] = [ upgradeDatasetFromFragment[frag], stepList[
'baseline']]
50 if upgradeDatasetFromFragment[frag]==
"TTbar_14TeV" and '2023' in key:
51 workflows[numWF+upgradeSteps[
'Timing'][
'offset']] = [ upgradeDatasetFromFragment[frag]+
"_Timing", stepList[
'Timing']]
54 if any(upgradeDatasetFromFragment[frag]==nfrag
for nfrag
in neutronFrags)
and any(nkey
in key
for nkey
in neutronKeys):
55 workflows[numWF+upgradeSteps[
'Neutron'][
'offset']] = [ upgradeDatasetFromFragment[frag]+
"_Neutron", stepList[
'Neutron']]
58 if (upgradeDatasetFromFragment[frag]==
"TTbar_13" or upgradeDatasetFromFragment[frag]==
"TTbar_14TeV")
and not 'PU' in key
and hasHarvest:
59 workflows[numWF+upgradeSteps[
'trackingOnly'][
'offset']] = [ upgradeDatasetFromFragment[frag], stepList[
'trackingOnly']]
def makeStepName(key, frag, step, suffix)
bool any(const std::vector< T > &v, const T &what)
def makeStepNameSim(key, frag, step, suffix)