PYTHIA  8.303
Public Member Functions | List of all members
BoseEinstein Class Reference

#include <BoseEinstein.h>

Inheritance diagram for BoseEinstein:
PhysicsBase

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
 

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
}
 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
InfoinfoPtr = {}
 
SettingssettingsPtr = {}
 Pointer to the settings database.
 
ParticleDataparticleDataPtr = {}
 Pointer to the particle data table.
 
HadronWidthshadronWidthsPtr = {}
 Pointer to the hadron widths data table.
 
RndmrndmPtr = {}
 Pointer to the random number generator.
 
CoupSMcoupSMPtr = {}
 Pointers to SM and SUSY couplings.
 
CoupSUSYcoupSUSYPtr = {}
 
BeamParticlebeamAPtr = {}
 
BeamParticlebeamBPtr = {}
 
BeamParticlebeamPomAPtr = {}
 
BeamParticlebeamPomBPtr = {}
 
BeamParticlebeamGamAPtr = {}
 
BeamParticlebeamGamBPtr = {}
 
BeamParticlebeamVMDAPtr = {}
 
BeamParticlebeamVMDBPtr = {}
 
PartonSystemspartonSystemsPtr = {}
 Pointer to information on subcollision parton locations.
 
SigmaTotalsigmaTotPtr = {}
 Pointer to the total/elastic/diffractive cross sections.
 
set< PhysicsBase * > subObjects
 
UserHooksPtr userHooksPtr
 

Detailed Description

The BoseEinstein class shifts the momenta of identical particles relative to each other, to simulate Bose-Einstein effects to some approximation.

Member Function Documentation

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.


The documentation for this class was generated from the following files: