ATLAS Offline Software
Loading...
Searching...
No Matches
Herwig7Config.Hw7Config Class Reference

Configuration base class for Herwig7. More...

Inheritance diagram for Herwig7Config.Hw7Config:
Collaboration diagram for Herwig7Config.Hw7Config:

Public Types

typedef HLT::TypeInformation::for_each_type_c< typenameEDMLIST::map, my_functor, my_result<>, my_arg< HLT::TypeInformation::get_cont, CONTAINER > >::type result

Public Member Functions

 __init__ (self, genSeq, runArgs, run_name="Herwig")
 Constructor.
 global_pre_commands (self)
 Commands applied to all configuration classes before commands from the JobOptions.
 add_commands (self, commands)
 Add direct Herwig7 repository commands as they wo.
 random_seed_commands (self)
 Sets the seed for the random number generator.
 beam_commands (self)
 Commands specific to certain beam / collision types.
 energy_commands (self)
 Sets center-of-mass energy sqrts(s) in GeV.
 printout_commands (self)
 Sets printout verbosity and error tolerance.
 physics_parameter_commands (self)
 technical_parameter_commands (self)
 me_alphas_commands (self, order="NLO", scale=91.1876, value=0.118)
 Commands for setting the strong coupling \(\alpha_s\) in the hard process.
 me_pdf_commands (self, order="NLO", name="MMHT2014nlo68cl", member=0, max_flav=5)
 Commands for setting the PDF in the hard process.
 shower_pdf_commands (self, order="LO", name="MMHT2014lo68cl", member=0, max_flav=5)
 Commands for setting the PDF in the parton showers.
 mpi_pdf_commands (self, name="MMHT2014lo68cl", member=0, max_flav=5)
 Commands for setting the PDF in the underlying event (UE)
 remnant_pdf_commands (self, name="MMHT2014lo68cl", member=0, max_flav=5)
 Commands for setting the remnant PDF.
 tune_commands (self, ps_tune_name="H7-PS-MMHT2014LO", ue_tune_name="H7.2-Default")
 Commands for setting PS/hadronization and UE/MPI tune simultaneously.
 ps_tune_commands (self, tune_name="H7-PS-MMHT2014LO")
 Commands for only setting the PS/hadronization tune.
 load_PS_tune (self, tune_name)
 ue_tune_commands (self, tune_name="H7.2-Default")
 Commands for only setting the UE/MPI tune.
 load_ue_tune (self, tune_name)
 get_dpdf_path (self)
 pdf_pomeron_cmds (self, flux, pdf)
 Set pomeron structure function.
 pdf_gammagamma_cmds (self)
 Initialize Budnev Photon flux for two-photon exclusive exchange.
 set_tune_scheme (self, tune_scheme="DotProduct")
 enable_angularShowerScaleVariations (self, do_variations=False)

Public Attributes

 genSeq = genSeq
 runArgs = runArgs
 run_name = run_name
str me_pdf_name = "MMHT2014lo68cl"
str mpi_pdf_name = "MMHT2014lo68cl"
bool set_printout_commands = False
bool set_physics_parameter_commands = False
bool set_technical_parameter_commands = False
bool use_PDGparams = False
 default_commands = hw7Utils.ConfigurationCommands()
 commands = hw7Utils.ConfigurationCommands()
str beams = "EE":
bool physics_parameter_commands = True

Detailed Description

Configuration base class for Herwig7.

Definition at line 16 of file Herwig7Config.py.

Member Typedef Documentation

◆ result

Definition at line 90 of file EDM_MasterSearch.h.

Constructor & Destructor Documentation

◆ __init__()

Herwig7Config.Hw7Config.__init__ ( self,
genSeq,
runArgs,
run_name = "Herwig" )

Constructor.

Definition at line 19 of file Herwig7Config.py.

