9 #ifndef Pythia8_RHadrons_H 10 #define Pythia8_RHadrons_H 12 #include "Pythia8/Basics.h" 13 #include "Pythia8/Event.h" 14 #include "Pythia8/FragmentationFlavZpT.h" 15 #include "Pythia8/FragmentationSystems.h" 16 #include "Pythia8/Info.h" 17 #include "Pythia8/ParticleData.h" 18 #include "Pythia8/PythiaStdlib.h" 19 #include "Pythia8/PhysicsBase.h" 20 #include "Pythia8/Settings.h" 34 RHadrons() : allowRH(), allowRSb(), allowRSt(), allowRGo(), allowSomeR(),
35 setMassesRH(), idRSb(), idRSt(), idRGo(), maxWidthRH(), probGluinoballRH(),
36 mOffsetCloudRH(), mCollapseRH(), diquarkSpin1RH(), m0Sb(), m0St(), m0Go(),
37 nRHad(0), iRHad(), iBef(), iSys(), systemPtr(), flavSelPtr(), zSelPtr() {}
44 { flavSelPtr = flavSelPtrIn; zSelPtr = zSelPtrIn;}
56 bool exist() {
return (nRHad > 0);}
60 for (
int iR = 0; iR < nRHad; ++iR)
61 if (iBefRHad[iR] == i || iCreRHad[iR] == i)
return iAftRHad[iR];
67 static const int IDRHADSB[14], IDRHADST[14], IDRHADGO[38], NTRYMAX;
68 static const double MSAFETY, EGBORROWMAX;
71 bool allowRH, allowRSb, allowRSt, allowRGo, allowSomeR, setMassesRH;
72 int idRSb, idRSt, idRGo;
73 double maxWidthRH, probGluinoballRH, mOffsetCloudRH, mCollapseRH,
74 diquarkSpin1RH, m0Sb, m0St, m0Go;
77 vector<int> iBefRHad, iCreRHad, iRHadron, iAftRHad;
78 vector<bool> isTriplet;
79 int nRHad, iRHad, iBef, iSys;
102 int toIdWithSquark(
int id1,
int id2);
105 pair<int,int> fromIdWithSquark(
int idRHad);
108 int toIdWithGluino(
int id1,
int id2);
111 pair<int,int> fromIdWithGluino(
int idRHad);
114 bool newKin(
Vec4 pOld1,
Vec4 pOld2,
double mNew1,
double mNew2,
115 Vec4& pNew1,
Vec4& pNew2,
bool checkMargin =
true);
Definition: PhysicsBase.h:27
The Event class holds all info on the generated event.
Definition: Event.h:453
bool produce(ColConfig &colConfig, Event &event)
Produce R-hadrons.
Definition: RHadrons.cc:165
bool exist()
Tell whether any R-hadrons have been formed.
Definition: RHadrons.h:56
Definition: RHadrons.h:29
The StringZ class is used to sample the fragmentation function f(z).
Definition: FragmentationFlavZpT.h:264
bool decay(Event &event)
Decay R-hadrons.
Definition: RHadrons.cc:286
bool givesRHadron(int id)
Tell whether a given particle is supposed to form R-hadrons.
Definition: RHadrons.cc:153
void fragPtrs(StringFlav *flavSelPtrIn, StringZ *zSelPtrIn)
Pointers to flavours and z sent from HadronLevel.
Definition: RHadrons.h:43
The ColConfig class describes the colour configuration of the whole event.
Definition: FragmentationSystems.h:60
int trace(int i)
Tell whether a R-hadron production+decay happened, and trace down.
Definition: RHadrons.h:59
bool init()
Initialization of R-hadron handling.
Definition: RHadrons.cc:50
RHadrons()
Constructor.
Definition: RHadrons.h:34
Header for classes to set beam momentum and interaction vertex spread.
Definition: Analysis.h:20
The StringFlav class is used to select quark and hadron flavours.
Definition: FragmentationFlavZpT.h:84
Definition: FragmentationSystems.h:31