8
Compiling with Pythia 8.1 (HEP event generator) on local Linux servers http://home.thep.lu.se/~torbjorn/Pythia.html http://www3.gantep.edu.tr/pythia/ http://www4.gantep.edu.tr/pythia/

Compiling with Pythia 8.1 (HEP event generator) o n local Linux servers

Embed Size (px)

DESCRIPTION

Compiling with Pythia 8.1 (HEP event generator) o n local Linux servers http://home.thep.lu.se/~torbjorn/Pythia.html http://www3.gantep.edu.tr/pythia/ http://www4.gantep.edu.tr/pythia/. Introduction - PowerPoint PPT Presentation

Citation preview

Page 1: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Compiling with Pythia 8.1(HEP event generator)on local Linux servers

http://home.thep.lu.se/~torbjorn/Pythia.html

http://www3.gantep.edu.tr/pythia/http://www4.gantep.edu.tr/pythia/

Page 2: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Introduction

PYTHIA is a program for the generation of high-energy physics events, i.e. collisons e+ e- or p p etc at high energy. It contains theory and models for a number of physics aspects, including hard and soft interactions, parton distributions, initial- and final-state parton showers, multiple interactions, fragmentation and decay.

In ATLAS, Pythia is used within the Athena framework at the first step of the Monte-Carlo chain for event generation, i.e. all the physics that occurs at the p-p interaction point and subsequent decays before interacting with the material of the detector.

Page 3: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Pythia 8.1

With the release of PYTHIA 8.100, this new C++ version series takes over from the older Fortran 77-based PYTHIA 6.4 one as the current standard.

8.1 does not yet offer a complete replacement of 6.4 and is not yet tested and tuned enough to be recommended for major production runs.

However PYTHIA 8 has already reached a certain level of maturity..

The current release is focussed towards LHC and Tevatron applications

Page 4: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Running Pythia is standalone mode

Instead of running Pythia in Athena we can run it in “stand alone” mode and so do not depend on ATLAS/CERN software or CERN infrastructure.

This presentation describes how to set up your Linux account on either gul3 or gul4 to compile your C++ programs with Pythia. Very basic information is given - enough for a successful compile – further information can be found in the documentation (and possibly in future talks).

If you are familiar with installing Pythia for a single user; basically what I have done is taken pythia8135.tgz, which is setup to install in a single user’s account, and copied the relevant files and libraries so that they are available system wide for all users. Also I replaced the make utility with a simple compile script and modified the runmains script to work accordingly. The details are archived in the appendix for future reference (or correction!).

The current version is 8.135; I intend to keep the installations up to date.

Page 5: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Setting your account to run the Pythia examples

Login to your gul3 or gul4 account and perform the following operations:

$ mkdir pythia8135 $ cd pythia8135 $ cp -a /usr/local/lib/pythia8135/examples . $ cd examples $ export PYTHIA8DATA=/usr/local/lib/pythia8135/xmldoc

then either compile and run individual examples

$ compile main01 (assumes the file main01.cc exists) $ main01.exe

or compile and run all examples

$ runmains

The compile script can be copied to any directory you use for developing Pythia programs.

External (CERN) HepMC, LHAPDF, or FastJet libraries are not included.

Page 6: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Directories and Documentation

/usr/local/lib/pythia8135/ Pythia libraries /usr/local/lib/pythia8135/include/ Pythia headers /usr/local/lib/pythia8135/xmldoc/ Pythia configurations

You can recreate the xmldoc directory in your <own file space> and

$ export PYTHIA8DATA=<own file space>/pythia8135/xmldoc

Local documentation can be found on the server where Pythia is installed:

http://www3.gantep.edu.tr/pythia/pythia8135/phpdoc/Welcome.php http://www4.gantep.edu.tr/pythia/pythia8135/phpdoc/Welcome.php

Look out for pythia8100.pdf for a brief overview.

And of course from the home page which contains more links:

http://home.thep.lu.se/~torbjorn/Pythia.html

Page 7: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

AppendixPythia installationhttp://home.thep.lu.se/~torbjorn/Pythia.htmlhttp://home.thep.lu.se/~torbjorn/pythia8/pythia8135.tgz

DocumentationStudy A Brief Introduction to PYTHIA 8.1, available in pythia8135/htmldoc/pythia8100.pdf, for an overview. pythia8135/htmldoc/Welcome.htmlpythia8135/phpdoc/Welcome.php requires phpdoc/files/ to be write accessTutorials/talks are linked from http://home.thep.lu.se/~torbjorn/Pythia.html

Installation (single user)This assumes we are NOT going to use the HepMC, LHAPDF, or FastJet libraries.Do *not* "./configure" because this will set you up for external HepMC, LHAPDF, or FastJet libraries on /afs

# tar xvfz pythia8135.tgz. # cd pythia8135/ # make

then go to examples/

Do *not* "./conifig.sh" because this will set you up for external HepMC, LHAPDF, or FastJet libraries on /afs

# make mainNN [replace NN with the example number.] # ./mainNN.exe

or "runmains" to compile and run all examples.

Page 8: Compiling with  Pythia  8.1 (HEP event generator) o n local Linux servers

Installation (system wide users)

"make" does this:

g++ -O2 -ansi -pedantic -W -Wall -Wshadow -I../include main04.cc -o ../bin/main04.exe \ -L../lib/archive -lpythia8 -llhapdfdummy

So we need to create system wide:

"/usr/local/lib/pythia8135/include" from "pythia8135/include" "/usr/local/lib/pythia8135" from "pythia8135/lib/archive" "/usr/local/lib/pythia8135/xmldoc" from "pythia8135/xmldoc"

and "/usr/local/lib/pythia8135/examples from "pythia8135/examples" with *.cc, *.cmnd, *.lhe, *.spc and the "compile" and "runmains" scripts where "compile" replaces "make".

You also need this (maybe in .login):

export PYTHIA8DATA=/usr/local/lib/pythia8135/xmldoc

and the compile becomes:g++ $src -o $exe -O2 -ansi -pedantic -W -Wall -Wshadow \ -I/usr/local/lib/pythia8135/include \ -L/usr/local/lib/pythia8135 -lpythia8 -llhapdfdummy

You should now be able to compile and run all the example programs.