19 def __init__(self, genSeq, runArgs, run_name="Herwig"):
20
21 # Force Herwig7 to run in single-core mode
22 check_reset_proc_number(runArgs)
23
24 self.genSeq = genSeq
25 self.runArgs = runArgs
26
27 self.run_name = run_name
28 # self.seed = runArgs.randomSeed
29 # self.energy = runArgs.ecmEnergy
30
31 self.me_pdf_name = "MMHT2014lo68cl"
32 self.mpi_pdf_name = "MMHT2014lo68cl"
33
34 self.set_printout_commands = False
35 self.set_physics_parameter_commands = False
36 self.set_technical_parameter_commands = False
37 self.use_PDGparams = False
38
39 self.default_commands = hw7Utils.ConfigurationCommands()
40 self.commands = hw7Utils.ConfigurationCommands()
41

Member Function Documentation

◆ add_commands()

Herwig7Config.Hw7Config.add_commands ( self,
commands )

Add direct Herwig7 repository commands as they wo.

Definition at line 57 of file Herwig7Config.py.

57 def add_commands(self, commands):
58
59 self.commands += commands
60
61

◆ beam_commands()

Herwig7Config.Hw7Config.beam_commands ( self)

Commands specific to certain beam / collision types.

Definition at line 71 of file Herwig7Config.py.

71 def beam_commands(self):
72
73 if self.beams == "EE":
74 return("""
75## Commands for lepton-lepton collisions
76read snippets/EECollider.in
77set /Herwig/Shower/PartnerFinder:QEDPartner IIandFF
78set /Herwig/Shower/ShowerHandler:MPIHandler NULL
79set /Herwig/DipoleShower/DipoleShowerHandler:MPIHandler NULL
80set /Herwig/Shower/PowhegShowerHandler:MPIHandler NULL
81""")
82 elif self.beams == "EP":
83 return("""
84## Commands for proton-lepton collisions
85read snippets/EPCollider.in
86do /Herwig/Shower/SplittingGenerator:DeleteFinalSplitting e-->e-,gamma; /Herwig/Shower/LtoLGammaSudakov
87do /Herwig/Shower/SplittingGenerator:DeleteFinalSplitting mu-->mu-,gamma; /Herwig/Shower/LtoLGammaSudakov
88do /Herwig/Shower/SplittingGenerator:DeleteFinalSplitting tau-->tau-,gamma; /Herwig/Shower/LtoLGammaSudakov
89set /Herwig/Shower/KinematicsReconstructor:ReconstructionOption Colour
90""")
91 else:
92 return("""
93## Commands for proton-proton collisions
94read snippets/PPCollider.in
95""")
96

◆ enable_angularShowerScaleVariations()

Herwig7Config.Hw7Config.enable_angularShowerScaleVariations ( self,
do_variations = False )

Definition at line 489 of file Herwig7Config.py.

489 def enable_angularShowerScaleVariations(self, do_variations=False):
490 if do_variations:
491 self.commands += """\
492\n## -----------------------
493## Shower scale variation
494## -----------------------
495cd /Herwig/Shower
496do ShowerHandler:AddVariation MUR2_MUF2_SHOWER_HARD 2 2 Hard
497do ShowerHandler:AddVariation MUR2_MUF1_SHOWER_HARD 2 1 Hard
498do ShowerHandler:AddVariation MUR1_MUF2_SHOWER_HARD 1 2 Hard
499do ShowerHandler:AddVariation MUR1_MUF0.5_SHOWER_HARD 1 0.5 Hard
500do ShowerHandler:AddVariation MUR0.5_MUF1_SHOWER_HARD 0.5 1 Hard
501do ShowerHandler:AddVariation MUR0.5_MUF0.5_SHOWER_HARD 0.5 0.5 Hard
502do ShowerHandler:AddVariation MUR2_MUF2_SHOWER_SEC 2 2 Secondary
503do ShowerHandler:AddVariation MUR2_MUF1_SHOWER_SEC 2 1 Secondary
504do ShowerHandler:AddVariation MUR1_MUF2_SHOWER_SEC 1 2 Secondary
505do ShowerHandler:AddVariation MUR1_MUF0.5_SHOWER_SEC 1 0.5 Secondary
506do ShowerHandler:AddVariation MUR0.5_MUF1_SHOWER_SEC 0.5 1 Secondary
507do ShowerHandler:AddVariation MUR0.5_MUF0.5_SHOWER_SEC 0.5 0.5 Secondary
508set SplittingGenerator:Detuning 2.0
509"""

