10 #ifndef Pythia8_BoseEinstein_H
11 #define Pythia8_BoseEinstein_H
13 #include "Pythia8/Basics.h"
14 #include "Pythia8/Event.h"
15 #include "Pythia8/ParticleData.h"
16 #include "Pythia8/PythiaStdlib.h"
17 #include "Pythia8/Settings.h"
25 class BoseEinsteinHadron {
30 BoseEinsteinHadron() : id(0), iPos(0), p(0.), pShift(0.), pComp(0.),
32 BoseEinsteinHadron(
int idIn,
int iPosIn, Vec4 pIn,
double mIn) :
33 id(idIn), iPos(iPosIn), p(pIn), pShift(0.), pComp(0.) {m2 = mIn*mIn;}
37 Vec4 p, pShift, pComp;
55 bool init(Info* infoPtrIn, Settings& settings, ParticleData& particleData);
58 bool shiftEvent(
Event& event);
63 static const int IDHADRON[9], ITABLE[9], NCOMPSTEP;
64 static const double STEPSIZE, Q2MIN, COMPRELERR, COMPFACMAX;
67 bool doPion, doKaon, doEta;
74 int nStep[4], nStep3[4], nStored[10];
75 double QRef2, QRef3, R2Ref, R2Ref2, R2Ref3, mHadron[9],
76 mPair[4], m2Pair[4], deltaQ[4], deltaQ3[4], maxQ[4], maxQ3[4];
77 double shift[4][200], shift3[4][200];
80 vector<BoseEinsteinHadron> hadronBE;
83 void shiftPair(
int i1,
int i2,
int iHad);
91 #endif // Pythia8_BoseEinstein_H