ATLAS Offline Software
Loading...
Searching...
No Matches
evgenTrfArgs.py
Go to the documentation of this file.
1# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3import PyJobTransforms.trfArgClasses as trfArgClasses
4
5def addStdEvgenArgs(parser):
6 parser.defineArgGroup("Evgen", "Event generator options")
7
8 parser.add_argument("--ecmEnergy", "--EcmEnergy", group="Evgen",
9 default=trfArgClasses.argFloat(13600, runarg=True),
10 help="centre-of-mass energy parameter in GeV",
12
13 parser.add_argument("--firstEvent", "--FirstEvent", group="Evgen",
14 default=trfArgClasses.argInt(1, runarg=True),
15 help="the number of the first event in the output data file",
17
18 parser.add_argument("--randomSeed", "--RandomSeed", "--seed", group="Evgen", nargs="+",
19 default=trfArgClasses.argSubstepInt("all:12345"),
20 help="a seed for the MC generator random number engines",
22
23 parser.add_argument("--printEvts", group="Evgen",
24 default=trfArgClasses.argInt(5, runarg=True),
25 help="number of full event dumps to print out for debugging",
27
28 parser.add_argument("--jobConfig", "--JobConfig", "--jo", group="Evgen", nargs="+",
29 help="a comma-separated list of job configuration script files",
31
32 # TODO: Add "--eventFile"?
33 parser.add_argument("--inputGeneratorFile", "--inputGenEventFile", "--inputGenFile", "--InputGeneratorFile", group="Evgen",
34 help="optional parton-level events file to be processed",
36
37 parser.add_argument("--inputEVNTFile", group="Evgen",
38 help="input EVNT file (for use with e.g. Rivet)",
39 type=trfArgClasses.argFactory(trfArgClasses.argEVNTFile, io='input', runarg=True))
40
41 parser.add_argument("--inputEVNT_PreFile", group="Evgen",
42 help="input evgen file for processing with afterburner, e.g. EvtGen",
43 type=trfArgClasses.argFactory(trfArgClasses.argEVNTFile, io='input', runarg=True))
44
45 parser.add_argument("--evgenJobOpts", "--EvgenJobOpts", group="Evgen",
46 help="download and install the EvgenJobOpts tarball with the given name",
48
49 # TODO: make optional: by default auto-determine from the JO name. If NONE, don't write?
50 parser.add_argument("--outputEVNTFile", "--OutputEVNTFile", group="Evgen",
51 help="POOL file into which generated events will be written",
52 type=trfArgClasses.argFactory(trfArgClasses.argEVNTFile, io='output', runarg=True))
53
54 parser.add_argument("--outputEVNT_PreFile", "--OutputEVNT_PreFile", group="Evgen",
55 help="POOL file into which pre-afterburner generated events will be written",
56 type=trfArgClasses.argFactory(trfArgClasses.argEVNTFile, io='output', runarg=True))
57
58 parser.add_argument('--outputNTUP_TRUTHFile',
59 type=trfArgClasses.argFactory(trfArgClasses.argNTUPFile, io='output', treeNames=['truth']),
60 help='Output NTUP_TRUTH file', group='Evgen')
61
62 parser.add_argument("--outputYODAFile", group="Evgen",
63 help="Name of YODA file for Rivet histo output",
64 type=trfArgClasses.argFactory(trfArgClasses.argYODAFile, type='yoda', io='output', runarg=True))
65
66 parser.add_argument("--outputHEPMCFile", group="Evgen",
67 help="Name of HepMC output file",
68 type=trfArgClasses.argFactory(trfArgClasses.argHepEvtAsciiFile, type='hepmc', io='output', runarg=True))
69
70 parser.add_argument("--hepmcFormat", group="Evgen",
71 help="Format to use when writing HepMC files",
72 default=trfArgClasses.argString("hepmc2", runarg=True),
73 choices=[trfArgClasses.argString("hepmc2", runarg=True),
74 trfArgClasses.argString("hepmc3", runarg=True)],
76
77 parser.add_argument("--hepmcUnits", group="Evgen",
78 help="Unitst to use when writing HepMC files",
79 default=trfArgClasses.argString("GEVMM", runarg=True),
80 choices=[trfArgClasses.argString("GEVCM", runarg=True),
81 trfArgClasses.argString("MEVCM", runarg=True),
82 trfArgClasses.argString("MEVMM", runarg=True)],
84
85 parser.add_argument("--extension", group="Evgen",
86 help="Extension to use when writing HepMC files",
87 default=trfArgClasses.argString("hepmc", runarg=True),
88 choices=[trfArgClasses.argString("hepmc", runarg=True),
89 trfArgClasses.argString("events", runarg=True)],
91
92 parser.add_argument("--rivetAnas", group="Evgen",
93 help="a comma-separated list of Rivet analyses to run on the resulting events",
95
96 parser.add_argument("--outputTXTFile", group="Evgen",
97 help="optional output TXT file for LHEF events, default is None",
98 type=trfArgClasses.argFactory(trfArgClasses.argLHEFile, io='output', runarg=True))
99
100 parser.add_argument("--generatorRunMode", group="Evgen",
101 help="Run mode to pass on to the event generator",
102 default=trfArgClasses.argString("run", runarg=True),
103 choices=[trfArgClasses.argString("read", runarg=True),
104 trfArgClasses.argString("build", runarg=True),
105 trfArgClasses.argString("integrate", runarg=True),
106 trfArgClasses.argString("mergegrids", runarg=True),
107 trfArgClasses.argString("run", runarg=True)],
109
110 parser.add_argument("--generatorJobNumber", group="Evgen",
111 help="Job number to pass on to the event generator",
112 default=trfArgClasses.argInt(0, runarg=True),
114
115 parser.add_argument('--lheOnly', '--lheOnly', group='Evgen',
116 default=trfArgClasses.argInt(0, runarg=True),
118 help='Set to 1 if Evgen file should be removed')
119
120 parser.add_argument("--localPath", group="Evgen",
121 help="Name of local path to JOs",
123
124 parser.add_argument('--saveList', '--saveList', group='Evgen',
125 help="a comma-separated list of files to be saved in output or a single digit if the whole output directory is to be saved",
127
128 parser.add_argument('--cleanOut', '--cleanOut', group='Evgen',
129 default=trfArgClasses.argInt(0, runarg=True),
131 help='Set to any digit !=0 if the output files should be cleaned up --saveList may help to save selected files')
132
133 parser.add_argument('--VERBOSE', '--Verbose', '--Debug', '--DEBUG', group='Evgen',
134 help = 'set logging level to DEBUG',
136 default=trfArgClasses.argBool('False'))
137
138 parser.add_argument('--ignoreBlackList', '--ignoreBlacklist', group='Evgen',
139 help = 'ignore Blacklist - allows to run a test in a blacklisted release',
141 default=trfArgClasses.argBool('False'))
142
143 parser.add_argument('--allowOldFilter', '--allowOldFilter', group='Evgen',
144 help = 'useOldFilter - allows to use old (not xAOD based) filters',
146 default=trfArgClasses.argBool('False'))
147
148
Boolean type argument.
Factory class used to generate argument class instances for argparse.
List of string arguments.
NTUP (plain ROOT) file class.
Argument class for substep lists, suitable for preExec/postExec.
Transform argument class definitions.