◆ energy_commands()

Herwig7Config.Hw7Config.energy_commands ( self)

Sets center-of-mass energy sqrts(s) in GeV.

  • 2016/10/07 Daniel Rauch (danie.nosp@m.l.ra.nosp@m.uch@d.nosp@m.esy..nosp@m.de)

    The extrapolation of the intrinsic pT /Herwig/Shower/Evolver:IntrinsicPtGaussian depending on sqrt(s) according to the formula

    \[ p_{T, intrinsic}^{default} = 1.85 \text{GeV} + \sqrt{s}*(0.1/4000.0) \]

    was removed after discussion with the authors since the intrinsic pT is tuned and the extrapolated value disagreed with the tuned value.

Definition at line 108 of file Herwig7Config.py.

108 def energy_commands(self):
109
110 return("""
111## Center-of-mass energy
112set /Herwig/Generators/EventGenerator:EventHandler:LuminosityFunction:Energy {}
113""".format(self.runArgs.ecmEnergy))
114
115

◆ get_dpdf_path()

Herwig7Config.Hw7Config.get_dpdf_path ( self)

Definition at line 399 of file Herwig7Config.py.

399 def get_dpdf_path(self):
400 import os
401 cmt_path = os.environ.get("CMAKE_PREFIX_PATH")
402 cmt_dir = os.environ.get("BINARY_TAG")
403
404 cmtPaths = cmt_path.split(':')
405
406 for path in cmtPaths:
407 pathNow = path + "/InstallArea/" + cmt_dir + "/share/"
408 try:
409 fileList = os.listdir(pathNow)
410 except Exception:
411 fileList = []
412 if "HerwigDefaults.rpo" in fileList:
413 simSharePath = pathNow
414
415 dpdf_path = os.path.dirname(os.path.normpath(os.path.join(simSharePath, os.readlink(simSharePath + 'HerwigDefaults.rpo')))) + "/PDF/diffraction/"
416
417 return dpdf_path
418
419

◆ global_pre_commands()

Herwig7Config.Hw7Config.global_pre_commands ( self)

Commands applied to all configuration classes before commands from the JobOptions.

Todo
Remove AngularOrdered settungs once they are included in Herwig7 by default

Definition at line 44 of file Herwig7Config.py.

44 def global_pre_commands(self):
45 return """
46## =========================================
47## Global Pre-Commands from Herwig7Config.py
48## =========================================
49
50## ensure JetFinder uses AntiKt with R=0.4
51set /Herwig/Cuts/JetFinder:Variant AntiKt
52set /Herwig/Cuts/JetFinder:ConeRadius 0.4
53"""
54
55

◆ load_PS_tune()

Herwig7Config.Hw7Config.load_PS_tune ( self,
tune_name )

Definition at line 362 of file Herwig7Config.py.

362 def load_PS_tune(self, tune_name):
363
364 return """
365## some commands
366"""
367
368

◆ load_ue_tune()

Herwig7Config.Hw7Config.load_ue_tune ( self,
tune_name )

Definition at line 392 of file Herwig7Config.py.

392 def load_ue_tune(self, tune_name):
393
394 return """
395## some commands
396"""
397
398

◆ me_alphas_commands()

Herwig7Config.Hw7Config.me_alphas_commands ( self,
order = "NLO",
scale = 91.1876,
value = 0.118 )

Commands for setting the strong coupling \(\alpha_s\) in the hard process.

By default Herwig7 uses the world average value \(\alpha_s(M_Z=91.188~\mbox{GeV})=0.118\).

