PYTHIA
8.312
|
#include <RHadrons.h>
Public Member Functions | |
RHadrons () | |
Constructor. | |
bool | init () |
Initialization of R-hadron handling. More... | |
void | fragPtrs (StringFlav *flavSelPtrIn, StringZ *zSelPtrIn) |
Pointers to flavours and z sent from HadronLevel. | |
bool | produce (ColConfig &colConfig, Event &event) |
Produce R-hadrons. 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. | |
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 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.
bool givesRHadron | ( | int | id | ) |
Tell whether a given particle is supposed to form R-hadrons.
Check if a given particle can produce R-hadrons.
bool init | ( | ) |
Initialization of R-hadron handling.
Main routine to initialize R-hadron handling.
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.
Produce R-hadrons.
Produce R-hadrons by fragmenting them off from existing strings.
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.