/usr/include/Pythia8/Pythia8/MiniStringFragmentation.h is in libpythia8-dev 8.1.86-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | // MiniStringFragmentation.h is a part of the PYTHIA event generator.
// Copyright (C) 2014 Torbjorn Sjostrand.
// PYTHIA is licenced under the GNU GPL version 2, see COPYING for details.
// Please respect the MCnet Guidelines, see GUIDELINES for details.
// This file contains the class for "cluster" fragmentation.
// MiniStringFragmentation: handle the fragmentation of low-mass systems.
#ifndef Pythia8_MiniStringFragmentation_H
#define Pythia8_MiniStringFragmentation_H
#include "Pythia8/Basics.h"
#include "Pythia8/Event.h"
#include "Pythia8/FragmentationFlavZpT.h"
#include "Pythia8/FragmentationSystems.h"
#include "Pythia8/Info.h"
#include "Pythia8/ParticleData.h"
#include "Pythia8/PythiaStdlib.h"
#include "Pythia8/Settings.h"
namespace Pythia8 {
//==========================================================================
// The MiniStringFragmentation class contains the routines to fragment
// occasional low-mass colour singlet partonic systems, where the string
// approach is not directly applicable (for technical reasons).
class MiniStringFragmentation {
public:
// Constructor.
MiniStringFragmentation() {}
// Initialize and save pointers.
void init(Info* infoPtrIn, Settings& settings,
ParticleData* particleDataPtrIn, Rndm* rndmPtrIn,
StringFlav* flavSelPtrIn, StringPT* pTSelPtrIn, StringZ* zSelPtrIn);
// Do the fragmentation: driver routine.
bool fragment( int iSub, ColConfig& colConfig, Event& event,
bool isDiff = false);
private:
// Constants: could only be changed in the code itself.
static const int NTRYDIFFRACTIVE, NTRYLASTRESORT, NTRYFLAV;
// Pointer to various information on the generation.
Info* infoPtr;
// Pointer to the particle data table.
ParticleData* particleDataPtr;
// Pointer to the random number generator.
Rndm* rndmPtr;
// Pointers to classes for flavour, pT and z generation.
StringFlav* flavSelPtr;
StringPT* pTSelPtr;
StringZ* zSelPtr;
// Initialization data, read from Settings.
int nTryMass;
double bLund;
// Data members.
bool isClosed;
double mSum, m2Sum;
Vec4 pSum;
vector<int> iParton;
FlavContainer flav1, flav2;
// Attempt to produce two particles from a cluster.
bool ministring2two( int nTry, Event& event);
// Attempt to produce one particle from a cluster.
bool ministring2one( int iSub, ColConfig& colConfig, Event& event);
};
//==========================================================================
} // end namespace Pythia8
#endif // Pythia8_MiniStringFragmentation_H
|