Parameters
[in]orderOrder of the evolution of the strong coupling
  • LO: 1-loop running
  • NLO: 2-loop running
[in]scaleScale at which the value of the strong coupling is specified
[in]valueValue of the strong coupling at the given scale

Definition at line 221 of file Herwig7Config.py.

221 def me_alphas_commands(self, order="NLO", scale=91.1876, value=0.118):
222
223 if order not in ["LO", "NLO"]:
224 raise RuntimeError(hw7Utils.ansi_format_error("Parameter 'order' must either be 'LO' or 'NLO'!"))
225
226 self.commands += """
227## Configure {0} AlphaS for the hard process
228## (LO: 1-loop-running / NLO: 2-loop running)
229set /Herwig/Couplings/{0}AlphaS:input_scale {1}
230set /Herwig/Couplings/{0}AlphaS:input_alpha_s {2}
231set /Herwig/Model:QCD/RunningAlphaS /Herwig/Couplings/{0}AlphaS
232""".format(order, scale, value)
233
234

◆ me_pdf_commands()

Herwig7Config.Hw7Config.me_pdf_commands ( self,
order = "NLO",
name = "MMHT2014nlo68cl",
member = 0,
max_flav = 5 )

Commands for setting the PDF in the hard process.

Parameters
[in]orderperturbative order of the PDF set
[in]namename of the PDF set
[in]memberindex of the PDF member
[in]max_flavnumber of massless quark flavours

Definition at line 241 of file Herwig7Config.py.

241 def me_pdf_commands(self, order="NLO", name="MMHT2014nlo68cl", member=0, max_flav=5):
242
243 if order not in ["LO", "NLO"]:
244 raise RuntimeError(hw7Utils.ansi_format_error("Parameter 'order' must either be 'LO' or 'NLO'!"))
245
246 self.me_pdf_name = name
247
248 self.commands += """
249## Configure {0} PDF set for the hard process
250set /Herwig/Partons/Hard{0}PDF:PDFName {1}
251set /Herwig/Partons/Hard{0}PDF:Member {2}
252set /Herwig/Partons/Hard{0}PDF:MaxFlav {3}
253set /Herwig/Partons/Hard{0}PDF:RemnantHandler /Herwig/Partons/HadronRemnants
254set /Herwig/Particles/p+:PDF /Herwig/Partons/Hard{0}PDF
255set /Herwig/Particles/pbar-:PDF /Herwig/Partons/Hard{0}PDF
256set /Herwig/Partons/PPExtractor:FirstPDF /Herwig/Partons/Hard{0}PDF
257set /Herwig/Partons/PPExtractor:SecondPDF /Herwig/Partons/Hard{0}PDF
258""".format(order, name, member, max_flav)
259
260

◆ mpi_pdf_commands()

Herwig7Config.Hw7Config.mpi_pdf_commands ( self,
name = "MMHT2014lo68cl",
member = 0,
max_flav = 5 )

Commands for setting the PDF in the underlying event (UE)

Parameters
[in]namename of the PDF set
[in]memberindex of the PDF member
[in]max_flavnumber of massless quark flavours

Definition at line 294 of file Herwig7Config.py.

294 def mpi_pdf_commands(self, name="MMHT2014lo68cl", member=0, max_flav=5):
295
296 self.mpi_pdf_name = name
297
298 self.commands += """
299## Configure MPI PDF
300set /Herwig/Partons/MPIPDF:PDFName {}
301set /Herwig/Partons/MPIPDF:Member {}
302set /Herwig/Partons/MPIPDF:MaxFlav {}
303""".format(name, member, max_flav)
304
305

◆ pdf_gammagamma_cmds()

Herwig7Config.Hw7Config.pdf_gammagamma_cmds ( self)

Initialize Budnev Photon flux for two-photon exclusive exchange.

From Pavel Ruzicka.

Definition at line 450 of file Herwig7Config.py.

