PYTHIA
8.312
|
#include <MiniStringFragmentation.h>
Public Member Functions | |
MiniStringFragmentation () | |
Constructor. | |
void | init (StringFlav *flavSelPtrIn, StringPT *pTSelPtrIn, StringZ *zSelPtrIn) |
Initialize and save pointers. More... | |
bool | fragment (int iSub, ColConfig &colConfig, Event &event, bool isDiff=false, bool systemRecoil=true) |
Do the fragmentation: driver routine. More... | |
Public Member Functions inherited from PhysicsBase | |
void | initInfoPtr (Info &infoPtrIn) |
This function is called from above for physics objects used in a run. More... | |
virtual | ~PhysicsBase () |
Empty virtual destructor. | |
bool | flag (string key) const |
Shorthand to read settings values. | |
int | mode (string key) const |
double | parm (string key) const |
string | word (string key) const |
vector< bool > | fvec (string key) const |
vector< int > | mvec (string key) const |
vector< double > | pvec (string key) const |
vector< string > | wvec (string key) const |
Additional Inherited Members | |
Public Types inherited from PhysicsBase | |
enum | Status { INCOMPLETE = -1, COMPLETE = 0, CONSTRUCTOR_FAILED, INIT_FAILED, LHEF_END, LOWENERGY_FAILED, PROCESSLEVEL_FAILED, PROCESSLEVEL_USERVETO, MERGING_FAILED, PARTONLEVEL_FAILED, PARTONLEVEL_USERVETO, HADRONLEVEL_FAILED, CHECK_FAILED, OTHER_UNPHYSICAL, HEAVYION_FAILED, HADRONLEVEL_USERVETO } |
Enumerate the different status codes the event generation can have. | |
Protected Member Functions inherited from PhysicsBase | |
PhysicsBase () | |
Default constructor. | |
virtual void | onInitInfoPtr () |
virtual void | onBeginEvent () |
This function is called in the very beginning of each Pythia::next call. | |
virtual void | onEndEvent (Status) |
virtual void | onStat () |
This function is called from the Pythia::stat() call. | |
void | registerSubObject (PhysicsBase &pb) |
Register a sub object that should have its information in sync with this. | |
Protected Attributes inherited from PhysicsBase | |
Info * | infoPtr = {} |
Settings * | settingsPtr = {} |
Pointer to the settings database. | |
ParticleData * | particleDataPtr = {} |
Pointer to the particle data table. | |
Logger * | loggerPtr = {} |
Pointer to logger. | |
HadronWidths * | hadronWidthsPtr = {} |
Pointer to the hadron widths data table. | |
Rndm * | rndmPtr = {} |
Pointer to the random number generator. | |
CoupSM * | coupSMPtr = {} |
Pointers to SM and SUSY couplings. | |
CoupSUSY * | coupSUSYPtr = {} |
BeamSetup * | beamSetupPtr = {} |
BeamParticle * | beamAPtr = {} |
BeamParticle * | beamBPtr = {} |
BeamParticle * | beamPomAPtr = {} |
BeamParticle * | beamPomBPtr = {} |
BeamParticle * | beamGamAPtr = {} |
BeamParticle * | beamGamBPtr = {} |
BeamParticle * | beamVMDAPtr = {} |
BeamParticle * | beamVMDBPtr = {} |
PartonSystems * | partonSystemsPtr = {} |
Pointer to information on subcollision parton locations. | |
SigmaTotal * | sigmaTotPtr = {} |
Pointers to the total/elastic/diffractive cross sections. | |
SigmaCombined * | sigmaCmbPtr = {} |
set< PhysicsBase * > | subObjects |
UserHooksPtr | userHooksPtr |
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).
bool fragment | ( | int | iSub, |
ColConfig & | colConfig, | ||
Event & | event, | ||
bool | isDiff = false , |
||
bool | systemRecoil = true |
||
) |
Do the fragmentation: driver routine.
Check for junction topologies
First check if iParton is a junction system.
If so, then save some information and reduce the junction to a simple junction by absorbing any gluon momenta into the (di)quarks.
Then save some more information.
If all the ends are quarks, simply join two of them into a diquark and continue with the normal ministring machinery.
If a diquark is involved we need to create two hadrons.
Read in info on system to be treated.
Do not want diffractive systems to easily collapse to one particle.
First try to produce two hadrons from the system.
If this fails, then form one hadron and shuffle momentum.
If also this fails, try to produce two hadrons with lower mass.
If also this fails, try to form a hadron with lower mass.
For low-energy systems may also search for a single hadron recoiler.
Else complete failure.
void init | ( | StringFlav * | flavSelPtrIn, |
StringPT * | pTSelPtrIn, | ||
StringZ * | zSelPtrIn | ||
) |
Initialize and save pointers.
Save pointers.
Calculation and definition of hadron space-time production vertices.
Charm and bottom quark masses used for space-time offset.
Initialize the MiniStringFragmentation class proper.
Initialize the b parameter of the z spectrum, used when joining jets.