- Update to pythia8140
[u/mrichter/AliRoot.git] / PYTHIA8 / AliTPythia8.h
CommitLineData
b584e2f5 1#ifndef ALITPYTHIA8_H
2#define ALITPYTHIA8_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8
9////////////////////////////////////////////////////////////////////////////////
10// //
11// TPythia8 //
12// //
13// TPythia is an interface class to C++ version of Pythia 8.1 //
14// event generators, written by T.Sjostrand. //
15////////////////////////////////////////////////////////////////////////////////
16/*
17*------------------------------------------------------------------------------------*
18 | |
19 | *------------------------------------------------------------------------------* |
20 | | | |
21 | | | |
22 | | PPP Y Y TTTTT H H III A Welcome to the Lund Monte Carlo! | |
23 | | P P Y Y T H H I A A This is PYTHIA version 8.100 | |
24 | | PPP Y T HHHHH I AAAAA Last date of change: 20 Oct 2007 | |
25 | | P Y T H H I A A | |
26 | | P Y T H H III A A Now is 27 Oct 2007 at 18:26:53 | |
27 | | | |
28 | | Main author: Torbjorn Sjostrand; CERN/PH, CH-1211 Geneva, Switzerland, | |
29 | | and Department of Theoretical Physics, Lund University, Lund, Sweden; | |
30 | | phone: + 41 - 22 - 767 82 27; e-mail: torbjorn@thep.lu.se | |
31 | | Author: Stephen Mrenna; Computing Division, Simulations Group, | |
32 | | Fermi National Accelerator Laboratory, MS 234, Batavia, IL 60510, USA; | |
33 | | phone: + 1 - 630 - 840 - 2556; e-mail: mrenna@fnal.gov | |
34 | | Author: Peter Skands; CERN/PH, CH-1211 Geneva, Switzerland, | |
35 | | and Theoretical Physics Department, | |
36 | | Fermi National Accelerator Laboratory, MS 106, Batavia, IL 60510, USA; | |
37 | | phone: + 41 - 22 - 767 24 59; e-mail: skands@fnal.gov | |
38 | | | |
39 | | The main program reference is the 'Brief Introduction to PYTHIA 8.1', | |
40 | | T. Sjostrand, S. Mrenna and P. Skands, arXiv:0710.3820 | |
41 | | | |
42 | | The main physics reference is the 'PYTHIA 6.4 Physics and Manual', | |
43 | | T. Sjostrand, S. Mrenna and P. Skands, JHEP05 (2006) 026 [hep-ph/0603175]. | |
44 | | | |
45 | | An archive of program versions and documentation is found on the web: | |
46 | | http://www.thep.lu.se/~torbjorn/Pythia.html | |
47 | | | |
48 | | This program is released under the GNU General Public Licence version 2. | |
49 | | Please respect the MCnet Guidelines for Event Generator Authors and Users. | |
50 | | | |
51 | | Disclaimer: this program comes without any guarantees. | |
52 | | Beware of errors and use common sense when interpreting results. | |
53 | | | |
54 | | Copyright (C) 2007 Torbjorn Sjostrand | |
55 | | | |
56 | | | |
57 | *------------------------------------------------------------------------------* |
58 | |
59 *------------------------------------------------------------------------------------*
60*/
61
62#include "TGenerator.h"
63#include "Pythia.h"
64
65
66class TClonesArray;
67class TObjArray;
68
69class AliTPythia8 : public TGenerator
70{
71public:
72 AliTPythia8();
73 AliTPythia8(const char *xmlDir);
74 virtual ~AliTPythia8();
75 static AliTPythia8 *Instance();
76 Pythia8::Pythia *Pythia8() {return fPythia;}
77
78 // Interface
79 virtual void GenerateEvent();
80 virtual Int_t ImportParticles(TClonesArray *particles, Option_t *option="");
81 virtual TObjArray *ImportParticles(Option_t *option="");
82
83 // Others
84 void ReadString(const char* string) const;
85 void ReadConfigFile(const char* string) const;
86 Bool_t Initialize(Int_t idAin, Int_t idBin, Double_t ecms);
87 void PrintStatistics() const;
88 void EventListing() const;
89 Int_t GetN() const;
90
91protected:
92 static AliTPythia8 *fgInstance; //! singleton instance
93 Pythia8::Pythia *fPythia; //! The pythia8 instance
94 Int_t fNumberOfParticles; //! Number of particles
95private:
96 void AddParticlesToPdgDataBase();
97 ClassDef(AliTPythia8, 1) // Interface class of Pythia8
98};
99
100#endif
101