using option '-treename HLTesdTree' for EsdCollector, adding default parameter for...
[u/mrichter/AliRoot.git] / PYTHIA8 / pythia8130 / include / BeamRemnants.h
CommitLineData
5ad4eb21 1// BeamRemnants.h is a part of the PYTHIA event generator.
2// Copyright (C) 2008 Torbjorn Sjostrand.
3// PYTHIA is licenced under the GNU GPL version 2, see COPYING for details.
4// Please respect the MCnet Guidelines, see GUIDELINES for details.
5
6// Header file for beam-remnants handling.
7// BeamRemnants: matches the remnants between the two beams.
8
9#ifndef Pythia8_BeamRemnants_H
10#define Pythia8_BeamRemnants_H
11
12#include "Basics.h"
13#include "BeamParticle.h"
14#include "Event.h"
15#include "FragmentationFlavZpT.h"
16#include "Info.h"
17#include "ParticleData.h"
18#include "PartonDistributions.h"
19#include "PythiaStdlib.h"
20#include "Settings.h"
21
22namespace Pythia8 {
23
24//**************************************************************************
25
26// This class matches the kinematics of the hard-scattering subsystems
27// (with primordial kT added) to that of the two beam remnants.
28
29class BeamRemnants {
30
31public:
32
33 // Constructor.
34 BeamRemnants() { }
35
36 // Initialization.
37 bool init( Info* infoPtrIn, BeamParticle* beamAPtrIn,
38 BeamParticle* beamBPtrIn);
39
40 // Select the flavours/kinematics/colours of the two beam remnants.
41 bool add( Event& event);
42
43private:
44
45 // Constants: could only be changed in the code itself.
46 static const int NTRYCOLMATCH, NTRYKINMATCH;
47
48 // Initialization data, read from Settings.
49 bool doPrimordialKT, doReconnect;
50 double primordialKTsoft, primordialKThard, primordialKTremnant,
51 halfScaleForKT, halfMassForKT, reconnectRange,
52 pT0Ref, ecmRef, ecmPow;
53
54 // Information set for events.
55 int nSys, oldSize;
56 double eCM, sCM, pT0, pT20Rec;
57
58 // Colour collapses (when one colour is mapped onto another).
59 vector<int> colFrom, colTo;
60
61 // Pointer to various information on the generation.
62 Info* infoPtr;
63
64 // Pointers to the two incoming beams.
65 BeamParticle* beamAPtr;
66 BeamParticle* beamBPtr;
67
68 // Do the kinematics of the collision subsystems and two beam remnants.
69 bool setKinematics( Event& event);
70
71 // Allow colour reconnections.
72 bool reconnectColours( Event& event);
73
74 // Check that colours are consistent.
75 bool checkColours( Event& event);
76
77};
78
79//**************************************************************************
80
81} // end namespace Pythia8
82
83#endif // Pythia8_BeamRemnants_H