4msg = logging.getLogger(__name__)
6from PyJobTransforms.trfArgClasses import argFactory, argFile, argInt, argFloat, argList, argString, argBool, argPOOLFile, argEVNT_TRFile, argHITSFile, argRDOFile, argSubstepInt, argSubstepBool, argSubstepString
14 parser.defineArgGroup(
'ForwardDetector',
'Forward Detector Options')
15 parser.add_argument(
'--LucidOn',
16 type=argFactory(argBool),
17 help=
'Switch on lucid simulation/digitization.', group=
'ForwardDetector')
18 parser.add_argument(
'--AFPOn',
19 type=argFactory(argBool),
20 help=
'Switch on AFP simulation/digitization.', group=
'ForwardDetector')
21 parser.add_argument(
'--ALFAOn',
22 type=argFactory(argBool),
23 help=
'Switch on ALFA simulation/digitization.', group=
'ForwardDetector')
24 parser.add_argument(
'--ZDCOn',
25 type=argFactory(argBool),
26 help=
'Switch on ZDC simulation/digitization.', group=
'ForwardDetector')
27 parser.add_argument(
'--FwdRegionOn',
28 type=argFactory(argBool),
29 help=
'Switch on FwdRegion simulation/digitization.', group=
'ForwardDetector')
30 parser.add_argument(
'--HGTDOn',
31 type=argFactory(argBool),
32 help=
'Switch on HGTD simulation/digitization.', group=
'ForwardDetector')
37 parser.defineArgGroup(
'Digi',
'Digitization specific options')
38 parser.add_argument(
'--inputHITSFile',
'--inputHitsFile', nargs=
'+',
39 type=argFactory(argHITSFile, io=
'input'),
40 help=
'Input HITS file', group=
'Digi')
41 parser.add_argument(
'--outputRDOFile', nargs=
'+',
42 type=argFactory(argRDOFile, io=
'output'),
43 help=
'Output RDO file', group=
'Digi')
44 parser.add_argument(
'--outputRDO_FILTFile', nargs=
'+',
45 type=argFactory(argRDOFile, io=
'output'),
46 help=
'Output Filtered RDO file', group=
'Digi')
47 parser.add_argument(
'--digiSeedOffset1',
48 type=argFactory(argInt),
49 help=
'Offset for first random seed', group=
'Digi')
50 parser.add_argument(
'--digiSeedOffset2',
51 type=argFactory(argInt),
52 help=
'Offset for second random seed', group=
'Digi')
53 parser.add_argument(
'--digiRndmSvc',
54 type=argFactory(argString),
55 help=
'Random Number Service to use.', group=
'Digi' )
56 parser.add_argument(
'--digiSteeringConf',
57 type=argFactory(argString),
58 help=
'Required configuration fod the digitization job', group=
'Digi' )
59 parser.add_argument(
'--samplingFractionDbTag',
60 type=argFactory(argString),
61 help=
'This argument can be used to override the PhysicsList retrieved from the Simulation metadata. This information is used in the LAr sampling fraction data base tag used by LArfSamplG4Phys.', group=
'Digi')
62 parser.add_argument(
'--doAllNoise',
63 type=argFactory(argBool),
64 help=
'Overall control of noise simulation during digitization - useful for overlay jobs, will set doCaloNoise, doMuonNoise, doInDetNoise digitizationFlags.', group=
'Digi')
65 parser.add_argument(
'--AddCaloDigi',
66 type=argFactory(argBool),
67 help=
'Save Calo Digits too, not just RawChannels.', group=
'Digi')
68 parser.add_argument(
'--PileUpPresampling',
'--PileUpPremixing',
69 type=argFactory(argBool),
70 help=
'Run digitization with pile-up presampling configuration.', group=
'Digi')
74 parser.defineArgGroup(
'PileUp',
'Pile-Up Options')
75 parser.add_argument(
'--testPileUpConfig',
76 type=argFactory(argBool),
77 help=
'Calculates the number of background events that will be require for a given pile-up configuration.', group=
'PileUp')
78 parser.add_argument(
'--inputLowPtMinbiasHitsFile', nargs=
'+', action=
'append',
79 type=argFactory(argHITSFile, io=
'input', executor=[
'EVNTtoRDO',
'HITtoRDO'], auxiliaryFile=
True),
80 help=
'Input HITS file for low pT minimum bias pile-up sub-events', group=
'PileUp')
81 parser.add_argument(
'--inputHighPtMinbiasHitsFile', nargs=
'+', action=
'append',
82 type=argFactory(argHITSFile, io=
'input', executor=[
'EVNTtoRDO',
'HITtoRDO'], auxiliaryFile=
True),
83 help=
'Input HITS file for high pT minimum bias pile-up sub-events', group=
'PileUp')
84 parser.add_argument(
'--inputCavernHitsFile', nargs=
'+', action=
'append',
85 type=argFactory(argHITSFile, io=
'input', executor=[
'EVNTtoRDO',
'HITtoRDO'], auxiliaryFile=
True),
86 help=
'Input HITS file for cavern background sub-events', group=
'PileUp')
87 parser.add_argument(
'--inputBeamHaloHitsFile', nargs=
'+', action=
'append',
88 type=argFactory(argHITSFile, io=
'input', executor=[
'EVNTtoRDO',
'HITtoRDO'], auxiliaryFile=
True),
89 help=
'Input HITS file for beam halo sub-events', group=
'PileUp')
90 parser.add_argument(
'--inputBeamGasHitsFile', nargs=
'+', action=
'append',
91 type=argFactory(argHITSFile, io=
'input', executor=[
'EVNTtoRDO',
'HITtoRDO'], auxiliaryFile=
True),
92 help=
'Input HITS file for beam gas sub-events', group=
'PileUp')
93 parser.add_argument(
'--numberOfLowPtMinBias',
94 type=argFactory(argFloat),
95 help=
'Sets the intial number low pt minbias events to add on average per bunch crossing. Overrides any values set in joboproperties by preIncludes or preExecs. May later be overridden during the job by run-dependent MC code.', group=
'PileUp')
96 parser.add_argument(
'--numberOfHighPtMinBias',
97 type=argFactory(argFloat),
98 help=
'Sets the intial number high pt minbias events to add on average per bunch crossing. Overrides any values set in joboproperties by preIncludes or preExecs. May later be overridden during the job by run-dependent MC code.', group=
'PileUp')
99 parser.add_argument(
'--numberOfBeamHalo',
100 type=argFactory(argFloat),
101 help=
'Sets the intial number beam halo events to add on average per bunch crossing. Overrides any values set in joboproperties by preIncludes or preExecs. May later be overridden during the job by run-dependent MC code.', group=
'PileUp')
102 parser.add_argument(
'--numberOfBeamGas',
103 type=argFactory(argFloat),
104 help=
'Sets the intial number beam gas events to add on average per bunch crossing. Overrides any values set in joboproperties by preIncludes or preExecs. May later be overridden during the job by run-dependent MC code.', group=
'PileUp')
105 parser.add_argument(
'--numberOfCavernBkg',
106 type=argFactory(argInt),
107 help=
'Sets the intial number cavern background events to add on average per bunch crossing. Overrides any values set in joboproperties by preIncludes or preExecs. May later be overridden during the job by run-dependent MC code. NB this value is an integer!', group=
'PileUp')
108 parser.add_argument(
'--bunchSpacing',
109 type=argFactory(argFloat),
110 help=
'Overrides any values of digitizationFlags.bunchSpacing by preIncludes or preExecs. When using bunch structure is being usedthis sets the time between successive elements in the bunch structure pattern. If not using bunch-structure, this can be used to run pile-up with a fixed X ns spacing between filled bunch-crossings.', group=
'PileUp')
111 parser.add_argument(
'--pileupInitialBunch',
112 type=argFactory(argInt),
113 help=
'Initial (relative) bunch crossing to use pileup - default -32', group=
'PileUp')
114 parser.add_argument(
'--pileupFinalBunch',
115 type=argFactory(argInt),
116 help=
'Initial (relative) bunch crossing to use pileup - default 32', group=
'PileUp')
120 parser.defineArgGroup(
'Cosmics',
'Cosmic Ray Simulation Options')
121 parser.add_argument(
'--CosmicFilterVolume',
122 type=argFactory(argString),
123 help=
'Main Cosmic Filter Volume - tracks have to pass through this volume for the event to be written out.', group=
'Cosmics')
124 parser.add_argument(
'--CosmicFilterVolume2',
125 type=argFactory(argString),
126 help=
'Secondary Cosmic Filter Volume (Optional) - if specified tracks also have to pass through this volume for the event to be written out.', group=
'Cosmics')
127 parser.add_argument(
'--CosmicPtSlice',
128 type=argFactory(argString),
129 help=
'Cosmic Pt Slice', group=
'Cosmics')
133 parser.defineArgGroup(
'TrackRecords',
'TrackRecord related options')
134 parser.add_argument(
'--inputEVNT_TRFile', nargs=
'+',
135 type=argFactory(argEVNT_TRFile, io=
'input'),
136 help=
'Input Track Record file - sometimes used in Cosmic ray or cavern background simulation jobs.', group=
'TrackRecords')
137 parser.add_argument(
'--outputEVNT_TRFile', nargs=
'+',
138 type=argFactory(argEVNT_TRFile, io=
'output', type=
'evnt'),
139 help=
'Output Track Record file - sometimes used in Cosmic ray or cavern background simulation jobs.', group=
'TrackRecords')
140 parser.add_argument(
'--trackRecordType',
141 type=argFactory(argSubstepString), metavar=
'CONFIGNAME',
142 help=
'Specify the type of TrackRecords being read/written E.g. cosmics, cavern, stopped', group=
'TrackRecords')
147 parser.defineArgGroup(
'Sim_tf',
'Sim_tf specific options')
148 parser.add_argument(
'--simulator',
149 type=argFactory(argString), metavar=
'CONFIGNAME',
150 help=
'Specify a named configuration. E.g. MC12G4, ATLFASTII ATLFASTIIF', group=
'Sim_tf')
154 parser.defineArgGroup(
'TestBeam',
'TestBeam_tf specific options')
155 parser.add_argument(
'--testBeamConfig',
156 type=argFactory(argString), metavar=
'CONFIGNAME',
157 help=
'Specify a named test beam configuration. E.g. ctb, tbtile', group=
'TestBeam')
158 parser.add_argument(
'--Eta',
159 type=argFactory(argFloat),
160 help=
'Only set Eta if you want to simulate an eta-projective scan', group=
'TestBeam')
161 parser.add_argument(
'--Theta',
162 type=argFactory(argFloat),
163 help=
'For 90 degrees scans put Theta=+/-90. Positive theta means the beam enters from positive eta side (as defined in CTB setup!)', group=
'TestBeam')
164 parser.add_argument(
'--Z',
165 type=argFactory(argFloat),
166 help=
'Z coordinate is the distance from ATLAS center to the desired impact point. Sensitive part starts at Z=2300, ends at Z=2300+3*100+3*130+3*150+2*190=3820', group=
'TestBeam')
170 parser.defineArgGroup(
'SimIO',
'Simulation I/O Options')
171 parser.add_argument(
'--inputEVNTFile',
'--inputEvgenFile', nargs=
'+',
172 type=argFactory(argPOOLFile, io=
'input'),
173 help=
'Input evgen file', group=
'SimIO')
174 parser.add_argument(
'--outputHITSFile',
'--outputHitsFile', nargs=
'+',
175 type=argFactory(argHITSFile, io=
'output'),
176 help=
'Output HITS file', group=
'SimIO')
177 parser.add_argument(
'--firstEvent', metavar=
'FIRSTEVENT',
178 type=argFactory(argInt), help=
'The event number to use for the first Event', group=
'SimIO')
182 parser.defineArgGroup(
'CommonSim',
'Common Simulation Options')
183 parser.add_argument(
'--physicsList', metavar=
'PHYSICSLIST',
184 type=argFactory(argString), help=
'Physics List to be used within Geant4', group=
'CommonSim')
185 parser.add_argument(
'--useISF',
186 type=argFactory(argBool), help=
'Use ISF (only will only work from 17.6.0 onwards)', group=
'CommonSim')
187 parser.add_argument(
'--useG4Workers', type=argFactory(argBool), help=
'Run Geant4 workers in separate thread pool managed by Geant4', group=
'CommonSim')
188 parser.add_argument(
'--randomSeed', nargs=
'+', metavar=
'substep:seed',
189 type=argFactory(argSubstepInt), help=
'Random seed offset', group=
'CommonSim')
190 parser.add_argument(
'--enableLooperKiller', nargs=
'+', metavar=
'substep:LooperKiller',
191 type=argFactory(argSubstepBool), help=
'Should the LooperKiller be used', group=
'CommonSim')
192 parser.add_argument(
'--truthStrategy',
193 type=argFactory(argString), metavar=
'CONFIGNAME',
194 help=
'Specify the named group of Truth strategies that the simulation should use. E.g. MC12, MC15aPlus, MC16', group=
'CommonSim')
198 parser.defineArgGroup(
'SimDigi',
'Common Simulation Options')
199 parser.add_argument(
'--DataRunNumber',
200 type=argFactory(argInt),
201 help=
'Override existing run number with this value - deprecated?', group=
'SimDigi')
202 parser.add_argument(
'--jobNumber',
203 type=argFactory(argInt),
204 help=
'The number of this job in the current RunDependentSimulation task.', group=
'SimDigi')
205 parser.add_argument(
'--detectors', nargs=
'+',
206 type=argFactory(argList),
207 help=
'Detectors autoconfiguration string', group=
'SimDigi')
211 parser.defineArgGroup(
'HITSMerge_tf',
'HITSMerge_tf specific options')
212 parser.add_argument(
'--inputHITSFile',
'--inputHitsFile', nargs=
'+',
213 type=argFactory(argPOOLFile, io=
'input', runarg=
True, type=
'hits'),
214 help=
'Input HITS files', group=
'HITSMerge_tf')
215 parser.add_argument(
'--outputHITS_MRGFile',
'--outputHits_MRGFile',
'--outputHITSFile',
'--outputHitsFile', nargs=
'+',
216 type=argFactory(argPOOLFile, io=
'output', runarg=
True, type=
'hits'),
217 help=
'Output HITS file', group=
'HITSMerge_tf')
218 parser.add_argument(
'--inputLogsFile', nargs=
'+',
219 type=argFactory(argFile, io=
'input', runarg=
True, type=
'log'),
220 help=
'Input Log files', group=
'HITSMerge_tf')
225 parser.defineArgGroup(
'ReSimulation',
'ReSimulation specific options')
226 parser.add_argument(
'--inputHITSFile',
'--inputHitsFile', nargs=
'+',
227 type=argFactory(argPOOLFile, io=
'input', runarg=
True, type=
'hits'),
228 help=
'Input HITS files', group=
'ReSimulation')
229 parser.add_argument(
'--outputHITS_RSMFile', nargs=
'+',
230 type=argFactory(argHITSFile, io=
'output', runarg=
True, type=
'hits'),
231 help=
'Output HITS file', group=
'ReSimulation')
235 parser.defineArgGroup(
'SimValid_tf',
'SimValid_tf specific options')
236 parser.add_argument(
'--inputHITSFile', nargs =
'+',
237 type=argFactory(argPOOLFile, io=
'input'),
238 help=
'Input HITS files', group=
'SimValid_tf')
239 parser.add_argument(
'--outputHIST_SIMFile', nargs =
'+',
240 type=argFactory(argFile, io=
'output'),
241 help=
' Output HIST_SIM files', group=
'SimValid_tf')
242 parser.add_argument(
'--localgeo',
243 type=argFactory(argBool),
244 help=
'Use local Geo XML file', group=
'SimValid_tf')
248 parser.defineArgGroup(
'DigiValid_tf',
'DigiValid_tf specific options')
249 parser.add_argument(
'--inputRDOFile', nargs =
'+',
250 type=argFactory(argPOOLFile, io=
'input'),
251 help=
'Input RDO files', group=
'DigiValid_tf')
252 parser.add_argument(
'--outputHIST_DIGIFile', nargs =
'+',
253 type=argFactory(argFile, io=
'output'),
254 help=
' Output HIST_DIGI files', group=
'DigiValid_tf')
255 parser.add_argument(
'--PileUpPresampling',
256 type=argFactory(argBool),
257 help=
'Running over a presamped RDO file.', group=
'DigiValid_tf')
258 parser.add_argument(
'--localgeo',
259 type=argFactory(argBool),
260 help=
'Use local Geo XML file', group=
'DigiValid_tf')
addReSimulationArgs(parser)
Add Re-simulation transform arguments.
addCosmicsTrfArgs(parser)
Add Cosmics related transform arguments to an argparse ArgumentParser.
addTrackRecordArgs(parser)
Add arguments used by simulation jobs which may read in or write out TrackRecord files.
addForwardDetTrfArgs(parser)
Add Forward Detector transform arguments to an argparse ArgumentParser.
addCommonSimTrfArgs(parser)
Add common Simulation transform arguments to an argparse ArgumentParser.
addHITSValidArgs(parser)
Add HITS validation transform arguments.
addBasicDigiArgs(parser)
Add Basic digitization arguments to an argparse ArgumentParser.
addCommonSimDigTrfArgs(parser)
Add common Simulation/Digitization transform arguments to an argparse ArgumentParser.
addTestBeamArgs(parser)
Add arguments used only by TestBeam simulation jobs.
addPileUpTrfArgs(parser)
Add Pile-up related transform arguments to an argparse ArgumentParser.
addSimIOTrfArgs(parser)
Add common Simulation transform arguments to an argparse ArgumentParser.
addRDOValidArgs(parser)
Add RDO validation transform arguments.
addSim_tfArgs(parser)
Add arguments used only by ISF-based simulation jobs.