## Electroweak Processes

This page contains processes involving Prompt-photon, gamma^*/Z^0 and W^+- production, plus a few with t-channel boson exchange.

### Prompt photon processes

This group collects the processes where one or two photons are produced by the hard process. Additional sources of photons include parton showers and hadron decays. A pT cut is required to stay away from the unphysical low-pT region. An eikonalized description, intended to be valid at all pT, is included as part of the multiparton-interactions framework.

`flag` PromptPhoton:all (`default = off`)
Common switch for the group of all prompt photon processes, as listed separately in the following.

`flag` PromptPhoton:qg2qgamma (`default = off`)
Scattering q g → q gamma. Code 201.

`flag` PromptPhoton:qqbar2ggamma (`default = off`)
Scattering q qbar → g gamma. Code 202.

`flag` PromptPhoton:gg2ggamma (`default = off`)
Scattering g g → g gamma.
Note: This is a box graph. The full quark-mass dependence in the loop leads to very complicated expressions. The current implementation is based on assuming five massless quarks (see below), and thus is questionable at small (pT < m_b) or large (pT > m_t) transverse momenta. Code 203.

`flag` PromptPhoton:ffbar2gammagamma (`default = off`)
Scattering q qbar → gamma gamma. Code 204.

`flag` PromptPhoton:gg2gammagamma (`default = off`)
Scattering g g → gamma gamma.
Note: This is a box graph. The full quark-mass dependence in the loop leads to very complicated expressions. The current implementation is based on assuming five massless quarks (see below), and thus is questionable at small (pT < m_b) or large (pT > m_t) transverse momenta. Code 205.

`mode` PromptPhoton:nQuarkLoop (`default = 5`; `minimum = 3`; `maximum = 6`)
Number of quark flavours included in the box graphs responsible for g g → g gamma and g g→ gamma gamma processes. Owing to the complexity if the massive expressions, quarks are treated as massless. The default value should be applicable in the range of transverse momenta above the b mass but below the t one.

### Weak boson processes

Under this heading we group processes involving the production of a single electroweak gauge boson, i.e. a gamma^*/Z^0 or a W^+-, or a pair of them, or one of them in combination with a parton. Since the three sets are partly conflicting, each is associated with its own group flag. In addition, t-channel exchange of such a boson between two fermions form a separate group.

Note that the Z^0 and W^+- decay modes generated with the processes below only include those Standard-Model ones that are allowed for on-shell decays. Thus several other processes that receive contributions from off-shell resonances are listed separately, e.g. for top or fourth generation fermions.

There is one flag that can be used to influence the gamma^*/Z^0 structure in all the processes below where it is produced, unless otherwise stated.

`mode` WeakZ0:gmZmode (`default = 0`; `minimum = 0`; `maximum = 2`)
Choice of full gamma^*/Z^0 structure or not in relevant processes.
`option` 0 : full gamma^*/Z^0 structure, with interference included.
`option` 1 : only pure gamma^* contribution.
`option` 2 : only pure Z^0 contribution.
Note: irrespective of the option used, the particle produced will always be assigned code 23 for Z^0, and open decay channels is purely dictated by what is set for the Z^0.

#### Boson exchange

The two processes in this subgroup is included as part of the multiparton-interactions framework.

`flag` WeakBosonExchange:all (`default = off`)
Common switch for the group of gamma^*/Z^0 or W^+- exchange between two fermions.

`flag` WeakBosonExchange:ff2ff(t:gmZ) (`default = off`)
Scattering f f' → f f' via gamma^*/Z^0 t-channel exchange, with full interference between the gamma^* and Z^0. Code 211.

`flag` WeakBosonExchange:ff2ff(t:W) (`default = off`)
Scattering f_1 f_2 → f_3 f_4 via W^+- t-channel exchange. Code 212.

#### Single boson

`flag` WeakSingleBoson:all (`default = off`)
Common switch for the group of a single gamma^*/Z^0 or W^+- production.

`flag` WeakSingleBoson:ffbar2gmZ (`default = off`)
Scattering f fbar → gamma^*/Z^0, with full interference between the gamma^* and Z^0. Code 221.

`flag` WeakSingleBoson:ffbar2W (`default = off`)
Scattering f fbar' → W^+-. Code 222.

`flag` WeakSingleBoson:ffbar2ffbar(s:gm) (`default = off`)
Scattering f fbar → gamma^* → f' fbar'. Subset of process 221, but written as a 2 → 2 process, so that pT can be used as ordering variable, e.g. in multiparton interactions. Hardcoded for the final state being either of the five quark flavours or three lepton ones. Not included in the `WeakSingleBoson:all` set, but included in the multiparton-interactions framework. Code 223.

`flag` WeakSingleBoson:ffbar2ffbar(s:gmZ) (`default = off`)
Scattering f fbar → gamma^*/Z^0 → f' fbar'. Equivalent to process 221, but written as a 2 → 2 process, so that pT could be used as cut or ordering variable. Final-state flavour selection is based on the Z^0 allowed decay modes, and the `WeakZ0:gmZmode` options are implemented. Not included in the `WeakSingleBoson:all` set. Code 224.

