Skip to content

hep-mirrors/thepeg

Repository files navigation

Toolkit for High Energy Physics Event Generation - ThePEG

To compile and install ThePEG follow these steps:

1: run the configure script. To override the defaults: set eg. the
   following environment variables

	CXX: (default g++) your favorite C++11 compiler. Must be
	     standard compliant. g++ version 4.8 or later will do
	     nicely.

   To overwrite the default install prefix (/usr/local) use the
   --prefix=/custom/install/path argument to configure.

   If the LHAPDF library is installed under /usr/local/lib it will be
   used. If it is installed elsewhere, use
   --with-lhapdf=/Path/to/library to specify where.

   If a standard Sun java compiler is available a java GUI called 'thepeg'
   will be installed. To avoid this use --without-javagui.

   'configure --help' will list other environment variables and options which
   will influence the installation.

2: Do 'make check'.
   this will compile the main ThePEG library and two programs in
   the src directory. These will then be run as follows
                ./setupThePEG SimpleLEP.in
   to setup an event generator which is dumped in SimpleLEP.run
	        ./runThePEG SimpleLEP.run
   to run the event generator. Some output will be written in
	SimpleLEP.out, SimpleLEP.log and SimpleLEP.tex.

3: Install ThePEG with 'make install'. This will put all the shared
   libraries in the lib/ThePEG directory under the install path. The
   default repository file 'ThePEGDefaults.rpo' will also be placed
   there. The executables 'setupThePEG' and 'runThePEG' are installed
   in the bin directory under the install path. In the bin directory
   is also installed a java-based setup program called 'thepeg' which
   enables you to setup and run event generators using a GUI. All
   header files will be installed in the 'include/ThePEG' directory
   under the install path, and some sample setup files and a sample
   makefile is installed in the 'share/ThePEG' directory together with
   an emacs lisp file 'ThePEG.el' with some functions for creating
   skeletons of new ThePEG classes.

Note that ThePEG is a framework for implementing event generator
models, and by itself it does not contain enough physics models to
generate realistic events for any collider. Instead programs such as
Pythia7 or Herwig++ should be installed to allow for proper event
generation. 

There is currently no up-to-date manual avaliable. However, the
general structure is described in "PYTHIA version 7-0.0 - a
proof-of-concept version" Comput. Phys. Commun. 134 (2001) 365. (see
also http://www.thep.lu.se/Pythia7/Doc/Proof/). This describes the
Pythia7 program before it was broken up into the basic event generator
platform - ThePEG - and the Pythia-specific parts in Pythia7. 

A brief description of ThePEG is also included in "Herwig++ Physics and Manual"
[arXiv:0803.0883]. In addition, there is Doxygen-generated documentation of the
classes in http://projects.hepforge.org/thepeg/doxygen
The doxygen documentation can also be generated locally by 'make html', in
which it will end up in the Doc/refman-html directory. A subsequent
'make install' will place the documentation in
share/ThePEG/Doc/refman-html.

Briefly, the running of ThePEG is divided into two steps:

1: The program 'setupThePEG' is used to set up an event generator and
   saving it to a file. Here you collect together the components
   needed for a specific event generation run, and parameters and
   switches of the components can be set to preferred values. See the
   file SimpleLEP.in in the src subdirectory for an example.

2: The program 'runThePEG' is used to run the generator saved to a
   file. 

===========================================================================

    Toolkit for High Energy Physics Event Generation - ThePEG
    Copyright (C) 1999-2017 Leif Lonnblad

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License version 3 as 
    published by the Free Software Foundation.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.