## POWHEG Matching

POWHEG [Nas04] in its character is very much like a parton shower, with a Sudakov factor arising from the ordering of emissions. Both POWHEG-BOX [Ali10] and PYTHIA are based on a combined evolution of ISR and FSR in pT-related "hardness" variables, and thus are kindred spirits. The hardness definitions differ, however. Frequently we will therefore need to distinguish between POWHEG-hardness and PYTHIA-hardness in the following.

The simplest merging solution, of continuing the PYTHIA shower at the LHA `scale` hardness where POWHEG leaves off, is obtained if you set `SpaceShower:pTmaxMatch = 1` and `TimeShower:pTmaxMatch = 1`. But then mismatches are bound to happen: some regions may be doublecounted, while others may not be counted at all. Depending on the choice of hardness, such mismatches might be small.

There are no guarantees, however, so a (hopefully) more accurate merging scheme is coded up in the `include/Pythia8Plugins/PowHegHooks.h` file, with a realistic user example in the `examples/main152` files. Here we would like to discuss the (POWHEG-specific) input settings for `main152.cc`, see `main152.cmnd`, and attempt to give some recommendations on how to use the main program to perform a matching of POWHEG-BOX with PYTHIA 8.

POWHEG-BOX inputs contain Born-like events (with no resolved emission) and Real-type events (containing an additional parton). The mismatch between POWHEG-hardness and PYTHIA-hardness can be minimised if the PYTHIA shower knows
a) The POWHEG-hardness criterion (through which the separation of Born- and Real-like events is defined), and
b) The POWHEG-hardness value (which separates Born- and Real-like events).
If these definitions are known, then PYTHIA can fill missing phase space regions through vetoed showering: let the shower sweep over the full phase space, using its PYTHIA-hardness ordering, and use the POWHEG-hardness to veto those emissions that POWHEG should already have covered. This is only possible since the POWHEG-hardness criterion and the shower ordering criterion are very similar. In the more general case a truncated showering would be needed [Nas04].

For vetoed showering, it is necessary to define the POWHEG-hardness criterion. In the presence of multiple partons, the definition quickly becomes complicated, and allows for different choices. Similar decisions have already been made in the implementation of POWHEG, one example being the choice in defining which "hardness value" is transferred as POWHEG-hardness, e.g. by deciding if the "singular regions" of the FKS or the CS approach are used. If the POWHEG-hardness definition were to be changed, or extended to more objects, the `PowhegHooks.h` code would need to be modified accordingly.

The merging code is designed to be very flexible, and allows access to many possible choices. However, this flexibility means that many parameters can be changed, potentially leading to confusion. Thus, recommendations might prove helpful. All mistakes and inaccuracies rest with the author.

We recommend the usage of vetoed showers. This means using
`POWHEG:veto = 1`
This means that PYTHIA will sweep over the full phase space, and apply a veto on parton shower emissions for which the POWHEG-hardness separation between radiator and emission is above the POWHEG-hardness value of the current input event. The variation `POWHEG:veto = 0` can be used to assess how much phase space is under- or double-counted.

To define the POWHEG-hardness criterion, use
`POWHEG:pTdef = 1`
Other values can be used by experts to assess variations.

Both POWHEG-BOX and PYTHIA 8 generate emissions through a parton shower step, meaning that both programs have a clear definition of a radiator that emits particles, which is very similar (if not identical). To fix the ambiguity if the radiator or the emitted particle should be called "the emission", use
`POWHEG:emitted = 0`
More complicated choices can be used by experts. For instance, use `POWHEG:emitted = 2` to check the POWHEG-hardness of both radiator and emitted.

To exhaustively fix the criterion by which to veto parton shower emissions, it is important to decide which partons/parton pairs are used to calculate the POWHEG hardness of a PYTHIA 8 emission. The minimal and recommended choice is
`POWHEG:pTemt = 0`
This means that only the POWHEG hardness with respect to the radiating leg is checked, and recoil effects are neglected. This prescription should be very similar to how a hardness value is assigned to a Real-type event in the POWHEG-BOX, since in the (implementation of FKS in the) POWHEG-BOX, initial state splittings only have singular regions with the radiating initial state parton, and final state splittings only have singular regions with respect to the radiating final state line. Other choices of `POWHEG:pTemt` are available. A warning is that the impact of changes can be huge, particularly for inputs with many jets. Other choices therefore should only be made by experts, and a high degree of caution is advised.

It is furthermore necessary to decide on a value of the hardness criterion. POWHEG-BOX transfers this value in the `SCALUP` member of Les Houches Events, and we recommend using this value by setting
`POWHEG:pThard = 0`
As a variation, in order to estimate the uncertainty due this choice of POWHEG-hardness definition, it can be useful to also check `POWHEG:pThard = 2`. This will recalculate the POWHEG-hardness value as promoted in [Ole12].

