PYTHIA
8.312
|
#include <BoseEinstein.h>
Public Member Functions | |
BoseEinstein () | |
Constructor. | |
bool | init () |
Find settings. Precalculate table used to find momentum shifts. More... | |
bool | shiftEvent (Event &event) |
Perform Bose-Einstein corrections on an event. 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 BoseEinstein class shifts the momenta of identical particles relative to each other, to simulate Bose-Einstein effects to some approximation.
bool init | ( | ) |
Find settings. Precalculate table used to find momentum shifts.
Main flags.
Shape of Bose-Einstein enhancement/suppression.
Multiples and inverses (= "radii") of distance parameters in Q-space.
Masses of particles with Bose-Einstein implemented.
Pair pi, K, eta and eta' masses for use in tables.
Loop over the four required tables. Local variables.
Step size and number of steps in normal table.
Construct normal table recursively in Q space.
Step size and number of steps in compensation table.
Construct compensation table recursively in Q space.
Done.
bool shiftEvent | ( | Event & | event | ) |
Perform Bose-Einstein corrections on an event.
Reset list of identical particles.
Loop over all hadron species with BE effects.
Properties of current hadron species.
Loop through event record to store copies of current species.
Loop through pairs of identical particles and find shifts.
Must have at least two pairs to carry out compensation.
Shift momenta and recalculate energies.
Iterate compensation shift until convergence.
Error if no convergence, and then return without doing BE shift. However, not grave enough to kill event, so return true.
Store new particle copies with shifted momenta.
Done.