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",
11 type=trfArgClasses.argFactory(trfArgClasses.argFloat, runarg=True))
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",
16 type=trfArgClasses.argFactory(trfArgClasses.argInt, runarg=True))
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",
21 type=trfArgClasses.argFactory(trfArgClasses.argSubstepInt))
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",
26 type=trfArgClasses.argFactory(trfArgClasses.argInt, runarg=True))
27
28 parser.add_argument("--jobConfig", "--JobConfig", "--jo", group="Evgen", nargs="+",
29 help="a comma-separated list of job configuration script files",
30 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, runarg=True))
31
32
33 parser.add_argument("--inputGeneratorFile", "--inputGenEventFile", "--inputGenFile", "--InputGeneratorFile", group="Evgen",
34 help="optional parton-level events file to be processed",
35 type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True))
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",
47 type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True))
48
49
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)],
75 type=trfArgClasses.argFactory(trfArgClasses.argString, 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)],
83 type=trfArgClasses.argFactory(trfArgClasses.argString, 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)],
90 type=trfArgClasses.argFactory(trfArgClasses.argString, 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",
94 type=trfArgClasses.argFactory(trfArgClasses.argList, runarg=True))
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)],
108 type=trfArgClasses.argFactory(trfArgClasses.argString, 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),
113 type=trfArgClasses.argFactory(trfArgClasses.argInt, runarg=True))
114
115 parser.add_argument('--lheOnly', '--lheOnly', group='Evgen',
116 default=trfArgClasses.argInt(0, runarg=True),
117 type=trfArgClasses.argFactory(trfArgClasses.argInt, 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",
122 type=trfArgClasses.argFactory(trfArgClasses.argString, runarg=True))
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",
126 type=trfArgClasses.argFactory(trfArgClasses.argSubstepList, runarg=True))
127
128 parser.add_argument('--cleanOut', '--cleanOut', group='Evgen',
129 default=trfArgClasses.argInt(0, runarg=True),
130 type=trfArgClasses.argFactory(trfArgClasses.argInt, 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',
135 type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
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',
140 type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
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',
145 type=trfArgClasses.argFactory(trfArgClasses.argBool, runarg=True),
146 default=trfArgClasses.argBool('False'))
147
148