450 def pdf_gammagamma_cmds(self):
451
452 return """
453
454# Technical parameters for this run
455set /Herwig/Generators/EventGenerator:EventHandler:Sampler:Ntry 100000
456
457# Choice of phase-space generation for PDFs
458set /Herwig/Partons/PPExtractor:FlatSHatY 0
459
460# Change the proton PDFs to those for photon radiation
461set /Herwig/Particles/p+:PDF /Herwig/Partons/BudnevPDF
462set /Herwig/Particles/pbar-:PDF /Herwig/Partons/BudnevPDF
463
464# MPI doesn't work
465# TODO: Is this a problem?
466set /Herwig/Generators/EventGenerator:EventHandler:CascadeHandler:MPIHandler NULL
467
468"""
469

◆ pdf_pomeron_cmds()

Herwig7Config.Hw7Config.pdf_pomeron_cmds ( self,
flux,
pdf )

Set pomeron structure function.

Definition at line 421 of file Herwig7Config.py.

421 def pdf_pomeron_cmds(self, flux, pdf):
422
423 dpdf_path = self.get_dpdf_path()
424
425 cmds = "\n"
426 cmds += "set /Herwig/Partons/PomeronPDF:RootName %s\n" % dpdf_path
427 cmds += "set /Herwig/Partons/PomeronFlux:PDFFit %s\n" % flux
428 cmds += "set /Herwig/Partons/PomeronPDF:PDFFit %s\n" % pdf
429
430 cmds += """\
431set /Herwig/Particles/pomeron:PDF /Herwig/Partons/PomeronPDF
432
433# Technical parameters for this run
434set /Herwig/Generators/EventGenerator:EventHandler:Sampler:Ntry 100000
435set /Herwig/Generators/EventGenerator:MaxErrors 500
436
437# MPI doesn't work
438# TODO: Is this a problem?
439set /Herwig/Generators/EventGenerator:EventHandler:CascadeHandler:MPIHandler NULL
440
441# Choice of phase-space generation for PDFs
442set /Herwig/Partons/PPExtractor:FlatSHatY 0
443
444"""
445 return cmds
446
447

◆ physics_parameter_commands()

Herwig7Config.Hw7Config.physics_parameter_commands ( self)

Definition at line 139 of file Herwig7Config.py.

139 def physics_parameter_commands(self):
140 if self.use_PDGparams:
141 paramlist = []
142 self.physics_parameter_commands = True
143
144 paramlist.append("## Masses and widths: PDG 2019 values")
145
146
147 from EvgenProdTools.offline_dict import parameters
148 for k,v in parameters.items():
149 if k == 'particles':
150 for key,value in v.items():
151 if int(key) == 24:
152 paramlist.append("set /Herwig/Particles/"+value['name']+"+:NominalMass "+value['mass'])
153 paramlist.append("set /Herwig/Particles/"+value['name']+"+:Width "+value['width'])
154 paramlist.append("set /Herwig/Particles/"+value['name']+"-:NominalMass "+value['mass'])
155 paramlist.append("set /Herwig/Particles/"+value['name']+"-:Width "+value['width'])
156 if int(key) == 23:
157 paramlist.append("set /Herwig/Particles/"+value['name']+"0:NominalMass "+value['mass'])
158 paramlist.append("set /Herwig/Particles/"+value['name']+"0:Width "+value['width'])
159 if int(key) == 6:
160 paramlist.append("set /Herwig/Particles/"+value['name']+"bar:NominalMass "+value['mass'])
161 paramlist.append("set /Herwig/Particles/"+value['name']+"bar:Width "+value['width'])
162 paramlist.append("set /Herwig/Particles/"+value['name']+":NominalMass "+value['mass'])
163 paramlist.append("set /Herwig/Particles/"+value['name']+":Width "+value['width'])
164
165
166 if k == 'EW_parameters':
167 for key,value in v.items():
168 if key[2] == "Sin2ThetaW":
169 paramlist.append("set /Herwig/Model:EW/"+str(key[2])+" "+str(value))
170 paramstring = '\n'.join(paramlist)
171 return(paramstring)
172
173 else:
174 self.physics_parameter_commands = True
175
176 return("""
177## Masses and widths: PDG 2010 values (except TOP mass; kept at PDG2007)
178
179## top-quark
180set /Herwig/Particles/t:NominalMass 172.5*GeV
181set /Herwig/Particles/tbar:NominalMass 172.5*GeV
182## W boson
183set /Herwig/Particles/W+:NominalMass 80.399*GeV
184set /Herwig/Particles/W-:NominalMass 80.399*GeV
185set /Herwig/Particles/W+:Width 2.085*GeV
186set /Herwig/Particles/W-:Width 2.085*GeV
187## Z boson
188set /Herwig/Particles/Z0:NominalMass 91.1876*GeV
189set /Herwig/Particles/Z0:Width 2.4952*GeV
190## b quark
191set /Herwig/Particles/b:NominalMass 4.95*GeV
192set /Herwig/Particles/bbar:NominalMass 4.95*GeV
193
194## Weinberg angle
195set /Herwig/Model:EW/Sin2ThetaW 0.23113
196""")
197

