We provide a set of codes which allow for precise predictions for scalar leptoquark pair production at the LHC at a centre-of-mass energy of 13 TeV, including next-to-leading order (NLO) QCD corrections, contributions from lepton-exchange t-channel diagrams, as well as the resummation of soft-gluon emission at the next-to-next-to-leading logarithmic (NNLL) accuracy:
NNLL-fast-LQ for scalar leptoquarks for the calculation of NLO-QCD + NNLL predictions,MadGraph5_aMC@NLO models for the calculation of NLO-QCD predictions including t-channel contributions,POWHEG-BOX-V2 processes for the calculation of NLO-QCD predictions including t-channel contributions.The outputs of NNLL-fast and MG5_aMC@NLO or the POWHEG-BOX-V2 can be combined to obtain predictions at the NLO-QCD with t-channel + NNLL accuracy, as described below.
When using our numerical codes and tables, please cite the following references:
In addition, we ask you to cite the following reference on scalar leptoquark pair production at NLO-QCD:
Furthermore, NLO cross sections with t-channel contributions are calculated with the help of MadGraph5_aMC@NLO and the POWHEG-BOX-V2, so please cite also:
If you have questions, comments, or want to report a problem regarding the codes, please contact Christoph Borschensky, Benjamin Fuks, or Anna Kulesza.
restrict_R2.dat into the correct folder as described below): restriction_card_r2-a2.tar.gzLQ_processes_PWHGBOX folder should be moved to the POWHEG-BOX-V2 directory. In any other case, the PWHGPATH variable in the Makefile of a specific process has to be adapted.README.txt file and the description below for further information on how to use the codes.NNLL-fast-LQ is a python script that runs with python versions 2.7.X or 3.5 and above and requires the packages numpy and scipy.
The script can be used in two different ways. NNLLfast_LQ.py can be executed with command line arguments:
python NNLLfast_LQ.py PDF m
Here PDF is the parton distribution function and can be either CT18, NNPDF31, or MSHT20. m is the leptoquark mass in GeV between 500 GeV and 2300 GeV. The output is in this case written on screen. NNLLfast_LQ.py can also be executed without command line arguments:
python NNLLfast_LQ.py
In this case the script uses PDF and masses, which are defined in the script NNLLfast_LQ.py. The default values can be edited to obtain the output for a list of masses between 500 GeV and 2300 GeV. The output is written in a file with default name output.out.
Running NNLLfast_LQ.py with the arguments
python NNLLfast_LQ.py NNPDF31 1000
results in the following output:
NNLLfast output for scalar leptoquark pair production
LHC @ 13 TeV, NNPDF31
mLQ = 1000.0 GeV
central + scale error - scale error +- PDF error
NLO(QCD) = 5.241E-03 + 6.134E-04 (11.7%) - 7.014E-04 (13.4%) +- 2.011E-04 ( 3.8%) pb
NLO(QCD)+NNLL = 5.441E-03 + 3.915E-04 ( 7.2%) - 3.459E-04 ( 6.4%) +- 2.025E-04 ( 3.7%) pb
delta NNLL(muF=m, muR=m) = 5.222E-04 pb
delta NNLL(muF=m/2, muR=m/2) = -1.880E-05 pb
delta NNLL(muF=m, muR=m/2) = 4.145E-04 pb
delta NNLL(muF=m/2, muR=m) = 1.410E-05 pb
delta NNLL(muF=2m, muR=m) = 1.164E-03 pb
delta NNLL(muF=m, muR=2m) = 5.709E-04 pb
delta NNLL(muF=2m, muR=2m) = 1.201E-03 pb
In the lines starting with NLO(QCD) and NLO(QCD)+NNLL, the cross sections including their 7-point scale and PDF uncertainties are provided in picobarn. Please note that NLO(QCD) is calculated with NLO PDF sets, while NLO(QCD)+NNLL is computed with NNLO PDF sets. All lines starting with delta NNLL are required for combining the NNLL results with NLO-QCD cross sections including t-channel contributions, as described in the following.
The output of NNLL-fast-LQ only contains the QCD contributions to the scalar leptoquark processes and is thus independent of the specific type of leptoquark. To combine NNLL corrections from soft-gluon resummation with (model-dependent) NLO-QCD cross sections including t-channel contributions including full consideration of the 7-point scale uncertainty, please follow these instructions (for illustration purposes, numerical values are given for $R_2^{(+5/3)}$ production corresponding to benchmark point $a_1$ with the NNPDF3.1 PDF set, as computed by the POWHEG-BOX code for the specific process):
(muF/m, muR/m) ( 1, 1) => NLO(QCD)+t-channel(muF=m, muR=m) = 7.905E-03 pb ( 0.5, 0.5) => NLO(QCD)+t-channel(muF=m/2, muR=m/2) = 8.286E-03 pb ( 1, 0.5) => NLO(QCD)+t-channel(muF=m, muR=m/2) = 8.108E-03 pb ( 0.5, 1) => NLO(QCD)+t-channel(muF=m/2, muR=m) = 8.211E-03 pb ( 2, 1) => NLO(QCD)+t-channel(muF=2m, muR=m) = 7.633E-03 pb ( 1, 2) => NLO(QCD)+t-channel(muF=m, muR=2m) = 7.678E-03 pb ( 2, 2) => NLO(QCD)+t-channel(muF=2m, muR=2m) = 7.357E-03 pb
Please note that currently, the reweighting feature of MG5_aMC@NLO cannot be used to compute the scale uncertainty for NLO-QCD cross sections including t-channel contributions. Therefore, both for MG5_aMC@NLO as well as the POWHEG-BOX, the scale choices have to be set manually before running the calculation.
deltaNNLL numbers from the output of NNLL-fast-LQ:NLO(QCD)+t-channel+NNLL(muF=m, muR=m) = NLO(QCD)+t-channel(muF=m, muR=m) + delta NNLL(muF=m, muR=m) = 8.427E-03 pb NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m/2) = NLO(QCD)+t-channel(muF=m/2, muR=m/2) + delta NNLL(muF=m/2, muR=m/2) = 8.267E-03 pb NLO(QCD)+t-channel+NNLL(muF=m, muR=m/2) = NLO(QCD)+t-channel(muF=m, muR=m/2) + delta NNLL(muF=m, muR=m/2) = 8.523E-03 pb NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m) = NLO(QCD)+t-channel(muF=m/2, muR=m) + delta NNLL(muF=m/2, muR=m) = 8.225E-03 pb NLO(QCD)+t-channel+NNLL(muF=2m, muR=m) = NLO(QCD)+t-channel(muF=2m, muR=m) + delta NNLL(muF=2m, muR=m) = 8.797E-03 pb NLO(QCD)+t-channel+NNLL(muF=m, muR=2m) = NLO(QCD)+t-channel(muF=m, muR=2m) + delta NNLL(muF=m, muR=2m) = 8.249E-03 pb NLO(QCD)+t-channel+NNLL(muF=2m, muR=2m) = NLO(QCD)+t-channel(muF=2m, muR=2m) + delta NNLL(muF=2m, muR=2m) = 8.558E-03 pb
NLO(QCD)+t-channel+NNLL(muF=m, muR=m) corresponding to a scale choice of $\mu_F = \mu_R = m_\text{LQ}$ is the central value. The 7-point scale uncertainty is then calculated by evaluating the maximum and minimum of the remaining six cross sections and subtracting the central value from the obtained two numbers:maximum(NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m/2) ... NLO(QCD)+t-channel+NNLL(muF=2m, muR=2m)) = NLO(QCD)+t-channel+NNLL(muF=2m, muR=m) = 8.797E-03 pb minimum(NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m/2) ... NLO(QCD)+t-channel+NNLL(muF=2m, muR=2m)) = NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m) = 8.225E-03 pb scale error +: NLO(QCD)+t-channel+NNLL(muF=2m, muR=m) - NLO(QCD)+t-channel+NNLL(muF=m, muR=m) = 8.797E-03 pb - 8.427E-03 pb = 0.370E-03 pb scale error -: NLO(QCD)+t-channel+NNLL(muF=m/2, muR=m) - NLO(QCD)+t-channel+NNLL(muF=m, muR=m) = 8.225E-03 pb - 8.427E-03 pb = -0.202E-03 pb
The resulting NLO-QCD with t-channel + NNLL cross section then is: NLO(QCD)+t-channel+NNLL = 8.427E-03 + 0.370E-03 ( 4.4%) - 0.202E-03 ( 2.4%) in pb, which, within numerical tolerances, agrees with the numbers of table 4, benchmark point $a_1$ with NNPDF3.1 PDFs.
In order to generate NLO-QCD with t-channel cross sections with MG5_aMC@NLO, it is necessary to use version 3.1.0 of the platform, or any more recent version. The leptoquark UFO model is lqnlo_v5.ufo.tar.gz (to be unpacked in the models directory of MG5_aMC).
This is necessary in order for decoupled states not to appear in the loops. An illustrative card associated with the $a_2$ scenario of the paper (see table 1) is provided (restrict_R2.dat). In this benchmark. only the two $R_2$ leptoquark eigenstates are active.
restrict_<name>.dat (restrict_S1.dat, etc.). <name> is the name of this restriction, that is important for item 3 below.UFO folder.LQTY2RL and IMLQTY2RL (with an IM prefixed) are related to the $y^{RL}$ couplings of the $R_2$ leptoquarks. The naming scheme is provided in the attached lq_ufo.png file, shown here:
We need to make sure that the base_object.py file in madgraph/core and the loop_diagram_generation.py file in madgraph/loop are modified as given in appendix A of the paper.
The model can be imported, once MG5aMC has been started, by typing in
> import model LQnlo_5FNS_v5_UFO-XXX --modelname
where XXX is the name of the restriction (R2 in our example).
Then, we can generate a process at the NLO-QCD accuracy
> generate p p > LQ LQ~ / <decoupled LQs> QED=0 NEW=2 QCD=2 [QCD]
Here, we exclude all leptoquarks that were decoupled in the restriction file (their name should be given explicitely). For instance, to produce a pair of $R_2^{(+2/3)}$ states, one would type
> generate p p > lq2u lq2u~ / lq1d lq1dd llq2d lq2pu q3u lq3d lq3dd QED=0 NEW=2 QCD=2 [QCD]
We exclude from the calculation the states $S_1$ (lq1d), $\tilde S_1$ (lq1dd), $\tilde R_2^{(+2/3)}$ (lq2pu), $\tilde R_2^{(-1/3)}$ (lq2d), as well as the states $S_3^{(-1/3)}$ (lq3d), $S_3^{(-4/3)}$ (lq3dd) and $S_3^{(+2/3)}$ (lq3u). The $R_2^{(+2/3)}$ (lq2u) and $R_2^{(+5/3)}$ (lq2uu) being part of the active multiplet, they are allowed to appear in the diagrams.
Then we can create an associated working directory:
> output
and start computing a cross section
> launch
Please do not forget to set MG5aMC in a fixed-order calculation mode, as NLO+PS calculations are not supported.
As a test, the restrict_R2.dat card and the above command lines should give a cross section of
The last line corresponds to the results in Table 4.
Please note that the reweighting feature of MG5_aMC@NLO to compute the scale uncertainty should only be used for NLO-QCD predictions without t-channel contributions, as the mixed coupling orders might lead to unreliable results. Therefore, when computing the scale variation for NLO-QCD results with t-channel contributions, please run the code multiple times and adapt the scale choice in the run_card.dat each time. In case you are interested in computing the 7-point scale variation with the reweighting feature, please contact us.
The tarball lq_processes_pwhgbox.tar.bz2 contains the folder LQ_processes_PWHGBOX with the pair-production process codes for all scalar leptoquark mass eigenstates as discussed in our papers. You may extract LQ_processes_PWHGBOX to any location, but please note that as mentioned under 2. Installation below, you then need to set the correct path to your POWHEG-BOX-V2 installation.
The scalar leptoquark pair-production processes provided in this package correspond to four simplified models in which only one or two types of leptoquarks are enabled:
LQ_S1: pair production of the $S_1$ final stateLQ_R2_r2-1_p53: pair production of the $R_2^{(+5/3)}$ mass eigenstateLQ_R2_r2-2_p23: pair production of the $R_2^{(+2/3)}$ mass eigenstateLQ_R2S3_r2-1_p53: pair production of the $R_2^{(+5/3)}$ mass eigenstateLQ_R2S3_r2-2_p23: pair production of the $R_2^{(+2/3)}$ mass eigenstateLQ_R2S3_s3-1_p23: pair production of the $S_3^{(+2/3)}$ mass eigenstateLQ_R2S3_s3-2_m13: pair production of the $S_3^{(-1/3)}$ mass eigenstateLQ_R2S3_s3-3_m43: pair production of the $S_3^{(-4/3)}$ mass eigenstateLQ_S1S3_s1: pair production of the $S_1$ mass eigenstateLQ_S1S3_s3-1_p23: pair production of the $S_3^{(+2/3)}$ mass eigenstateLQ_S1S3_s3-2_m13: pair production of the $S_3^{(-1/3)}$ mass eigenstateLQ_S1S3_s3-3_m43: pair production of the $S_3^{(-4/3)}$ mass eigenstateIf you would like to compute predictions for a different model containing any of the scalar leptoquark states $S_1$, $\tilde S_1$, $R_2$, $\tilde R_2$, and $S_3$, please contact us.
In order to compile and run the POWHEG-BOX processes for scalar leptoquark pair production, the following tools need to be installed on your system:
Note: The lhapdf-config script must be accessible globally (e.g. by adding to the PATH variable of your system the bin folder of the installation path of LHAPDF). The scalar leptoquark pair-production codes have been tested with POWHEG-BOX-V2 revision 3479, LHAPDF version 6.3.0, and COLLIER version 1.2.3, they might however also work with newer revisions and versions (however, the codes are not compatible with the POWHEG-BOX-RES). In case of problems, please use the versions as specified here.
Before compiling the processes, the paths to the POWHEG-BOX-V2 and COLLIER installations have to be provided. This can be done by modifying the Makefile in the corresponding process folder and changing the lines:
PWHGPATH=../.. COLLIERPATH=/path/to/COLLIER
Note: If this folder (LQ_processes_PWHGBOX) is already inside the POWHEG-BOX-V2 directory, then only the COLLIERPATH variable has to be adapted.
In a specific process folder, the executable file can be compiled by typing
make pwhg_main
or, e.g., by using 4 cores to speed up the compilation process
make -j4 pwhg_main
after which the executable pwhg_main should be created. It is not necessary to modify the core POWHEG-BOX files as detailed in appendix B of the paper, since the modified files are already provided with each process.
Note: If you are using the gcc compiler version 10 or above, it might be necessary to add the following line to the Makefile
FFLAGS=-fallow-argument-mismatch
right after line 36,
ifeq ("$(COMPILER)","gfortran")
at the top of the file.
To run a fixed-order calculation for a certain process, switch to the testrun-lhc folder of the process, adapt the powheg.input for POWHEG-BOX related settings such as, e.g.:
lhans1 and lhans2,ebeam1 and ebeam2,bornonly (bornonly 1: LO, bornonly 0: NLO),facscfact and renscfact,
as well as the param_card.dat for:
Block MASS, starting from the line with the ID 770,BLOCK MGUSER; the indices of the components are given in the comments to the right of each line (with each component being split into a real and imaginary part denoted by _real and _imag).
To run the code with the current settings, type from the testrun-lhc directory
../pwhg_main
and press enter. When the run finishes, the total cross section will be output on the terminal window in the line starting with
total (btilde+remnants) cross section in pb
together with a numerical Monte Carlo integration error (which, if necessary and in case it is too large, can be reduced by adapting the number of integration calls ncall2 and iterations itmx2 and to a lesser degree by the corresponding settings for the creation of the integration grid ncall1 and itmx1 in the powheg.input file). The results will also be written to the file pwg-stat.dat.
In the folder Cards of each process, additional parameter cards with the settings to compute the predictions for the benchmark points of tables 1-3 as in the paper are provided. You may use them by first deleting the param_card.dat in the testrun-lhc folder, then copying the parameter card file for a specific benchmark from Cards to testrun-lhc and lastly renaming the file to param_card.dat.
Note: In order to be able to reproduce the results of the paper for high leptoquark masses, the flag negativepdfs has been added to the powheg.input file, which, when set to 1, overrides the default behaviour of the POWHEG-BOX of setting negatively valued PDFs to zero. Furthermore, parton showering is not yet supported, please only use the codes to compute fixed-order NLO predictions.