PYTHIA
8.312
|
The TimeShower class does timelike showers. More...
#include <TimeShower.h>
Public Member Functions | |
TimeShower ()=default | |
Constructor. | |
virtual | ~TimeShower () |
Destructor. | |
void | initPtrs (MergingHooksPtr mergingHooksPtrIn, PartonVertexPtr partonVertexPtrIn, WeightContainer *weightContainerPtrIn) |
void | reassignBeamPtrs (BeamParticle *beamAPtrIn, BeamParticle *beamBPtrIn, int beamOffsetIn=0) |
New beams possible for handling of hard diffraction. (Not virtual.) | |
virtual void | init (BeamParticle *=0, BeamParticle *=0) |
virtual bool | limitPTmax (Event &, double=0., double=0.) |
virtual int | shower (int, int, Event &, double, int=0) |
virtual int | showerQED (int, int, Event &, double) |
virtual int | showerQEDafterRemnants (Event &) |
virtual void | prepareProcess (Event &, Event &, vector< int > &) |
virtual void | prepareGlobal (Event &) |
virtual void | prepare (int, Event &, bool=true) |
virtual void | rescatterUpdate (int, Event &) |
virtual void | update (int, Event &, bool=false) |
virtual double | pTnext (Event &, double, double, bool=false, bool=false) |
virtual double | pTnextResDec () |
Select next pT for interleaved resonance decays. | |
virtual bool | branch (Event &, bool=false) |
virtual bool | resonanceShower (Event &, Event &, vector< int > &, double=0.) |
virtual void | list () const |
Print dipole list; for debug mainly. | |
virtual bool | initUncertainties () |
Initialize data members for calculation of uncertainty bands. | |
virtual bool | initEnhancements () |
Initialize data members for application of enhancements. | |
virtual bool | getHasWeaklyRadiated () |
Tell whether FSR has done a weak emission. | |
virtual int | system () const |
Tell which system was the last processed one. | |
virtual double | enhancePTmax () |
Potential enhancement factor of pTmax scale for hardest emission. | |
virtual double | pTLastInShower () |
Provide the pT scale of the last branching in the above shower. | |
virtual Event | clustered (const Event &, int, int, int, string) |
Return clustering kinematics - as needed for merging. More... | |
virtual map< string, double > | getStateVariables (const Event &, int, int, int, string) |
virtual bool | isTimelike (const Event &, int, int, int, string) |
virtual vector< string > | getSplittingName (const Event &, int, int, int) |
virtual double | getSplittingProb (const Event &, int, int, int, string) |
virtual bool | allowedSplitting (const Event &, int, int) |
virtual vector< int > | getRecoilers (const Event &, int, int, string) |
virtual double | enhanceFactor (const string &name) |
virtual double | noEmissionProbability (double, double, double, int, int, double, double) |
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 |
Public Attributes | |
MergingHooksPtr | mergingHooksPtr {} |
Pointer to MergingHooks object for NLO merging. | |
WeightContainer * | weightContainerPtr {} |
Protected Attributes | |
int | beamOffset {} |
Beam location offset in event. | |
PartonVertexPtr | partonVertexPtr {} |
Pointer to assign space-time vertices during parton evolution. | |
bool | doUncertainties {} |
Store uncertainty variations relevant to TimeShower. | |
bool | uVarMuSoftCorr {} |
bool | uVarMPIshowers {} |
bool | noResVariations {} |
bool | noProcVariations {} |
int | nUncertaintyVariations {} |
int | nVarQCD {} |
int | uVarNflavQ {} |
double | dASmax {} |
double | cNSpTmin {} |
double | uVarpTmin2 {} |
double | overFactor {} |
double | overFactorEnhance {} |
map< int, double > | varG2GGmuRfac |
map< int, double > | varQ2QGmuRfac |
map< int, double > | varG2QQmuRfac |
map< int, double > | varX2XGmuRfac |
map< int, double > | varG2GGcNS |
map< int, double > | varQ2QGcNS |
map< int, double > | varG2QQcNS |
map< int, double > | varX2XGcNS |
map< int, double > * | varPDFplus |
map< int, double > * | varPDFminus |
map< int, double > * | varPDFmember |
unordered_map< string, double > | enhanceFSR |
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 |
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. | |
The TimeShower class does timelike showers.
|
inlinevirtual |
ME corrections and kinematics that may give failure. Usage: branch( event, isInterleaved).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
Return clustering kinematics - as needed for merging.
Functions to allow usage of shower kinematics, evolution variables, and splitting probabilities outside of shower. Virtual so that shower plugins can overwrite these functions. This makes it possible for another piece of the code to request these - which is very convenient for merging. Function variable names are not included to avoid compiler warnings. Please see the documentation under "Implement New Showers" for details.
Reimplemented in DireTimes.
|
inlinevirtual |
Return a string identifier of a splitting. Usage: getSplittingName( event, iRad, iEmt, iRec)
Reimplemented in DireTimes.
|
inlinevirtual |
Return the splitting probability. Usage: getSplittingProb( event, iRad, iEmt, iRec)
Reimplemented in DireTimes.
|
inlinevirtual |
Return the evolution variable(s). Important note: this map must contain the following entries
Reimplemented in DireTimes.
|
inlinevirtual |
Initialize alphaStrong and related pTmin parameters. Usage: init( beamAPtr, beamBPtr).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inline |
Initialize various pointers. (Separated from rest of init since not virtual.)
|
inlinevirtual |
Check if attempted clustering is handled by timelike shower Usage: isTimelike( event, iRad, iEmt, iRec, name)
Reimplemented in DireTimes.
|
inlinevirtual |
Find whether to limit maximum scale of emissions, and whether to dampen. Usage: limitPTmax( event, Q2Fac, double Q2Ren).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inlinevirtual |
Functions to directly extract the probability of no emission between two scales. This functions is not used in the Pythia core code, but can be used by external programs to interface with the shower directly.
Reimplemented in SimpleTimeShower.
|
inlinevirtual |
Prepare system for evolution after each new interaction; identify ME. Usage: prepare( iSys, event, limitPTmax).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inlinevirtual |
Global recoil: reset counters and store locations of outgoing partons. Usage: prepareGlobal( event).
Reimplemented in DireTimes, and SimpleTimeShower.
Prepare process-level event for shower + interleaved resonance decays. Usage: prepareProcess( process, event, iPos). iPos provides mapping from process to event entries (before showering).
Reimplemented in VinciaFSR, and SimpleTimeShower.
|
inlinevirtual |
Select next pT in downwards evolution. Usage: pTnext( event, pTbegAll, pTendAll, isFirstTrial, doTrialIn).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inlinevirtual |
Update dipole list after a multiparton interactions rescattering. Usage: rescatterUpdate( iSys, event).
Reimplemented in DireTimes, and SimpleTimeShower.
Handle a resonance decay + resonance shower (including any nested decays). Assumes decay channel and kinematics already selected and present in either the process or event record. May be called recursively for nested decays. Usage: resonanceShower( process, event, iPos, pTmerge), where iPos maps process to event entries, and pTmerge is the scale at which this system should be merged into its parent system.
Reimplemented in VinciaFSR, and SimpleTimeShower.
|
inlinevirtual |
Top-level routine to do a full time-like shower in resonance decay. Usage: shower( iBeg, iEnd, event, pTmax, nBranchMax).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inlinevirtual |
Top-level routine for QED radiation in hadronic decay to two leptons. Usage: showerQED( i1, i2, event, pTmax).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.
|
inlinevirtual |
Optional method to add QED showers after remnants have been added but before hadronisation. (Called from PartonLevel.)
Reimplemented in VinciaFSR.
|
inlinevirtual |
Update dipole list after each ISR emission. Usage: update( iSys, event, hasWeakRad).
Reimplemented in VinciaFSR, DireTimes, and SimpleTimeShower.