◆ printout_commands()

Herwig7Config.Hw7Config.printout_commands ( self)

Sets printout verbosity and error tolerance.

Definition at line 117 of file Herwig7Config.py.

117 def printout_commands(self):
118
119 self.set_printout_commands = True
120
121 return("""
122
123## Verbosity and printout settings
124set /Herwig/Generators/EventGenerator:DebugLevel 1
125set /Herwig/Generators/EventGenerator:PrintEvent 2
126set /Herwig/Generators/EventGenerator:UseStdout Yes
127set /Herwig/Generators/EventGenerator:NumberOfEvents 1000000000
128set /Herwig/Generators/EventGenerator:MaxErrors 500
129
130## Make sampler print out cross sections for each subprocess
131set /Herwig/Samplers/Sampler:Verbose Yes
132""")
133
134
138

◆ ps_tune_commands()

Herwig7Config.Hw7Config.ps_tune_commands ( self,
tune_name = "H7-PS-MMHT2014LO" )

Commands for only setting the PS/hadronization tune.

Parameters
[in]tune_namename identifying the PS/hadronization tune
Returns
Nothing, adds the corresponding commands directly to the generator configuration object

Definition at line 343 of file Herwig7Config.py.

343 def ps_tune_commands(self, tune_name = "H7-PS-MMHT2014LO"):
344
345 cmds = """
346## Parton shower / hadronization tune settings
347"""
348
349 if tune_name == "H7-PS-MMHT2014LO":
350 cmds += """
351# > The parton shower / hadronization tune "H7-MMHT2014LO" is already
352# > configured in Herwig7 via the default settings.
353"""
354 # elif tune_name == "some-other-name":
355 # cmds += self.load_PS_tune(tune_name)
356 else:
357 raise Exception("Parton shower tune name '{}' unknown".format(tune_name))
358
359 self.commands += cmds
360
361

◆ random_seed_commands()

Herwig7Config.Hw7Config.random_seed_commands ( self)

Sets the seed for the random number generator.

Definition at line 63 of file Herwig7Config.py.

63 def random_seed_commands(self):
64
65 return("""
66## Random number generator seed
67set /Herwig/Random:Seed {}
68""".format(self.runArgs.randomSeed))
69

◆ remnant_pdf_commands()

Herwig7Config.Hw7Config.remnant_pdf_commands ( self,
name = "MMHT2014lo68cl",
member = 0,
max_flav = 5 )

Commands for setting the remnant PDF.

Parameters
[in]namename of the PDF set
[in]memberindex of the PDF member
[in]max_flavnumber of massless quark flavours

Definition at line 311 of file Herwig7Config.py.

