9 #ifndef Pythia8_RHadrons_H
10 #define Pythia8_RHadrons_H
14 #include "FragmentationFlavZpT.h"
15 #include "FragmentationSystems.h"
17 #include "ParticleData.h"
18 #include "PythiaStdlib.h"
41 { flavSelPtr = flavSelPtrIn; zSelPtr = zSelPtrIn;}
47 bool decay(
Event& event);
50 bool givesRHadron(
int id);
53 bool exist() {
return (nRHad > 0);}
56 int trace(
int i) {
for (
int iR = 0; iR < nRHad; ++iR)
57 if (iBefRHad[iR] == i || iCreRHad[iR] == i)
return iAftRHad[iR];
63 static const int IDRHADSB[14], IDRHADST[14], IDRHADGO[38], NTRYMAX;
64 static const double MSAFETY, EGBORROWMAX;
67 bool allowRH, allowRSb, allowRSt, allowRGo, allowSomeR, setMassesRH;
68 int idRSb, idRSt, idRGo;
69 double maxWidthRH, probGluinoballRH, mOffsetCloudRH, mCollapseRH,
70 diquarkSpin1RH, m0Sb, m0St, m0Go;
73 vector<int> iBefRHad, iCreRHad, iRHadron, iAftRHad;
74 vector<bool> isTriplet;
75 int nRHad, iRHad, iBef, iSys;
107 int toIdWithSquark(
int id1,
int id2);
110 pair<int,int> fromIdWithSquark(
int idRHad);
113 int toIdWithGluino(
int id1,
int id2);
116 pair<int,int> fromIdWithGluino(
int idRHad);
119 bool newKin(
Vec4 pOld1,
Vec4 pOld2,
double mNew1,
double mNew2,
120 Vec4& pNew1,
Vec4& pNew2,
bool checkMargin =
true);
128 #endif // Pythia8_RHadrons_H