## Onia Processes

Production of J/psi or Upsilon, directly and via chi states and the colour-octet mechanism. In each process the square-bracketed expression specifies the state in spectroscopic notation, (2S+1) L J, followed by (1) for colour-singlet states and (8) for colour-octet ditto.

The original Fortran code for these processes has been contributed by Stefan Wolf [unpublished]. For the C++ version only the unpolarized expressions are retained, since the theoretical predictions of the colour-octet model anyway do not agree with the experimental observations. Furthermore, the polarization effects are modest, so isotropic decay is not a bad starting point. Such an event sample can afterwards be reweighted at will by the user, to test various assumptions.

The description of final-state radiation is in this case based on some further model assumptions.

Most of the processes below are divergent in the limit pT -> 0, and therefore a pTmin scale should be set. Comparisons with data indicate that this divergence can be tamed the same way as for the normal QCD 2 -> 2 cross sections [Bar06,Kra08], which makes sense, since they are all dominated by the same kind of t-channel gluon exchange. It is therefore possible to use the SuppressSmallPT user hook to impose a reweighting that cancels the low-pT divergence.

An eikonalized description of these processes is included in the multiparton-interactions framework. Here the low-pT dampening is automatic, and additionally the framework is more consistent (e.g. with respect to energy-momentum constraints and the impact-parameter description) for events where the onium production is not the hardest subprocess, as would often be the case in the low-pT limit.

### Charmonium

`flag` Charmonium:all (`default = off`)
Common switch for the group of charmonium production.

`flag` Charmonium:gg2QQbar[3S1(1)]g (`default = off`)
g g -> ccbar[3S1(1)] g. Code 401.

`flag` Charmonium:gg2QQbar[3P0(1)]g (`default = off`)
g g -> ccbar[3P0(1)] g. Code 402.

`flag` Charmonium:gg2QQbar[3P1(1)]g (`default = off`)
g g -> ccbar[3P1(1)] g. Code 403.

`flag` Charmonium:gg2QQbar[3P2(1)]g (`default = off`)
g g -> ccbar[3P2(1)] g. Code 404.

`flag` Charmonium:qg2QQbar[3P0(1)]q (`default = off`)
q g -> ccbar[3P0(1)] q. Code 405.

`flag` Charmonium:qg2QQbar[3P1(1)]q (`default = off`)
q g -> ccbar[3P1(1)] q. Code 406.

`flag` Charmonium:qg2QQbar[3P2(1)]q (`default = off`)
q g -> ccbar[3P2(1)] q. Code 407.

`flag` Charmonium:qqbar2QQbar[3P0(1)]g (`default = off`)
q qbar -> ccbar[3P0(1)] g. Code 408.

`flag` Charmonium:qqbar2QQbar[3P1(1)]g (`default = off`)
q qbar -> ccbar[3P1(1)] g. Code 409.

`flag` Charmonium:qqbar2QQbar[3P2(1)]g (`default = off`)
q qbar -> ccbar[3P2(1)] g. Code 410.

`flag` Charmonium:gg2QQbar[3S1(8)]g (`default = off`)
g g -> ccbar[3S1(8)] g. Code 411.

`flag` Charmonium:gg2QQbar[1S0(8)]g (`default = off`)
g g -> ccbar[3S1(8)] g. Code 412.

`flag` Charmonium:gg2QQbar[3PJ(8)]g (`default = off`)
g g -> ccbar[3S1(8)] g. Code 413.

`flag` Charmonium:qg2QQbar[3S1(8)]q (`default = off`)
q g -> ccbar[3S1(8)] q. Code 414.

`flag` Charmonium:qg2QQbar[1S0(8)]q (`default = off`)
q g -> ccbar[3S1(8)] q. Code 415.

`flag` Charmonium:qg2QQbar[3PJ(8)]q (`default = off`)
q g -> ccbar[3S1(8)] q. Code 416.

`flag` Charmonium:qqbar2QQbar[3S1(8)]g (`default = off`)
q qbar -> ccbar[3S1(8)] g. Code 417.

`flag` Charmonium:qqbar2QQbar[1S0(8)]g (`default = off`)
q qbar -> ccbar[3S1(8)] g. Code 418.

`flag` Charmonium:qqbar2QQbar[3PJ(8)]g (`default = off`)
q qbar -> ccbar[3S1(8)] g. Code 419.

### Bottomonium

`flag` Bottomonium:all (`default = off`)
Common switch for the group of charmonium production.

`flag` Bottomonium:gg2QQbar[3S1(1)]g (`default = off`)
g g -> bbbar[3S1(1)] g. Code 501.