311 def remnant_pdf_commands(self, name="MMHT2014lo68cl", member=0, max_flav=5):
312
313 self.commands += """
314## Configure Remnant PDF
315set /Herwig/Partons/RemnantPDF:PDFName {}
316set /Herwig/Partons/RemnantPDF:Member {}
317set /Herwig/Partons/RemnantPDF:MaxFlav {}
318""".format(name, member, max_flav)
319
320
321

◆ set_tune_scheme()

Herwig7Config.Hw7Config.set_tune_scheme ( self,
tune_scheme = "DotProduct" )

Definition at line 471 of file Herwig7Config.py.

471 def set_tune_scheme(self, tune_scheme="DotProduct"):
472 tune_schemes = ["DotProduct-Veto","DotProduct","pT","Q2"]
473 if tune_scheme not in tune_schemes:
474 athMsgLog.warn("Please choose one of the supported tune-schemes! (DotProduct-Veto,DotProduct,pT,Q2)")
475 else:
476 athMsgLog.info("{tune_scheme:s} was used for the tune scheme.".format(tune_scheme=tune_scheme))
477 # create a tune-section in the config
478 self.commands += """\
479\n## -------------
480## Tune Settings
481## -------------
482
483# Tune-{tune_scheme:s}
484read snippets/EvolutionScheme-{tune_scheme:s}.in
485read snippets/Tune-{tune_scheme:s}.in
486""".format(tune_scheme=tune_scheme)
487

◆ shower_pdf_commands()

Herwig7Config.Hw7Config.shower_pdf_commands ( self,
order = "LO",
name = "MMHT2014lo68cl",
member = 0,
max_flav = 5 )

Commands for setting the PDF in the parton showers.

Parameters
[in]orderperturbative order of the PDF set
[in]namename of the PDF set
[in]memberindex of the PDF member
[in]max_flavnumber of massless quark flavours

Definition at line 267 of file Herwig7Config.py.

267 def shower_pdf_commands(self, order="LO", name="MMHT2014lo68cl", member=0, max_flav=5):
268
269 if order not in ["LO", "NLO"]:
270 raise RuntimeError(hw7Utils.ansi_format_error("Parameter 'order' must either be 'LO' or 'NLO'!"))
271
272
274
275 self.commands += """
276## Configure {0} PDF set for the parton shower
277set /Herwig/Partons/Shower{0}PDF:PDFName {1}
278set /Herwig/Partons/Shower{0}PDF:Member {2}
279set /Herwig/Partons/Shower{0}PDF:MaxFlav {3}
280set /Herwig/Shower/ShowerHandler:PDFA /Herwig/Partons/Shower{0}PDF
281set /Herwig/Shower/ShowerHandler:PDFB /Herwig/Partons/Shower{0}PDF
282set /Herwig/Shower/PowhegShowerHandler:PDFA /Herwig/Partons/Shower{0}PDF
283set /Herwig/Shower/PowhegShowerHandler:PDFB /Herwig/Partons/Shower{0}PDF
284set /Herwig/DipoleShower/DipoleShowerHandler:PDFA /Herwig/Partons/Shower{0}PDF
285set /Herwig/DipoleShower/DipoleShowerHandler:PDFB /Herwig/Partons/Shower{0}PDF
286""".format(order, name, member, max_flav)
287
288

◆ technical_parameter_commands()

Herwig7Config.Hw7Config.technical_parameter_commands ( self)

Definition at line 198 of file Herwig7Config.py.

198 def technical_parameter_commands(self):
199
200 self.set_technical_parameter_commands = True
201
202 return("""
203## Disable default attempts to use Pomeron PDF data files, until we're worked how to do that on the Grid!
204set /Herwig/Particles/pomeron:PDF /Herwig/Partons/NoPDF
205
206## Set long-lived particles stable
207set /Herwig/Decays/DecayHandler:MaxLifeTime 10*mm
208""")
209
210
211

◆ tune_commands()

