## Hard QCD Processes

This group contains the processes for QCD jet production above some minimum pT threshold, with open charm and bottom production set aside as a special part, and three-jet topologies as a special subset. The pT_min cut cannot be put too low, or else unreasonably large jet cross sections will be obtained. This is because the divergent perturbative QCD cross section is used in this process group, without any regularization modifications. An eikonalized description, intended to be valid at all pT, is instead included as part of the multiparton-interactions framework, specifically in `SoftQCD:nonDiffractive`, see the manual section on Soft QCD Processes.
Warning 1: you must remember to set the `PhaseSpace:pTHatMin` value if you use any of these processes; there is no sensible default.
Warning 2: you must not mix processes from the `SoftQCD` and `HardQCD` process groups, since this is likely to lead to double-counting.

`flag` HardQCD:all (`default = off`)
Common switch for the group of all hard QCD 2→2 processes, as listed separately in the following.

### Light Quarks and Gluons

`flag` HardQCD:gg2gg (`default = off`)
Scatterings g g → g g. Code 111.

`flag` HardQCD:gg2qqbar (`default = off`)
Scatterings g g → q qbar, where q by default is a light quark (u, d, s) (see below). Code 112.

`flag` HardQCD:qg2qg (`default = off`)
Scatterings q g → q g and qbar g → qbar g. Code 113.

`flag` HardQCD:qq2qq (`default = off`)
Scatterings q q' → q q', q qbar' → q qbar', qbar qbar' → qbar qbar', where q' and q may agree, but the outgoing flavours equals the incoming ones Code 114.

`flag` HardQCD:qqbar2gg (`default = off`)
Scatterings q qbar → g g. Code 115.

`flag` HardQCD:qqbar2qqbarNew (`default = off`)
Scatterings q qbar → q' qbar', where q' by default is a light quark (u, d, s) (see below). Code 116.

`mode` HardQCD:nQuarkNew (`default = 3`; `minimum = 0`; `maximum = 5`)
Number of allowed outgoing new quark flavours in the above g g → q qbar and q qbar → q' qbar' processes, where quarks are treated as massless in the matrix-element expressions (but correctly in the phase space). It is thus assumed that c cbar and b bbar are added separately with masses taken into account, using the processes below. A change to 4 would also include c cbar in the massless approximation, etc. In order to avoid double-counting the processes below should then not be used simultaneously.

### Heavy Flavours

These processes form a natural part of the above class, but can also be generated separately. Formally the heavy-quark mass makes these matrix elements finite in the pT → 0 limit, but at high energies one may still question the validity of the expressions at low pT values, like for the other hard-QCD processes. Also as above, an eikonalized description, intended to be valid at all pT, is included as part of the multiparton-interactions framework.
Note that the processes below only represent the "tip of the iceberg" of charm and bottom production at high energies, where flavour excitation and shower branchings provide major additional sources. All these sources come together in the descriptions offered by `SoftQCD:nonDiffractive` and `HardQCD:all`.

`flag` HardQCD:gg2ccbar (`default = off`)
Scatterings g g → c cbar. Code 121.

`flag` HardQCD:qqbar2ccbar (`default = off`)
Scatterings q qbar → c cbar. Code 122.

`flag` HardQCD:hardccbar (`default = off`)
Sum of the previous two event types. Codes 121 and 122.

`flag` HardQCD:gg2bbbar (`default = off`)
Scatterings g g → b bbar. Code 123.

`flag` HardQCD:qqbar2bbbar (`default = off`)
Scatterings q qbar → b bbar. Code 124.

`flag` HardQCD:hardbbbar (`default = off`)
Sum of the previous two event types. Codes 123 and 124.

### Three-parton processes

Three-parton final states are generated by showers off two-parton processes. Topologies then cannot be specified beforehand, beyond what is provided by the two-parton hard process. For some checks it may be convenient to have access to the dedicated three-parton final states, which is what this set of processes allows. Cross sections have been taken from [Ber81].
Note that the processes in this section are not affected by the `HardQCD:all` switch. In fact, it would be double-counting to include both the `HardQCD:all` and the `HardQCD:3parton` processes in a run or study.
Warning: this section is still incomplete, e.g. the selection of colour flow is very simple, and so it should only be used with caution.

`flag` HardQCD:3parton (`default = off`)
Common switch for the group of all hard QCD processes with three partons in the final state, as listed separately in the following.

`flag` HardQCD:gg2ggg (`default = off`)
Scatterings g g → g g g. Code 131.

`flag` HardQCD:qqbar2ggg (`default = off`)
Scatterings q qbar → g g g. Code 132.

`flag` HardQCD:qg2qgg (`default = off`)
Scatterings q g → q g g and qbar g → qbar g g. Code 133.

`flag` HardQCD:qq2qqgDiff (`default = off`)
Scatterings q q' → q q' g, q qbar' → q qbar' g, and qbar qbar' → qbar qbar' g. Code 134.

`flag` HardQCD:qq2qqgSame (`default = off`)
Scatterings q q → q q g and qbar qbar → qbar qbar g (q qbar → q qbar g scatterings are considered separately below, see `HardQCD:qqbar2qqbargSame`). Code 135.

`flag` HardQCD:qqbar2qqbargDiff (`default = off`)
Scatterings q qbar → q' qbar' g, where q' by default is a light quark (u, d, s) (see `HardQCD:nQuarkNew` above). Code 136.

`flag` HardQCD:qqbar2qqbargSame (`default = off`)
Scatterings q qbar → q qbar g. Code 137.

`flag` HardQCD:gg2qqbarg (`default = off`)
Scatterings g g → q qbar g, where q by default is a light quark (u, d, s) (see `HardQCD:nQuarkNew` above). Code 138.

`flag` HardQCD:qg2qqqbarDiff (`default = off`)
Scatterings q g → q q' qbar' and qbar g → qbar qbar' q', where q' by default is a light quark (u, d, s) (see `HardQCD:nQuarkNew` above). Code 139.

`flag` HardQCD:qg2qqqbarSame (`default = off`)
Scatterings q g → q q qbar and qbar g → qbar qbar q. Code 140.