You need to decide how many emissions the vetoed shower should check after an allowed emission has been constructed. If the hardness definitions in POWHEG-BOX and PYTHIA 8 where identical, all checking could be stopped after the first allowed PS emission. To be prudent, we recommend setting
`POWHEG:vetoCount = 3`
which will then check up to three allowed emissions. Higher values of `POWHEG:vetoCount` have not lead to visible differences for the processes which have been tested.

Finally, for many POWHEG processes, the Sudakov effects from electroweak emissions (here we are concerned mainly with photon emissions, but this could apply also to W/Z emissions) are not included. This effect can be investigated using `POWHEG:QEDveto = 0,1,` or `2`. For the default value of `POWHEG:pTemt = 0`, only `POWHEG:QEDveto = 2` has any effect. For this choice, a hard photon and subsequent QCD radiation is retained. In many cases, particularly when the Born contributions are small, the choice has little effect.

### The modes

Note that the modes have generally been defined with several default values below corresponding to the "off" state, and thus do not agree with the recommended values described above.

`mode` POWHEG:nFinal (`default = -1`; `minimum = -1`)
Number of outgoing particles of POWHEG Born level process, i.e. not counting additional POWHEG radiation. The negative default value is interpreted as the instruction to ignore final state particle count conditions, as is e.g. necessary when the POWHEG-BOX code includes a variable number of additional emission (on top of the Born process) into the input events. Note that for this negative default value, only `POWHEG:pThard = 0` is allowed.

`mode` POWHEG:veto (`default = 0`; `minimum = 0`; `maximum = 1`)
Master switch to perform vetoing or not.
`option` 0 : No vetoing is performed (the user hooks is not loaded).
`option` 1 : Showers are started at the kinematical limit. Emissions are vetoed if pTemt > pThard. See also `POWHEG:vetoCount` below.

`mode` POWHEG:vetoCount (`default = 3`; `minimum = 0`)
After this many accepted emissions in a row, no more emissions are checked. Value 0 means that no emissions are checked. Using a very large value (e.g. 100000) will mean that all emissions are checked.

`mode` POWHEG:pThard (`default = 0`; `minimum = 0`; `maximum = 2`)
Selection of the pThard scale. For events where there is no radiation, pThard is always set to be the `SCALUP` value of the LHA/LHEF standard.
`option` 0 : Set pThard equal to `SCALUP`.
`option` 1 : The pT of the POWHEG emission is tested against all other incoming and outgoing partons, with the minimal value chosen.
`option` 2 : The pT of all final-state partons is tested against all other incoming and outgoing partons, with the minimal value chosen.

`mode` POWHEG:pTemt (`default = 0`; `minimum = 0`; `maximum = 2`)
Selection of the pTemt scale.
`option` 0 : It is the pT of the emitted parton with respect to the radiating parton.
`option` 1 : The pT of the emission is checked against all incoming and outgoing partons, and then pTemt is set to the minimum of these values.
`option` 2 : The pT of all final-state partons is tested against all other incoming and outgoing partons, with the minimal value chosen.
Warning: the choice here can give significant variations in the final distributions, notably in the tail to large pT values.

`mode` POWHEG:emitted (`default = 0`; `minimum = 0`; `maximum = 3`)
Selection of emitted parton for FSR.
`option` 0 : The PYTHIA definition of emitted.
`option` 1 : The PYTHIA definition of radiator.
`option` 2 : A random selection of emitted or radiator.
`option` 3 : Both emitted and radiator are tried.

`mode` POWHEG:pTdef (`default = 0`; `minimum = 0`; `maximum = 2`)
Use of pT definitions.
`option` 0 : The POWHEG ISR pT definition for both ISR and FSR.
`option` 1 : The POWHEG ISR pT and FSR d_ij definitions.
`option` 2 : The PYTHIA definitions.

`mode` POWHEG:MPIveto (`default = 0`; `minimum = 0`; `maximum = 1`)
MPI vetoing.
`option` 0 : No MPI vetoing is done.
`option` 1 : When there is no radiation, MPIs with a scale above pT_1 are vetoed, else MPIs with a scale above sum_i pT_i / 2 = (pT_1 + pT_2 + pT_3) / 2 are vetoed. This option is intended specifically for POWHEG simulations of 2 → 2 + 2 → 3 QCD processes.

`mode` POWHEG:QEDveto (`default = 0`; `minimum = 0`; `maximum = 2`)
Treatment of non-QCD radiation.
`option` 0 : Colorless partons are not included in pT calculated from the shower for pTemt>0 .
`option` 1 : Colorless partons ARE included for pTemt>0 .
`option` 2 : Colorless partons ARE included for pTemt>0 . Additionally, if a colorless parton is emitted with pT > pThard in Born-level events, then the entire event is accepted. This is relevant for all values of pTemt .