`flag` WeakSingleBoson:ffbar2ffbar(s:W) (`default = off`)
Scattering f_1 fbar_2 → W+- → f_3 f_4. Almost equivalent to process 222, but written as a 2 → 2 process, so that pT could be used as cut or ordering variable. Final-state flavour selection is based on the W allowed decay modes. There are two simplifications relative to the implementation in process 222. Firstly, it is not possible to set different decay modes for the W^+ and the W^-; instead the allowed W^+ ones will be used throughout, with charge conjugation for the W^-. Secondly, quark mass corrections are neglected in the decay angular distribution. Not included in the `WeakSingleBoson:all` set. Code 225.

#### Boson pair

Note that, in the decay of the two vector bosons produced by an f fbar → V V process, the full four-fermion correlations from the leading-order f fbar → V V → 4f matrix elements are included [Gun86] (with some extensions by the authors). The matrix elements are provided in the double-resonant approach, i.e. excludes graph like f fbar → V → f fbar → f fbar V → 4f.

`flag` WeakDoubleBoson:all (`default = off`)
Common switch for the group of pair production of gamma^*/Z^0 and W^+-.

`flag` WeakDoubleBoson:ffbar2gmZgmZ (`default = off`)
Scattering f fbar' → gamma^*/Z^0 gamma^*/Z^0. Code 231.

`flag` WeakDoubleBoson:ffbar2ZW (`default = off`)
Scattering f fbar' → Z^0 W^+-. Note that here the gamma^* contribution is not (currently) included. Code 232.

`flag` WeakDoubleBoson:ffbar2WW (`default = off`)
Scattering f fbar → W^+ W^-. Code 233.

#### Boson and parton

`flag` WeakBosonAndParton:all (`default = off`)
Common switch for the group of production of a single electroweak gauge boson, i.e. a gamma^*/Z^0 or a W^+-, in association with a parton, i.e. a quark, gluon, photon or lepton. These processes give first-order corrections to the ones in the `WeakSingleBoson` class, and both sets cannot be used simultaneously without unphysical double-counting. The current class should only be used to study the high-pT tail of the gauge-boson production processes (for LHC applications at least pT > 20 GeV), while the ones in `WeakSingleBoson` should be used for inclusive production.

`flag` WeakBosonAndParton:qqbar2gmZg (`default = off`)
Scattering q qbar → gamma^*/Z^0 g. Code 241.

`flag` WeakBosonAndParton:qg2gmZq (`default = off`)
Scattering q g → gamma^*/Z^0 q . Code 242.

`flag` WeakBosonAndParton:ffbar2gmZgm (`default = off`)
Scattering f fbar → gamma^*/Z^0 gamma. Code 243.

`flag` WeakBosonAndParton:fgm2gmZf (`default = off`)
Scattering f gamma → gamma^*/Z^0 f. Code 244.

`flag` WeakBosonAndParton:qqbar2Wg (`default = off`)
Scattering q qbar → W^+- g. Code 251.

`flag` WeakBosonAndParton:qg2Wq (`default = off`)
Scattering q g → W^+- q. Code 252.

`flag` WeakBosonAndParton:ffbar2Wgm (`default = off`)
Scattering f fbar → W^+- gamma. Code 253.

`flag` WeakBosonAndParton:fgm2Wf (`default = off`)
Scattering f gamma → W^+- f. Code 254.

### Photon Collision Processes

A few electroweak two-photon production processes are available. To use them, photon PDFs have to be defined for the incoming beam particles. This is the case for the internal NNPDF 2.3 QCD+QED sets, as well as some further ones available in the LHAPDF library, but not for all PDFs.

`flag` PhotonCollision:all (`default = off`)
Common switch for the group of six processes presented below.

`flag` PhotonCollision:gmgm2qqbar (`default = off`)
Scatterings gamma gamma → q qbar, where q is a light quark (u, d, s) . Code 261.

`flag` PhotonCollision:gmgm2ccbar (`default = off`)
Scattering gamma gamma → c cbar. Code 262.

`flag` PhotonCollision:gmgm2bbbar (`default = off`)
Scattering gamma gamma → b bbar. Code 263.

`flag` PhotonCollision:gmgm2ee (`default = off`)
Scattering gamma gamma → e+ e-. Code 264.

`flag` PhotonCollision:gmgm2mumu (`default = off`)
Scattering gamma gamma → mu+ mu-. Code 265.

`flag` PhotonCollision:gmgm2tautau (`default = off`)
Scattering gamma gamma → tau+ tau-. Code 266.

### Photon-Parton Processes

Photon-parton production processes. See comment related to PDFs above. Also relevant for direct-resolved processes in photon-photon collisions. Two instances of a given process are created when mixing processes where the direct photon can come from either side. In this case the process code in the parentheses is used when the direct photon is from side A.

`flag` PhotonParton:all (`default = off`)
Common switch for the processes 271-274 (also 281-284 when relevant).

`flag` PhotonParton:ggm2qqbar (`default = off`)
Scattering g gamma → q qbar, where q is a light quark (u, d, s). Code 271 (281).

`flag` PhotonParton:ggm2ccbar (`default = off`)
Scattering g gamma → c cbar. Code 272 (282).

`flag` PhotonParton:ggm2bbbar (`default = off`)
Scattering g gamma → b bbar. Code 273 (283).

`flag` PhotonParton:qgm2qg (`default = off`)
Scattering q gamma → q g. Code 274 (284).

`flag` PhotonParton:qgm2qgm (`default = off`)
Scattering q gamma → q gamma. Code 275 (285).