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 numWFIB = [10001.0,10002.0,10003.0,10004.0,10005.0,10006.0,10007.0,10008.0,10009.0,10059.0,10071.0,
21  10042.0,10024.0,10025.0,10026.0,10023.0,10224.0,10225.0,10424.0,
22  10842.0,10824.0,10825.0,10826.0,10823.0,11024.0,11025.0,11224.0]
23 for i,key in enumerate(upgradeKeys[2017]):
24  numWF=numWFAll[2017][i]
25  for frag in upgradeFragments:
26  k=frag[:-4]+'_'+key
27  stepList=[]
28  for step in upgradeProperties[2017][key]['ScenToRun']:
29  if 'Sim' in step:
30  stepList.append(k+'_'+step)
31  else:
32  stepList.append(step+'_'+key)
33  if numWF in numWFIB:
34  workflows[numWF] = [ upgradeDatasetFromFragment[frag], stepList]
35  numWF+=1
36 
37 # Tracking-specific special workflows
38 def _trackingOnly(stepList):
39  res = []
40  for step in stepList:
41  s = step
42  if 'RecoFull' in step or 'HARVESTFull' in step:
43  s = s.replace('Full', 'Full_trackingOnly')
44  if 'ALCA' in s:
45  continue
46  res.append(s)
47  return res
48 def _trackingRun2(stepList):
49  res = []
50  for step in stepList:
51  s = step
52  if 'RecoFull' in step:
53  if 'trackingOnly' in step:
54  s = s.replace('Only', 'OnlyRun2')
55  else:
56  s = s.replace('Full', 'Full_trackingRun2')
57  if 'ALCA' in s:
58  continue
59  res.append(s)
60  return res
62  res = []
63  for step in stepList:
64  s = step
65  if 'RecoFull' in step:
66  if 'trackingOnly' in step:
67  s = s.replace('Only', 'OnlyPhase1QuadProp')
68  else:
69  s = s.replace('Full', 'Full_trackingPhase1QuadProp')
70  if 'ALCA' in s:
71  continue
72  res.append(s)
73  return res
74 def _trackingLowPU(stepList):
75  res = []
76  for step in stepList:
77  s = step
78  if 'RecoFull' in step:
79  if 'trackingOnly' in step:
80  s = s.replace('Only', 'OnlyLowPU')
81  else:
82  s = s.replace('Full', 'Full_trackingLowPU')
83  if 'ALCA' in s:
84  continue
85  res.append(s)
86  return res
87 
88 # compose and adding tracking specific workflows in the IB test.
89 # NB. those workflows are expected to be only used forIB test.
90 # if you really want to run them locally, do runTheMatrix.py --what 2017 -l workflow numbers
91 workflows[10024.1] = [ workflows[10024.0][0], _trackingOnly(workflows[10024.0][1]) ]
92 workflows[10024.2] = [ workflows[10024.0][0], _trackingRun2(workflows[10024.0][1]) ]
93 workflows[10024.3] = [ workflows[10024.1][0], _trackingRun2(workflows[10024.1][1]) ]
94 workflows[10024.4] = [ workflows[10024.0][0], _trackingPhase1QuadProp(workflows[10024.0][1]) ]
95 workflows[10024.5] = [ workflows[10024.1][0], _trackingPhase1QuadProp(workflows[10024.1][1]) ]
96 workflows[10024.6] = [ workflows[10024.0][0], _trackingLowPU(workflows[10024.0][1]) ]
def _trackingOnly(stepList)
Definition: relval_2017.py:38
CLHEP::HepMatrix Matrix
Definition: matutil.h:65
def _trackingLowPU(stepList)
Definition: relval_2017.py:74
def _trackingRun2(stepList)
Definition: relval_2017.py:48
def _trackingPhase1QuadProp(stepList)
Definition: relval_2017.py:61