MCatNLO Step 1

From Atlas Wiki
Jump to navigation Jump to search

We will produce MCatNLO events starting from scratch. In step we will:

  • Download the MCatNLO program (and PDF libraries)
  • Build the integration-executable
  • Perform the integration

1) Prepare a working directory

First we should get ourselves organised and define your working area. At NIKHEF this would for example be

/data/atlas/users/<your_login_name>/

. There, make a working directory for our MCatNLO work:

cd your_working_area
mkdir MyMCatNLO 

This dir will be referred to as /MyMCatNLO in the next steps.

2) Download the package and the PDF libraries

Download the program itself

cd /MyMCatNLO
mkdir EXECUTABLE
cd EXECUTABLE

Go to the MCatNLO webpage and download the package (called Package231.tar.gz) and untar it.

tar -xzvf Package231.tar.gz

Download the PDF libraries In the executable directory prepare a directory where you'll store the parton density functions that come with the package.

mkdir PDF
cd PDF


Go to the MCatNLO webpage and download the pdf libraries that come with MCatNLO. (On the web-page they are listed as: grid files). Then untar it.

tar -xvf data.tar

Note: These libraries are simply ascii files and since MCatNLO is a NLO MC it requires NLO PDFs. For technical reasons we decided for the Rome production to use cteq5m1. In the PDF directory you will find the files cteq5m1.tbl. This file (then without the extension .tbl) will be input in both the integration and the event generation step.

3) Prepare the MCatNLO program for the integration step

The file MCatNLO.inputs is the main steering file. The MCatNLO program is set up so it can work in different schemes:

  • Perform the NLO computation (integration)
  • Perform the NLO computation (produce event files)
  • Perform the Monte Carlo step
  • .. of course you can also do the both at the same time

Here we will combine the first two options and produce the NLO executable that will perform the integration and produce (as a small extra), 10 events.

First get your own vesion of the steering file.

cd /MyMCatNLO
cd EXECUTABLE
cp MCatNLO.inputs MCatNLO.inputs.Integration

Then edit the file MCatNLO.inputs.Integration and change the following parameters:

IPROC = -1706
NEVENTS = 10
BASES = ON
HWPATH="<location_HERWIG_library_on_your_machine>"
HERWIGVER="<name_of_HERWIG_library>"
EXEPREFIX=TTbar

IPROC=-1706 selects the ) production process BASES=ON signals that the integration step will be performed. HWPATH and HERWIGVER need to be set so as to point to the Herwig version on your system.

At NIKHEF these values are:

:HWPATH="/data/atlas/offline/atlas/offline/external/herwig/herwig6.504/lib"<p>
:HERWIGVER="herwig6504.o"<p>

At the end of the file define you'd only like to do the NLO step

change runMCatNLO  to #runMCatNLO
change #compileNLO to compileNLO

Finally, just produce the executable:

./MCatNLO.inputs.Integration

This will produce a directory Linux with the executable called TTbarNLO_EXE_THISLIB

4)Perform the integration step

In the /MyMCatNLO/EXECUTABLE directory you now have a directory called Linux where the executable is located. When running the executable you'll be asked for a lot of input parameters. To automate this you can make a file with input variables called Integrationstep.Inputfile.

 'TTbarBase'                             ! prefix for BASES files
 'TTbarProd'                             ! prefix for event files
  14000 1 1 1 1                          ! energy, fren, ffact, frenmc, ffactmc
  -1706                                  ! -1705/1706=bb/tt
  175                                    ! M_Q
  0.32 0.32 0.5 1.5 5.0 0.75             ! quark and gluon masses
 'P'  'P'                                ! hadron types
 'CTEQ'   53                             ! PDF group and id number
  -1                                     ! Lambda_5, <0 for default
 'MS'                                    ! scheme
  10                                     ! number of events
  1                                      ! 0 => wgt=+1/-1, 1 => wgt=+w/-w
  1357911                                ! seed for rnd numbers
  0.3                                    ! zi
  10 10                                  ! itmx1,itmx2

Most parameters speak for themselves. The first two for example define the prefix of the names of the output files (integration and event files). An important one is also the PDF library you'd like to use. In our case it is the CTEQ5M1 PDF library which is defined as CTEQ set 53.

The last variables define in a sense the precision of the computation. Since we'll only do the integration step once we put them to 10 (as defined in table 3 of the MCatNLO manual).

Note: The integration step takes a long time ( ~ 2.5 hours on a 2 GHz machine). Setting itmx1 and itmx1 to 2 would reduce this with a factor 5. Nevertheless, we only have to do it once.

Note: The integration step depends on the PDF you use and should be redone for every PDF you use. An effort is underway to see if we can interface the ERROR PDFs from CTEQ and MRST in LHAPDF to be able to compute the uncertainties.

One more important thing to do before starting the integration: In your running directory you should have the PDF you are using. You could either make a link, or simply copy the PDF you require from the PDF directory (Note that the PDF loses it's ".tbl" extension).

 cp ./PDF/cteq5m1.tbl ./cteq5m1 

Then start the integration:

 ./Linux/TTbar_EXE_THISLIB < Integrationstep.Inputfile 

After some time (i.e. a stunning 2.5 hours later) .......

The results of the integration (location of spikes in phase space etc.) is contained in 3 files:

    TTbarBase_a_bs.data
    TTbarBase_b_bs.data
    TTbarBase.integrals

The 10 events that were generated for fun are also contained in 3 files: TTbarProd.events, TTbarProd_b.events and TTbarProd_a.events. For the moment ignore the. We will produce many of them later at which stage we will discuss their contant in more detail.

5)Save the important results for event generation

The results of the integration step is contained in three files that are located in the current working directory (2 files with .data extension and 1 files with .integral extension). The files contain information on the spikes in phase space that have to be taken in to account when generating events.

So, create a directory in your MyMCatNLO directory and save the files related to the integration step by copying them there:

mkdir ./../CTEQ5M1_BASICS
cp TTbarBase_a_bs.data ./../CTEQ5M1_BASICS/
cp TTbarBase_b_bs.data ./../CTEQ5M1_BASICS/
cp TTbarBase.integrals ./../CTEQ5M1_BASICS/
cp cteq5m1             ./../CTEQ5M1_BASICS/

We are now ready with the integration step. The rest is peanuts.