CMS 3D CMS Logo

relval_2017.py
Go to the documentation of this file.
1 
2 # import the definition of the steps and input files:
4 
5 # here only define the workflows as a combination of the steps defined above:
6 workflows = Matrix()
7 
8 # each workflow defines a name and a list of steps to be done.
9 # if no explicit name/label given for the workflow (first arg),
10 # the name of step1 will be used
11 
12 
13 
14 #just define all of them
15 
16 #WFs to run in IB:
17 # 2017 (ele guns 10, 35, 1000; pho guns 10, 35; mu guns 1, 10, 100, 1000, QCD 3TeV, QCD Flat)
18 # 2017 (ZMM, TTbar, ZEE, MinBias, TTbar PU, ZEE PU, TTbar design)
19 # 2018 (ZMM, TTbar, ZEE, MinBias, TTbar PU, ZEE PU, TTbar design)
20 # 2019 (ZMM, TTbar, ZEE, MinBias, TTbar PU, ZEE PU, TTbar design)
21 numWFIB = [10001.0,10002.0,10003.0,10004.0,10005.0,10006.0,10007.0,10008.0,10009.0,10059.0,10071.0,
22  10042.0,10024.0,10025.0,10026.0,10023.0,10224.0,10225.0,10424.0,
23  10842.0,10824.0,10825.0,10826.0,10823.0,11024.0,11025.0,11224.0,
24  11642.0,11624.0,11625.0,11626.0,11623.0,11824.0,11825.0,12024.0]
25 for i,key in enumerate(upgradeKeys[2017]):
26  numWF=numWFAll[2017][i]
27  for frag in upgradeFragments:
28  k=frag[:-4]+'_'+key
29  stepList=[]
30  for step in upgradeProperties[2017][key]['ScenToRun']:
31  if 'Sim' in step:
32  stepList.append(k+'_'+step)
33  else:
34  stepList.append(step+'_'+key)
35  if numWF in numWFIB:
36  workflows[numWF] = [ upgradeDatasetFromFragment[frag], stepList]
37  numWF+=1
38 
39 # Tracking-specific special workflows
40 def _trackingOnly(stepList):
41  res = []
42  for step in stepList:
43  s = step
44  if 'RecoFull' in step or 'HARVESTFull' in step:
45  s = s.replace('Full', 'Full_trackingOnly')
46  if 'ALCA' in s:
47  continue
48  res.append(s)
49  return res
50 def _trackingRun2(stepList):
51  res = []
52  for step in stepList:
53  s = step
54  if 'RecoFull' in step:
55  if 'trackingOnly' in step:
56  s = s.replace('Only', 'OnlyRun2')
57  else:
58  s = s.replace('Full', 'Full_trackingRun2')
59  if 'ALCA' in s:
60  continue
61  res.append(s)
62  return res
64  res = []
65  for step in stepList:
66  s = step
67  if 'RecoFull' in step:
68  if 'trackingOnly' in step:
69  s = s.replace('Only', 'OnlyPhase1QuadProp')
70  else:
71  s = s.replace('Full', 'Full_trackingPhase1QuadProp')
72  if 'ALCA' in s:
73  continue
74  res.append(s)
75  return res
76 def _trackingLowPU(stepList):
77  res = []
78  for step in stepList:
79  s = step
80  if 'RecoFull' in step:
81  if 'trackingOnly' in step:
82  s = s.replace('Only', 'OnlyLowPU')
83  else:
84  s = s.replace('Full', 'Full_trackingLowPU')
85  if 'ALCA' in s:
86  continue
87  res.append(s)
88  return res
89 
90 # compose and adding tracking specific workflows in the IB test.
91 # NB. those workflows are expected to be only used forIB test.
92 # if you really want to run them locally, do runTheMatrix.py --what 2017 -l workflow numbers
93 workflows[10024.1] = [ workflows[10024.0][0], _trackingOnly(workflows[10024.0][1]) ]
94 workflows[10024.2] = [ workflows[10024.0][0], _trackingRun2(workflows[10024.0][1]) ]
95 workflows[10024.3] = [ workflows[10024.1][0], _trackingRun2(workflows[10024.1][1]) ]
96 workflows[10024.4] = [ workflows[10024.0][0], _trackingPhase1QuadProp(workflows[10024.0][1]) ]
97 workflows[10024.5] = [ workflows[10024.1][0], _trackingPhase1QuadProp(workflows[10024.1][1]) ]
98 workflows[10024.6] = [ workflows[10024.0][0], _trackingLowPU(workflows[10024.0][1]) ]
def _trackingOnly(stepList)
Definition: relval_2017.py:40
CLHEP::HepMatrix Matrix
Definition: matutil.h:65
def _trackingLowPU(stepList)
Definition: relval_2017.py:76
def _trackingRun2(stepList)
Definition: relval_2017.py:50
def _trackingPhase1QuadProp(stepList)
Definition: relval_2017.py:63