ATLAS Offline Software
Loading...
Searching...
No Matches
Trig_reco_tf Namespace Reference

Functions

 main ()
 getTransform ()
 addTriggerArgs (parser)
 addTrigCostRateArgs (parser)
 addTriggerDBArgs (parser)
 addDebugArgs (parser)

Function Documentation

◆ addDebugArgs()

addDebugArgs ( parser)

Definition at line 194 of file Trig_reco_tf.py.

194def addDebugArgs(parser):
195 # Use arggroup to get these arguments in their own sub-section (of --help)
196 parser.defineArgGroup('Debug', 'Specific options related to the trigger debug recovery')
197
198 parser.add_argument('--outputHIST_DEBUGSTREAMMONFile', nargs='+',
199 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
200 help='Output DEBUGSTREAMMON file', group='Debug')
201
202

◆ addTrigCostRateArgs()

addTrigCostRateArgs ( parser)

Definition at line 147 of file Trig_reco_tf.py.

147def addTrigCostRateArgs(parser):
148 # Use arggroup to get these arguments in their own sub-section (of --help)
149 parser.defineArgGroup('TrigCost', 'Specific options related to the trigger cost and rates steps in trigger reprocessings')
150
151 # without a outputDRAW_TRIGCOSTFile name specified then it will not be possible to run any further COST analysis if the BS is slimmed to a specific stream
152 parser.add_argument('--outputDRAW_TRIGCOSTFile', nargs='+',
153 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='output', runarg=True),
154 help='Output bytestream file of CostMonitoring stream', group='TrigCost')
155 # input BS file for the TRIGCOST step (name just to be unique identifier for prodSys)
156 parser.add_argument('--inputDRAW_TRIGCOSTFile', nargs='+',
157 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='input', runarg=True),
158 help='Input bytestream file of CostMonitoring stream', group='TrigCost')
159 # NTUP_COST is used for COST monitoring - used in the reco release
160 parser.add_argument('--outputNTUP_TRIGCOSTFile', nargs='+',
161 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
162 help='D3PD output NTUP_TRIGCOST file', group='TrigCost')
163 # NTUP_RATE is used for COST monitoring - used in the reco release
164 parser.add_argument('--outputNTUP_TRIGRATEFile', nargs='+',
165 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
166 help='D3PD output NTUP_TRIGRATE file', group='TrigCost')
167
168 # Additional cost arguments for cost processing step
169 parser.add_argument('--costopts', nargs='+',
170 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, splitter=' ', runarg=False),
171 help='Extra options to pass to cost processing.', group='TrigCost')
172
173 # Additional rate arguments for rates analysis step
174 parser.add_argument('--rateopts', nargs='+',
175 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, splitter=' ', runarg=False),
176 help='Extra options to pass to rates analysis.', group='TrigCost')
177

◆ addTriggerArgs()

addTriggerArgs ( parser)

Definition at line 100 of file Trig_reco_tf.py.

100def addTriggerArgs(parser):
101 # Use arggroup to get these arguments in their own sub-section (of --help)
102 parser.defineArgGroup('Trigger', 'Specific options related to the trigger configuration used for reprocessing')
103
104 # Arguments specific for trigger transform
105 # writeBS used in literal arguments when running HLT step in athena (not athenaHLT/EF)
106 parser.add_argument('--writeBS', type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
107 help='Needed if running BSRDO to BS step in athena (default: True)', group='Trigger', default=trfArgClasses.argBool(True, runarg=True))
108 # input BS file for the HLT step (name just to be unique identifier)
109 parser.add_argument('--inputBS_RDOFile', nargs='+',
110 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='input', runarg=True, type='bs'),
111 help='Input bytestream file', group='Trigger')
112 # without an outputBSFile name specified then any further steps will know to use tmp.BS
113 parser.add_argument('--outputBSFile', nargs='+',
114 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='output', runarg=True, type='bs'),
115 help='Output bytestream file', group='Trigger')
116 # select output stream in BS file
117
119 parser.add_argument('--streamSelection', nargs='+', type=trfArgClasses.argFactory(trfArgClasses.argList, runarg=True),
120 help='select output streams in produced BS file (default: \"Main\"). Specify \"All\" to disable splitting (standard reco will fail on any events with only PEB data)', group='Trigger', default=trfArgClasses.argList("Main", runarg=True))
121 # HLT out histogram file, if defined renames expert-monitoring file that is produced automatically
122 parser.add_argument('--outputHIST_HLTMONFile', nargs='+',
123 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
124 help='Output HLTMON file', group='Trigger')
125 # Trigger Configuration String as used in reco Steps
126 parser.add_argument('--triggerConfig', nargs='+', metavar='substep=TRIGGERCONFIG',
127 type=trfArgClasses.argFactory(trfArgClasses.argSubstep, runarg=True, separator='='),
128 help='Trigger Configuration String. '
129 'N.B. This argument uses EQUALS (=) to separate the substep name from the value.', group='Trigger')
130 # precommand
131 parser.add_argument('--precommand', nargs='+', type=trfArgClasses.argFactory(trfArgClasses.argList, runarg=True),
132 help='precommand for trigger step ("-c")', group='Trigger')
133 # postcommand
134 parser.add_argument('--postcommand', nargs='+', type=trfArgClasses.argFactory(trfArgClasses.argList, runarg=True),
135 help='postcommand for trigger step ("-C")', group='Trigger')
136
137 # trigger executable
138 parser.add_argument('--trigExe', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
139 default=trfArgClasses.argString("athenaEF.py"),
140 help='Executable to run in the trigger step', group='Trigger')
141
142 # For prodsys to make sure uses inputBS_RDOFile rather than inputBSFile when running the b2r step
143 parser.add_argument('--prodSysBSRDO', type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
144 help='For prodsys to make sure uses inputBS_RDOFile rather than inputBSFile when running the b2r step', group='Trigger')
145
146

