`main51.cc`

and
`main52.cc`

programs in the `examples`

subdirectory provide some examples of absolutely minimal sanity checks
before a new PDF set is put in production.
The simplest option is to pick one of the distributions available internally:

`mode `

** PDF:pSet **
(`default = `

; **2**`minimum = 1`

; `maximum = 16`

)

Parton densities to be used for proton beams (and, by implication,
antiproton ones):
`option `

** 1** : GRV 94L, LO *alpha_s(M_Z) = 0.128*
(this set is out of date, but retained for historical comparisons).
`option `

** 2** : CTEQ 5L, LO *alpha_s(M_Z) = 0.127*
(this set is also out of date, but not badly so, and many tunes
are based on it).
`option `

** 3** : MRST LO* (2007),
NLO *alpha_s(M_Z) = 0.12032*.
`option `

** 4** : MRST LO** (2008),
NLO *alpha_s(M_Z) = 0.11517*.
`option `

** 5** : MSTW 2008 LO (central member),
LO *alpha_s(M_Z) = 0.13939*.
`option `

** 6** : MSTW 2008 NLO (central member),
NLO *alpha_s(M_Z) = 0.12018* (NLO, see Warning 3 above).
`option `

** 7** : CTEQ6L, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 8** : CTEQ6L1, LO *alpha_s(M_Z) = 0.1298*.
`option `

** 9** : CTEQ66.00 (NLO, central member),
NLO *alpha_s(M_Z) = 0.1180* (NLO, see Warning 3 above).
`option `

** 10** : CT09MC1, LO *alpha_s(M_Z) = 0.1300*.
`option `

** 11** : CT09MC2, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 12** : CT09MCS, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 13** : NNPDF2.3 QCD+QED LO *alpha_s(M_Z) = 0.130*.
`option `

** 14** : NNPDF2.3 QCD+QED LO *alpha_s(M_Z) = 0.119*.
`option `

** 15** : NNPDF2.3 QCD+QED NLO *alpha_s(M_Z) = 0.119*.
`option `

** 16** : NNPDF2.3 QCD+QED NNLO *alpha_s(M_Z) = 0.119*.
**Note:** the *alpha_s(M_Z)* values and the order of the
running in the description above is purely informative, and does not
affect any other parts of the program. Instead you have the freedom to
set *alpha_s(M_Z)* value and running separately for
hard processes
(including resonance decays),
multiparton interactions,
initial-state radiation, and
final-state radiation.

This is a reasonably complete list of recent LO fits, both
ones within the normal LO context and ones with modifications for better
matching to event generators. In addition two older sets are
included for backwards reference (most studies to date are based on
CTEQ 5L). If you link to the
LHAPDF
library [Wha05] you get access to a much wider selection.
**Warning 1:** owing to previous problems with the behaviour
of PDF's beyond the *x* and *Q^2* boundaries of a set,
you should only use LHAPDF **version 5.3.0 or later**.
**Warning 2:** the behaviour of the LHAPDF sets need not be
identical with the implementation found in PYTHIA. Specifically we
are aware of the following points that may influence a comparison.

(a) CTEQ 5L in PYTHIA is the parametrization, in LHAPDF the grid
interpolation.

(b) MRST LO* and LO** in PYTHIA is based on an updated edition,
where one makes use of the expanded MSTW grid format, while LHAPDF
is based on the original smaller grid.

(c) The CTEQ 6 and CT09MC sets in PYTHIA are frozen at the
boundaries of the grid, by recommendation of the authors, while
LHAPDF also offers an option with a smooth extrapolation outside
the grid boundaries.

`flag `

** PDF:useLHAPDF **
(`default = `

)**off**

If off then the choice of proton PDF is based on `PDF:pSet`

above. If on then it is instead based on the choice of
`PDF:LHAPDFset`

and `PDF:LHAPDFmember`

below.
**Note:** in order for this option to work you must have
compiled PYTHIA appropriately and have set the `LHAPATH`

environment variable to provide the data-files directory of your local
LHAPDF installation. See the README file in the `examples`

directory for further instructions.

`word `

** PDF:LHAPDFset **
(`default = `

)**MRST2004FF4lo.LHgrid**

Name of proton PDF set from LHAPDF to be used. You have to choose
from the
list of available sets. Examples of some fairly recent ones
(but still less recent than found above) would be
cteq61.LHpdf, cteq61.LHgrid, cteq6l.LHpdf, cteq6ll.LHpdf,
MRST2004nlo.LHpdf, MRST2004nlo.LHgrid, MRST2004nnlo.LHgrid and
MRST2004FF3lo.LHgrid. If you pick a LHpdf set it will require some
calculation the first time it is called.
**Technical note:** if you provide a name beginning with a
slash (/) it is assumed you want to provide the full file path and then
`initPDFsetM(name)`

is called, else the correct path is assumed
already set and `initPDFsetByNameM(name)`

is called.

`mode `

** PDF:LHAPDFmember **
(`default = `

; **0**`minimum = 0`

)

