The POWHEG BOX


⚠ Important Notice: We are migrating from SVN to Git by the end of June 2025.
Starting July 1st 2025, the SVN repository will become read-only (until further notice).
The Git repository is already available at GitLab.
Please visit this page for more details and instructions on migrating from SVN to Git.
You can find detailed information on the Git repository below.


Project

The POWHEG BOX is a general computer framework for implementing NLO calculations in shower Monte Carlo programs according to the POWHEG method. It is also a library, where previously included processes are made available to the users. It can be interfaced with all modern shower Monte Carlo programs that support the Les Houches Interface for User Generated Processes.

Index:




Available NLO+PS Processes back to Index

       POWHEG-BOX/W
       POWHEG-BOX/Z         POWHEG-BOX/Zj
        POWHEG-BOX/Wj         POWHEG-BOX/ST_sch
        POWHEG-BOX/ST_tch
        POWHEG-BOX/ST_wtch_DR
        POWHEG-BOX/ST_wtch_DS         POWHEG-BOX/gg_H         POWHEG-BOX/VBF_H
        User-Processes-V2/VBF_H
        POWHEG-BOX/Dijet         POWHEG-BOX/dijet (under ver 2)         POWHEG-BOX/hvq         POWHEG-BOX/Wp_Wp_J_J
        POWHEG-BOX/Zjj
        (Needs to be linked with an external program to compute virtual corrections. Detailed instructions are in the manual)         POWHEG-BOX/VBF_Wp_Wp
        POWHEG-BOX/gg_H_quark-mass-effects
        POWHEG-BOX/gg_H_MSSM
        POWHEG-BOX/gg_H_2HDM






Available NNLO+PS Processes using MiNNLOPS back to Index

(References of the MiNNLOPS procedure: P. Monni, P. Nason, E. Re, M. Wiesemann and G. Zanderighi, JHEP 05 (2020) 143, arXiv:1908.06987 [paper], P. Monni, E. Re and M. Wiesemann, Eur. Phys. J. C80 (2020), no.11, 1075, arXiv:2006.04133 [paper])

       POWHEG-BOX-V2/Zj    (inside ZjMiNNLO subfolder)
       POWHEG-BOX-V2/Wj    (inside WjMiNNLO subfolder)        POWHEG-BOX-V2/HJ    (inside HJMiNNLO subfolder)
        POWHEG-BOX-V2/ttJ_MiNNLO         POWHEG-BOX-RES/ZgamJ
        POWHEG-BOX-RES/WWJ         POWHEG-BOX-RES/ZZJ         POWHEG-BOX-RES/WZJ







Proper references back to Index

In addition to the specific subprocess reference, the following papers should always be cited while using the POWHEG BOX:
If you use the RES package, please quote also For a pedagogical introduction to the underlying theory, look at Next-to-Leading-Order Event Generators, P. Nason and B. Webber, 2012




Git back to Index


Please visit this page for more details and instructions on migrating from SVN to Git. After downloading the code using git clone as described below, the equivalent of the svn update command in Git is:
    
    POWHEG-BOX*/ $ git pull 
    POWHEG-BOX*/ $ git submodule update --remote
    
    
In contrast to SVN each process is now a separate Git repository, managed by the process authors under the POWHEG authors' umbrella. The POWHEG BOX code references a specific commit of the process repository as submodule, which is updated by the command above. If you want to use a specific old SVN revision in Git you can use this script, which finds you the corresponding commit hash to be used with git checkout commit_hash in both the POWHEG-BOX folder and the process folder. The available processes can be listed inside of one of the POWHEG BOX directories with the command:
    
    $ git submodule status
    
    
showing both the commit hash and the process name.


VERSION 1 back to Index


The POWHEG BOX is made available via Git, with the command:

    
    $ git clone git@gitlab.com:POWHEG-BOX/V1/POWHEG-BOX.git
    
    
User processes should be downloaded independently. They are initially empty in the subdirectories and managed as submodules. Then do:
    
    $ cd POWHEG-BOX
    $ git submodule update --remote --init "process-of-interest"
    
    
to download the process of interest.



VERSION 2 back to Index


Processes may still be developed in V2, although RES is now recommended. Older processes will be ported on V2 upon request to the respective authors.
To get the V2 version do
    
    $ git clone git@gitlab.com:POWHEG-BOX/V2/POWHEG-BOX-V2.git
    
    
User processes should be downloaded independently. They are initially empty in the subdirectories and managed as submodules.
Do:
    
    $ cd POWHEG-BOX-V2
    $ git submodule update --remote --init "process-of-interest"
    
    
to download the process of interest.







