PYTHIA
8.313
|
#include <RHadrons.h>
Public Member Functions | |
RHadrons () | |
Constructor. | |
bool | init (StringFlav *flavSelPtrIn=nullptr, StringPT *pTSelPtrIn=nullptr, StringZ *zSelPtrIn=nullptr, FragModPtr fragModPtrIn=nullptr) override |
Initialize and save pointers. More... | |
bool | fragment (int iSub, ColConfig &colConfig, Event &event, bool isDiff=false, bool systemRecoil=true) override |
Fragment the event. More... | |
bool | decay (Event &event) |
Decay R-hadrons. More... | |
bool | givesRHadron (int id) |
Tell whether a given particle is supposed to form R-hadrons. More... | |
bool | exist () |
Tell whether any R-hadrons have been formed. | |
int | trace (int i) |
Tell whether a R-hadron production+decay happened, and trace down. | |
![]() | |
FragmentationModel ()=default | |
Empty constructor. | |
virtual | ~FragmentationModel () |
Empty virtual destructor. | |
![]() | |
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 | |
![]() | |
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. | |
![]() | |
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. | |
![]() | |
StringFlav * | flavSelPtr {} |
Pointers to classes for flavour, pT and z generation. | |
StringPT * | pTSelPtr {} |
StringZ * | zSelPtr {} |
![]() | |
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 RHadrons class contains the routines for the production and decay of long-lived heavy coloured particles.
bool decay | ( | Event & | event | ) |
Decay R-hadrons.
Decay R-hadrons by resolving them into string systems and letting the heavy unstable particle decay as normal.
Loop over R-hadrons to decay.
Find flavour content of squark or gluino R-hadron.
Sharing of momentum: the squark/gluino should be restored to original mass, but error if negative-mass spectators.
Squark: new colour needed in the breakup.
Store the constituents of a squark R-hadron.
Gluino: set mass sharing between two spectators.
Two new colours needed in the breakups.
Store the constituents of a gluino R-hadron.
Mark R-hadron as decayed and update history.
Set secondary vertex for decay products, but no lifetime.
End loop over R-hadron decays, based on velocity of squark.
Done.
|
overridevirtual |
Fragment the event.
Produce R-hadrons by fragmenting them off from existing strings.
Check if first request.
Check whether some sparticles are allowed to hadronize.
Reset arrays and values.
Loop over event and identify hadronizing sparticles.
Done if no hadronizing sparticles.
Max two R-hadrons. Randomize order of processing.
Split a system with both a sparticle and a junction.
Open up a closed gluon/gluino loop.
Split up a colour singlet system that should give two R-hadrons.
Loop over R-hadrons to be formed. Find its colour singlet system.
For now don't handle systems involving junctions or loops.
Handle formation of R-hadron separately for gluino and squark.
End of loop over R-hadrons. Done.
Implements FragmentationModel.
bool givesRHadron | ( | int | id | ) |
Tell whether a given particle is supposed to form R-hadrons.
Check if a given particle can produce R-hadrons.
|
overridevirtual |
Initialize and save pointers.
Main routine to initialize R-hadron handling.
Save pointers.
Flags and parameters related to R-hadron formation and decay.
Check whether sbottom, stop or gluino should form R-hadrons.
Set nominal masses of sbottom R-mesons and R-baryons.
Set widths and lifetimes of sbottom R-hadrons.
Set nominal masses of stop R-mesons and R-baryons.
Set widths and lifetimes of stop R-hadrons.
Set nominal masses of gluino R-glueballs, R-mesons and R-baryons.
Set widths and lifetimes of gluino R-hadrons.
Done.
Implements FragmentationModel.