◆ addTriggerDBArgs()

addTriggerDBArgs ( parser)

Definition at line 178 of file Trig_reco_tf.py.

178def addTriggerDBArgs(parser):
179 # Use arggroup to get these arguments in their own sub-section (of --help)
180 parser.defineArgGroup('TriggerDB', 'Specific options related to the trigger DB')
181
182 parser.add_argument('--useDB', type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
183 help='read from DB', group='TriggerDB')
184 parser.add_argument('--DBserver', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
185 help='DB name', group='TriggerDB')
186 parser.add_argument('--DBsmkey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
187 help='DB SMK', group='TriggerDB')
188 parser.add_argument('--DBhltpskey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
189 help='DB hltpskey', group='TriggerDB')
190 parser.add_argument('--DBl1pskey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
191 help='DB l1pskey', group='TriggerDB')
192
193

◆ getTransform()

getTransform ( )

Definition at line 42 of file Trig_reco_tf.py.

42def getTransform():
43 executorSet = set()
44
45 # BSRDOtoRAW is the HLT step of the trigger transform
46 executorSet.add(trigRecoExecutor(name = 'BSRDOtoRAW',
47 skeletonCA = 'TriggerJobOpts.runHLT',
48 substep = 'b2r', tryDropAndReload = False,
49 inData = ['BS_RDO', 'RDO'], outData = ['BS', 'DRAW_TRIGCOST', 'HIST_HLTMON', 'HIST_DEBUGSTREAMMON'],
50 perfMonFile = 'ntuple_BSRDOtoRAW.pmon.gz'))
51
52 # RAWtoCOST is the COST step for trigger transform
53 # runs in athena and will succeed if input BS file has costmon enabled
54 executorSet.add(trigCostExecutor(name = 'DRAWCOSTtoNTUPCOST',
55 exe = 'RunTrigCostAnalysis.py',
56 inData = ['DRAW_TRIGCOST'], outData = ['NTUP_TRIGCOST']))
57
58 # AODtoNTUPRATE is the RATE step for trigger transform
59 # runs in athena from an input AOD file
60 executorSet.add(trigRateExecutor(name = 'AODtoNTUPRATE',
61 exe = 'RatesAnalysisFullMenu.py',
62 inData = ['AOD'], outData = ['NTUP_TRIGRATE']))
63
64 # RAWtoALL, DQHistogramMerge are the reconstruction substeps for trigger transform
65 # shortened list from addRecoSubsteps in RecJobTransforms.recTransformUtils
66 executorSet.add(athenaExecutor(name = 'RAWtoALL',
67 skeletonCA = 'RecJobTransforms.RAWtoALL_Skeleton',
68 substep = 'r2a', inData = ['BS', 'RDO'],
69 outData = ['ESD', 'AOD', 'HIST_R2A'],
70 perfMonFile = 'ntuple_RAWtoALL.pmon.gz'))
71 executorSet.add(DQMergeExecutor(name = 'DQHistogramMerge', inData = ['HIST_R2A'], outData = ['HIST']))
72
73 # Other reco steps - not currently used in trigger reprocessings
74 # if remove can also remove outputNTUP_TRIGFile
75
76 trf = transform(executor = executorSet, description = 'Trigger transform to run HLT, followed by'
77 ' general purpose ATLAS reconstruction transform. Input to HLT is inputBS_RDOFile'
78 ' with outputs of RDO, ESD or AOD. For more details see:'
79 ' https://twiki.cern.ch/twiki/bin/viewauth/Atlas/TriggerTransform or for reco_tf, see:'
80 ' https://twiki.cern.ch/twiki/bin/viewauth/Atlas/RecoTf')
81
82 # Add arguments
83 # shortened list from RecJobTransforms.Reco_tf
84 addAthenaArguments(trf.parser)
85 addDetectorArguments(trf.parser)
86 # shortened list from addAllRecoArgs in RecJobTransforms.recTransformUtils
87 addCommonRecTrfArgs(trf.parser)
88 addStandardRecoFiles(trf.parser)
89
90 # Now add specific trigger transform arguments
91 # Putting this last makes them appear last in the help so easier to find
92 addTriggerArgs(trf.parser)
93 addTrigCostRateArgs(trf.parser)
94 addTriggerDBArgs(trf.parser)
95 addDebugArgs(trf.parser)
96
97 return trf
98
99
STL class.

◆ main()

main ( )

Definition at line 30 of file Trig_reco_tf.py.

30def main():
31
32 msg.info('This is %s', sys.argv[0])
33
34 trf = getTransform()
35 trf.parseCmdLineArgs(sys.argv[1:])
36 trf.execute()
37 trf.generateReport()
38
39 msg.info("%s stopped at %s, trf exit code %d", sys.argv[0], time.asctime(), trf.exitCode)
40 sys.exit(trf.exitCode)
41
int main()
Definition hello.cxx:18