VERSION RES back to Index



The POWHEG BOX RES (Tomáš Ježo and Paolo Nason, JHEP 1512 (2015) 065, arXiv:1509.09071 [paper]) can deal with radiation in decaying resonaces. To get the RES version do

    $ git clone git@gitlab.com:POWHEG-BOX/RES/POWHEG-BOX-RES.git

User processes should be downloaded independently. They are initially empty in the subdirectories and managed as submodules.
Do:
    
    $ cd POWHEG-BOX-RES
    $ git submodule update --remote --init "process-of-interest"
    
    
to download the process of interest.




BUGS back to Index



Bug
For the git versioned POWHEG BOX, bugs are tracked on GitLab as issues here. Naturally, they are sorted by process, so you can find the issues related to a specific process in the processes repository.




SVN (legacy) back to Index


Please note that since end of June 2025, the POWHEG BOX is frozen, that is read-only, in SVN.


Download back to Index


The POWHEG BOX is made available via SVN, with the command:

    
    $ svn checkout [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX
    
    
The optional argument --revision n is used to specify which svn version to get. Omitting the argument, one gets the latest version.

Since revision 2801, the POWHEG BOX files, without user processes, have been mirrored in svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX-NoUserProcesses. Further fixes to this version will only be made in this directory. Thus, users should first download

    
    $ svn checkout svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX-NoUserProcesses POWHEG-BOX
    
    
then do
    
    $ cd POWHEG-BOX
    $ svn checkout svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX/"process-of-interest"
    
    
This is to avoid having to download all user processes when we are only interested into one.



VERSION 2 back to Index


Processes may still be developed in V2, although RES is now recommended. Older processes will be ported on V2 upon request to the respective authors.
To get the V2 version do
    
	$ svn checkout [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX-V2
    
    
User processes should be downloaded independently. This is to avoid long downloads from the svn server. They are in the subdirectories in svn://powhegbox.mib.infn.it/trunk/User-Processes-V2.
Do:
    
	$ svn list [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/User-Processes-V2
    
    
to get a list of available processes.

Do:
    
	$ svn co [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/User-Processes-V2/"process-of-interest"
    
    
to download process of interest. In order to compile it you should put it in the POWHEG-BOX-V2 directory.







VERSION RES (first release: svn revision 3239) back to Index



The POWHEG BOX RES (Tomáš Ježo and Paolo Nason, JHEP 1512 (2015) 065, arXiv:1509.09071 [paper]) can deal with radiation in decaying resonaces. To get the RES version do

    $ svn checkout [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/POWHEG-BOX-RES

User processes should be downloaded independently. This is to avoid long downloads from the svn server. They are in the subdirectories in svn://powhegbox.mib.infn.it/trunk/User-Processes-RES.
Do:
    
    $ svn list [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/User-Processes-RES
    
    

to get a list of available processes.

Do:
    
    $ svn co [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/trunk/User-Processes-RES/"process-of-interest"
    
    
to download the process of interest. In order to compile it you should put it in the POWHEG-BOX-RES directory.

You need a recent version of the gfortran compiler to compile it.
At CERN, do:
    
    source /afs/cern.ch/sw/lcg/contrib/gcc/5.2/x86_64-slc6-gcc52-opt/setup.sh 
    
    


As a first thing, go to the process directory and do:
    
    $ make check
    
    


BUGS back to Index



Bug
A list of found bugs in the V1 (trunk/POWHEG-BOX) version can be found here. Bugs are corrected immediately in the trunk version, that can be considered the most up-to-date version of the POWHEG BOX.



Bug
A list of found bugs in the V2 (trunk/POWHEG-BOX-V2) version can be found here. Bugs are corrected immediately in the V2 version, that can be considered the most up-to-date version of the POWHEG BOX V2.



Bug
A list of found bugs in the RES (trunk/POWHEG-BOX-RES) version can be found here. Bugs are corrected immediately in the RES version, that can be considered the most up-to-date version of the POWHEG BOX RES.






The previous trunk (before 29 March 2011) is made available at

$ svn checkout [--revision n] --username anonymous --password anonymous svn://powhegbox.mib.infn.it/tags/trunk00/POWHEG-BOX


Previous implementations can be found in the old web page.




Licence back to Index



The POWHEG BOX is distributed under the following license, according to the MCNet Guidelines for Event Generators Authors and Users.




Contributing Authors back to Index

Up to now, the following people have contributed to the POWHEG BOX:
Simone Alioli, Keith Hamilton, Paolo Nason, Carlo Oleari, Emanuele Re, Giulia Zanderighi, Tomáš Ježo .