Further choice of a specific member from the set picked above. Member 0
should normally correspond to the central value, with higher values
corresponding to different error PDF's somewhat off in different
directions. You have to check from set to set which options are open.
**Note:** you can only use one member in a run, so if you
want to sweep over many members you either have to do many separate
runs or, as a simplification, save the
pdf weights at the hard scattering
and do an offline reweighting of events.

`flag `

** PDF:extrapolateLHAPDF **
(`default = `

)**off**

Parton densities have a guaranteed range of validity in *x*
and *Q^2*, and what should be done beyond that range usually is
not explained by the authors of PDF sets. Nevertheless these boundaries
very often are exceeded, e.g. minimum-bias studies at LHC may sample
*x* values down to *10^-8*, while many PDF sets stop
already at *10^-5*. The default behaviour is then that the
PDF's are frozen at the boundary, i.e. *xf(x,Q^2)* is fixed at
its value at *x_min* for all values *x < x_min*,
and so on. This is a conservative approach. Alternatively, if you
switch on extrapolation, then parametrizations will be extended beyond
the boundaries, by some prescription. In some cases this will provide a
more realistic answer, in others complete rubbish. Another problem is
that some of the PDF-set codes will write a warning message anytime the
limits are exceeded, thus swamping your output file. Therefore you should
study a set seriously before you run it with this switch on.

If you want to use PDF's not found in LHAPDF, or you want to interface LHAPDF another way, you have full freedom to use the more generic interface options.

Of course it is inconsistent to use different PDF's in different parts
of an event, but if the *x* and *Q^2* ranges mainly accessed
by the components are rather different then the contradiction would not be
too glaring. Furthermore, since standard PDF's are one-particle-inclusive
we anyway have to 'invent' our own PDF modifications to handle configurations
where more than one parton is kicked out of the proton [Sjo04].

The PDF choices that can be made are the same as above, so we do not repeat the detailed discussion.

`flag `

** PDF:useHard **
(`default = `

)**off**

If on then select a separate PDF set for the hard process, using the
variables below. If off then use the same PDF set for everything,
as already chosen above.

`mode `

** PDF:pHardSet **
(`default = `

; **2**`minimum = 1`

; `maximum = 16`

)

Parton densities to be used for proton beams (and, by implication,
antiproton ones):
`option `

** 1** : GRV 94L, LO *alpha_s(M_Z) = 0.128*
(out of date).
`option `

** 2** : CTEQ 5L, LO *alpha_s(M_Z) = 0.127*
(slightly out of date; many tunes are based on it).
`option `

** 3** : MRST LO* (2007),
NLO *alpha_s(M_Z) = 0.12032*.
`option `

** 4** : MRST LO** (2008),
NLO *alpha_s(M_Z) = 0.11517*.
`option `

** 5** : MSTW 2008 LO (central member),
LO *alpha_s(M_Z) = 0.13939*.
`option `

** 6** : MSTW 2008 NLO (central member),
LO *alpha_s(M_Z) = 0.12018*.
`option `

** 7** : CTEQ6L, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 8** : CTEQ6L1, LO *alpha_s(M_Z) = 0.1298*.
`option `

** 9** : CTEQ66.00 (NLO, central member),
NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 10** : CT09MC1, LO *alpha_s(M_Z) = 0.1300*.
`option `

** 11** : CT09MC2, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 12** : CT09MCS, NLO *alpha_s(M_Z) = 0.1180*.
`option `

** 13** : NNPDF2.3 QCD+QED LO *alpha_s(M_Z) = 0.130*.
`option `

** 14** : NNPDF2.3 QCD+QED LO *alpha_s(M_Z) = 0.119*.
`option `

** 15** : NNPDF2.3 QCD+QED NLO *alpha_s(M_Z) = 0.119*.
`option `

** 16** : NNPDF2.3 QCD+QED NNLO *alpha_s(M_Z) = 0.119*.

`flag `

** PDF:useHardLHAPDF **
(`default = `

)**off**

If off then the choice of proton PDF is based on `hardpPDFset`

above. If on then it is instead based on the choice of
`hardLHAPDFset`

and `hardLHAPDFmember`

below.
Note that if you want to use LHAPDF here, and you also use LHAPDF
for the "normal" PDF set, then LHAPDF must have been compiled so as to
handle (at least) two concurrent sets, with the configure statement
`--with-max-num-pdfsets=2`

.

`word `

** PDF:hardLHAPDFset **
(`default = `

)**MRST2004FF4lo.LHgrid**

Name of proton PDF set from LHAPDF to be used.

`mode `

** PDF:hardLHAPDFmember **
(`default = `

; **0**`minimum = 0`

)

Further choice of a specific member from the set picked above.

Note that there is no separate equivalent of the
`PDF:extrapolateLHAPDF`

flag specifically for the hard
PDF. Since LHAPDF only has one global flag for extrapolation or not,
the choice for the normal PDF's also applies to the hard ones.

Much of the switches are taken over from the proton case, with obvious
modifications; therefore the description is briefer. Currently we have
not seen the need to allow separate parton densities for hard processes.
When using LHAPDF the `PDF:extrapolateLHAPDF`

switch of the
proton also applies to pions.

`mode `