`flag` Bottomonium:gg2QQbar[3P0(1)]g (`default = off`)
g g -> bbbar[3P0(1)] g. Code 502.

`flag` Bottomonium:gg2QQbar[3P1(1)]g (`default = off`)
g g -> bbbar[3P1(1)] g. Code 503.

`flag` Bottomonium:gg2QQbar[3P2(1)]g (`default = off`)
g g -> bbbar[3P2(1)] g. Code 504.

`flag` Bottomonium:qg2QQbar[3P0(1)]q (`default = off`)
q g -> bbbar[3P0(1)] q. Code 505.

`flag` Bottomonium:qg2QQbar[3P1(1)]q (`default = off`)
q g -> bbbar[3P1(1)] q. Code 506.

`flag` Bottomonium:qg2QQbar[3P2(1)]q (`default = off`)
q g -> bbbar[3P2(1)] q. Code 507.

`flag` Bottomonium:qqbar2QQbar[3P0(1)]g (`default = off`)
q qbar -> bbbar[3P0(1)] g. Code 508.

`flag` Bottomonium:qqbar2QQbar[3P1(1)]g (`default = off`)
q qbar -> bbbar[3P1(1)] g. Code 509.

`flag` Bottomonium:qqbar2QQbar[3P2(1)]g (`default = off`)
q qbar -> bbbar[3P2(1)] g. Code 510.

`flag` Bottomonium:gg2QQbar[3S1(8)]g (`default = off`)
g g -> bbbar[3S1(8)] g. Code 511.

`flag` Bottomonium:gg2QQbar[1S0(8)]g (`default = off`)
g g -> bbbar[3S1(8)] g. Code 512.

`flag` Bottomonium:gg2QQbar[3PJ(8)]g (`default = off`)
g g -> bbbar[3S1(8)] g. Code 513.

`flag` Bottomonium:qg2QQbar[3S1(8)]q (`default = off`)
q g -> bbbar[3S1(8)] q. Code 514.

`flag` Bottomonium:qg2QQbar[1S0(8)]q (`default = off`)
q g -> bbbar[3S1(8)] q. Code 515.

`flag` Bottomonium:qg2QQbar[3PJ(8)]q (`default = off`)
q g -> bbbar[3S1(8)] q. Code 516.

`flag` Bottomonium:qqbar2QQbar[3S1(8)]g (`default = off`)
q qbar -> bbbar[3S1(8)] g. Code 517.

`flag` Bottomonium:qqbar2QQbar[1S0(8)]g (`default = off`)
q qbar -> bbbar[3S1(8)] g. Code 518.

`flag` Bottomonium:qqbar2QQbar[3PJ(8)]g (`default = off`)
q qbar -> bbbar[3S1(8)] g. Code 519.

### Onium matrix elements

The implementation of charmonium and bottomonium production, including the colour-octet production mechanism, requires information on NRQCD matrix elements for the various wavefunctions involved. Default values for these are encoded in the following ten variables. They are taken from [Nas00]; see also [Bar06].

`parm` Charmonium:OJpsi3S11 (`default = 1.16`; `minimum = 0.0`)
<O(J/psi)[3S1(1)]>.

`parm` Charmonium:OJpsi3S18 (`default = 0.0119`; `minimum = 0.0`)
<O(J/psi)[3S1(8)]>.

`parm` Charmonium:OJpsi1S08 (`default = 0.01`; `minimum = 0.0`)
<O(J/psi)[1S0(8)]>.

`parm` Charmonium:OJpsi3P08 (`default = 0.01`; `minimum = 0.0`)
<O(J/psi)[3P0(8)]>/m_c^2.

`parm` Charmonium:Ochic03P01 (`default = 0.05`; `minimum = 0.0`)
<O(chi_c0)[3P0(8)]>/m_c^2.

`parm` Bottomonium:OUpsilon3S11 (`default = 9.28`; `minimum = 0.0`)
<O(Upsilon)[3S1(1)]>.

`parm` Bottomonium:OUpsilon3S18 (`default = 0.15`; `minimum = 0.0`)
<O(Upsilon)[3S1(8)]>.

`parm` Bottomonium:OUpsilon1S08 (`default = 0.02`; `minimum = 0.0`)
<O(Upsilon)[1S0(8)]>.

`parm` Bottomonium:OUpsilon3P08 (`default = 0.02`; `minimum = 0.0`)
<O(Upsilon)[3P0(8)]>/m_b^2.

`parm` Bottomonium:Ochib03P01 (`default = 0.085`; `minimum = 0.0`)
<O(chi_b0)[3P0(8)]>/m_b^2.