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()

Trig_reco_tf.addDebugArgs ( parser)

Definition at line 203 of file Trig_reco_tf.py.

203def addDebugArgs(parser):
204 # Use arggroup to get these arguments in their own sub-section (of --help)
205 parser.defineArgGroup('Debug', 'Specific options related to the trigger debug recovery')
206
207 parser.add_argument('--outputHIST_DEBUGSTREAMMONFile', nargs='+',
208 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
209 help='Output DEBUGSTREAMMON file', group='Debug')
210
211

◆ addTrigCostRateArgs()

Trig_reco_tf.addTrigCostRateArgs ( parser)

Definition at line 156 of file Trig_reco_tf.py.

156def addTrigCostRateArgs(parser):
157 # Use arggroup to get these arguments in their own sub-section (of --help)
158 parser.defineArgGroup('TrigCost', 'Specific options related to the trigger cost and rates steps in trigger reprocessings')
159
160 # 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
161 parser.add_argument('--outputDRAW_TRIGCOSTFile', nargs='+',
162 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='output', runarg=True),
163 help='Output bytestream file of CostMonitoring stream', group='TrigCost')
164 # input BS file for the TRIGCOST step (name just to be unique identifier for prodSys)
165 parser.add_argument('--inputDRAW_TRIGCOSTFile', nargs='+',
166 type=trfArgClasses.argFactory(trfArgClasses.argBSFile, io='input', runarg=True),
167 help='Input bytestream file of CostMonitoring stream', group='TrigCost')
168 # NTUP_COST is used for COST monitoring - used in the reco release
169 parser.add_argument('--outputNTUP_TRIGCOSTFile', nargs='+',
170 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
171 help='D3PD output NTUP_TRIGCOST file', group='TrigCost')
172 # NTUP_RATE is used for COST monitoring - used in the reco release
173 parser.add_argument('--outputNTUP_TRIGRATEFile', nargs='+',
174 type=trfArgClasses.argFactory(trfArgClasses.argHISTFile, io='output', runarg=True, countable=False),
175 help='D3PD output NTUP_TRIGRATE file', group='TrigCost')
176
177 # Additional cost arguments for cost processing step
178 parser.add_argument('--costopts', nargs='+',
179 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, splitter=' ', runarg=False),
180 help='Extra options to pass to cost processing.', group='TrigCost')
181
182 # Additional rate arguments for rates analysis step
183 parser.add_argument('--rateopts', nargs='+',
184 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, splitter=' ', runarg=False),
185 help='Extra options to pass to rates analysis.', group='TrigCost')
186

◆ addTriggerArgs()

Trig_reco_tf.addTriggerArgs ( parser)

Definition at line 109 of file Trig_reco_tf.py.

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

◆ addTriggerDBArgs()

Trig_reco_tf.addTriggerDBArgs ( parser)

Definition at line 187 of file Trig_reco_tf.py.

187def addTriggerDBArgs(parser):
188 # Use arggroup to get these arguments in their own sub-section (of --help)
189 parser.defineArgGroup('TriggerDB', 'Specific options related to the trigger DB')
190
191 parser.add_argument('--useDB', type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
192 help='read from DB', group='TriggerDB')
193 parser.add_argument('--DBserver', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
194 help='DB name', group='TriggerDB')
195 parser.add_argument('--DBsmkey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
196 help='DB SMK', group='TriggerDB')
197 parser.add_argument('--DBhltpskey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
198 help='DB hltpskey', group='TriggerDB')
199 parser.add_argument('--DBl1pskey', type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True),
200 help='DB l1pskey', group='TriggerDB')
201
202

◆ getTransform()

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

◆ main()

Trig_reco_tf.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