9 #ifndef Pythia8_MiniStringFragmentation_H
10 #define Pythia8_MiniStringFragmentation_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/Settings.h"
29 class MiniStringFragmentation {
34 MiniStringFragmentation() {}
37 void init(Info* infoPtrIn, Settings& settings,
38 ParticleData* particleDataPtrIn, Rndm* rndmPtrIn,
39 StringFlav* flavSelPtrIn, StringPT* pTSelPtrIn, StringZ* zSelPtrIn);
42 bool fragment(
int iSub, ColConfig& colConfig,
Event& event,
48 static const int NTRYDIFFRACTIVE, NTRYLASTRESORT, NTRYFLAV;
54 ParticleData* particleDataPtr;
60 StringFlav* flavSelPtr;
65 bool setVertices, constantTau, smearOn;
66 int nTryMass, hadronVertex;
67 double bLund, xySmear, kappaVtx, mc, mb;
74 FlavContainer flav1, flav2;
77 vector<StringVertex> ministringVertices;
80 bool ministring2two(
int nTry,
Event& event);
83 bool ministring2one(
int iSub, ColConfig& colConfig,
Event& event);
86 void setHadronVertices(
Event& event, StringRegion& region,
87 int iFirst,
int iLast);
95 #endif // Pythia8_MiniStringFragmentation_H