** PDF:piSet **
(`default = `

; **1**`minimum = 1`

; `maximum = 1`

)

Internal parton densities that can be used for pion beams, currently with
only one choice.
`option `

** 1** : GRV 92 L.

`flag `

** PDF:piUseLHAPDF **
(`default = `

)**off**

If off then the choice of proton PDF is based on `PDF:piSet`

above. If on then it is instead based on the choice of
`PDF:piLHAPDFset`

and `PDF:piLHAPDFmember`

below.

`word `

** PDF:piLHAPDFset **
(`default = `

)**OWPI.LHgrid**

Name of pion PDF set from LHAPDF to be used. You have to choose from the
list of available sets.

`mode `

** PDF:piLHAPDFmember **
(`default = `

; **0**`minimum = 0`

)

Further choice of a specific member from the set picked above.

`mode `

** PDF:PomSet **
(`default = `

; **6**`minimum = 1`

; `maximum = 6`

)

Parton densities that can be used for Pomeron beams.
`option `

** 1** : *Q^2*-independent parametrizations
*xf(x) = N_ab x^a (1 - x)^b*, where *N_ab* ensures
unit momentum sum. The *a* and *b* parameters can be
set separately for the gluon and the quark distributions. The
momentum fraction of gluons and quarks can be freely mixed, and
production of *s* quarks can be suppressed relative to
that of *d* and *u* ones, with antiquarks as likely
as quarks. See further below how to set the six parameters of this
approach.
`option `

** 2** : *pi0* distributions, as specified in the
section above.
`option `

** 3** : the H1 2006 Fit A NLO *Q^2*-dependent
parametrization, based on a tune to their data [H1P06],
rescaled by the factor `PomRescale`

below.
`option `

** 4** : the H1 2006 Fit B NLO *Q^2*-dependent
parametrization, based on a tune to their data [H1P06],
rescaled by the factor `PomRescale`

below.
`option `

** 5** : the H1 2007 Jets NLO *Q^2*-dependent
parametrization, based on a tune to their data [H1P07],
rescaled by the factor `PomRescale`

below.
`option `

** 6** : the H1 2006 Fit B LO *Q^2*-dependent
parametrization, based on a tune to their data [H1P06],
rescaled by the factor `PomRescale`

below.

`parm `

** PDF:PomGluonA **
(`default = `

; **0.**`minimum = -0.5`

; `maximum = 2.`

)

the parameter *a* in the ansatz *xg(x) = N_ab x^a (1 - x)^b*
for option 1 above.

`parm `

** PDF:PomGluonB **
(`default = `

; **3.**`minimum = 0.`

; `maximum = 10.`

)

the parameter *b* in the ansatz *xg(x) = N_ab x^a (1 - x)^b*
for option 1 above.

`parm `

** PDF:PomQuarkA **
(`default = `

; **0.**`minimum = -0.5`

; `maximum = 2.`

)

the parameter *a* in the ansatz *xq(x) = N_ab x^a (1 - x)^b*
for option 1 above.

`parm `

** PDF:PomQuarkB **
(`default = `

; **3.**`minimum = 0.`

; `maximum = 10.`

)

the parameter *b* in the ansatz *xq(x) = N_ab x^a (1 - x)^b*
for option 1 above.

`parm `

** PDF:PomQuarkFrac **
(`default = `

; **0.2**`minimum = 0.`

; `maximum = 1.`

)

the fraction of the Pomeron momentum carried by quarks
for option 1 above, with the rest carried by gluons.

`parm `

** PDF:PomStrangeSupp **
(`default = `

; **0.5**`minimum = 0.`

; `maximum = 1.`

)

the suppression of the *s* quark density relative to that of the
*d* and *u* ones for option 1 above.

`parm `

** PDF:PomRescale **
(`default = `

; **1.0**`minimum = 0.5`

; `maximum = 5.0`

)

Rescale the four H1 fits above by this uniform factor, e.g. to bring
up their momentum sum to around unity. By default all three have
a momentum sum of order 0.5, suggesting that a factor around 2.0
should be used. You can use `examples/main51.cc`

to get
a more precise value. Note that also other parameters in the
diffraction framework may need to
be retuned when this parameter is changed.

`flag `

** PDF:lepton **
(`default = `

)**on**

Use parton densities for lepton beams or not. If off the colliding
leptons carry the full beam energy, if on part of the energy is
radiated away by initial-state photons. In the latter case the
initial-state showers will generate the angles and energies of the
set of photons that go with the collision. In addition one collinear
photon per beam carries any leftover amount of energy not described
by shower emissions. If the initial-state showers are switched off
these collinear photons will carry the full radiated energy.

Neutrinos are always taken pointlike. Do note that the phase space
selection machinery currently does not allow one resolved and one
unresolved beam. For lepton-neutrino collisions to work you must
therefore set `PDF:lepton = off`

.

`mode `

** PDFinProcess:nQuarkIn **
(`default = `

; **5**`minimum = 0`

; `maximum = 5`

)

Number of allowed incoming quark flavours in the beams; a change
to 4 would thus exclude *b* and *bbar* as incoming
partons, etc.