Herwig7Config.Hw7Config.tune_commands ( self,
ps_tune_name = "H7-PS-MMHT2014LO",
ue_tune_name = "H7.2-Default" )

Commands for setting PS/hadronization and UE/MPI tune simultaneously.

Parameters
[in]ps_tune_namename identifying the PS/hadronization tune
[in]ue_tune_namename identifying the UE/MPI tune
Returns
Nothing, adds the corresponding commands directly to the generator configuration object

Definition at line 327 of file Herwig7Config.py.

327 def tune_commands(self, ps_tune_name = "H7-PS-MMHT2014LO", ue_tune_name = "H7.2-Default"):
328
329 cmds = """
330## -------------
331## Tune Settings
332## -------------
333"""
334 self.commands += cmds
335 # self.ps_tune_commands(tune_name = ps_tune_name) # the name of the default PS tune may be obsolete
336 self.ue_tune_commands(tune_name = ue_tune_name)
337
338

◆ ue_tune_commands()

Herwig7Config.Hw7Config.ue_tune_commands ( self,
tune_name = "H7.2-Default" )

Commands for only setting the UE/MPI tune.

Parameters
[in]tune_namename identifying the UE/MPI tune
Returns
Nothing, adds the corresponding commands directly to the generator configuration object

Definition at line 373 of file Herwig7Config.py.

373 def ue_tune_commands(self, tune_name = "H7.2-Default"):
374
375 cmds = """
376## Underlying event tune settings
377"""
378
379 if tune_name == "H7.2-Default":
380 cmds += """
381# > The underlying event tune "H7.2-Default" is already
382# > configured in Herwig7 via the default settings.
383"""
384 # elif tune_name == "some-other-name":
385 # cmds = self.UE_tune_commands(tune_name)
386 else:
387 raise Exception("Underlying event tune name '{}' unknown".format(tune_name))
388
389 self.commands += cmds
390
391

Member Data Documentation

◆ beams

str Herwig7Config.Hw7Config.beams = "EE":

Definition at line 73 of file Herwig7Config.py.

◆ commands

Herwig7Config.Hw7Config.commands = hw7Utils.ConfigurationCommands()

Definition at line 40 of file Herwig7Config.py.

◆ default_commands

Herwig7Config.Hw7Config.default_commands = hw7Utils.ConfigurationCommands()

Definition at line 39 of file Herwig7Config.py.

◆ genSeq

Herwig7Config.Hw7Config.genSeq = genSeq

Definition at line 24 of file Herwig7Config.py.

◆ me_pdf_name

str Herwig7Config.Hw7Config.me_pdf_name = "MMHT2014lo68cl"

Definition at line 31 of file Herwig7Config.py.

◆ mpi_pdf_name

str Herwig7Config.Hw7Config.mpi_pdf_name = "MMHT2014lo68cl"

Definition at line 32 of file Herwig7Config.py.

◆ physics_parameter_commands

bool Herwig7Config.Hw7Config.physics_parameter_commands = True

Definition at line 142 of file Herwig7Config.py.

◆ run_name

Herwig7Config.Hw7Config.run_name = run_name

Definition at line 27 of file Herwig7Config.py.

◆ runArgs

Herwig7Config.Hw7Config.runArgs = runArgs

Definition at line 25 of file Herwig7Config.py.

◆ set_physics_parameter_commands

bool Herwig7Config.Hw7Config.set_physics_parameter_commands = False

Definition at line 35 of file Herwig7Config.py.

◆ set_printout_commands

bool Herwig7Config.Hw7Config.set_printout_commands = False

Definition at line 34 of file Herwig7Config.py.

◆ set_technical_parameter_commands

bool Herwig7Config.Hw7Config.set_technical_parameter_commands = False

Definition at line 36 of file Herwig7Config.py.

◆ use_PDGparams

bool Herwig7Config.Hw7Config.use_PDGparams = False

Definition at line 37 of file Herwig7Config.py.


The documentation for this class was generated from the following file: