PYTHIA  8.311
Public Member Functions | Public Attributes | Protected Attributes | List of all members
SpaceShower Class Reference

The SpaceShower class does spacelike showers. More...

#include <SpaceShower.h>

Inheritance diagram for SpaceShower:
PhysicsBase DireSpace SimpleSpaceShower VinciaISR

Public Member Functions

 SpaceShower ()=default
 Constructor.
 
virtual ~SpaceShower ()
 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 *, BeamParticle *)
 
virtual bool limitPTmax (Event &, double=0., double=0.)
 
virtual void prepare (int, Event &, bool=true)
 
virtual void update (int, Event &, bool=false)
 
virtual double pTnext (Event &, double, double, int=-1, bool=false)
 
virtual bool branch (Event &)
 
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 doRestart () const
 Flag for failure in branch(...) that will force a retry of parton level.
 
virtual bool wasGamma2qqbar ()
 Tell if latest scattering was a gamma->qqbar.
 
virtual bool getHasWeaklyRadiated ()
 Tell whether ISR has done a weak emission.
 
virtual int system () const
 Tell which system was the last processed one.
 
virtual double enhancePTmax () const
 Potential enhancement factor of pTmax scale for hardest emission.
 
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 isSpacelike (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.
 
WeightContainerweightContainerPtr {}
 

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 SpaceShower.
 
bool uVarMuSoftCorr {}
 
bool uVarMPIshowers {}
 
int nUncertaintyVariations {}
 
int nVarQCD {}
 
int uVarNflavQ {}
 
double dASmax {}
 
double cNSpTmin {}
 
double uVarpTmin2 {}
 
double overFactor {}
 
map< int, double > varG2GGmuRfac
 
map< int, double > varQ2QGmuRfac
 
map< int, double > varQ2GQmuRfac
 
map< int, double > varG2QQmuRfac
 
map< int, double > varX2XGmuRfac
 
map< int, double > varG2GGcNS
 
map< int, double > varQ2QGcNS
 
map< int, double > varQ2GQcNS
 
map< int, double > varG2QQcNS
 
map< int, double > varX2XGcNS
 
map< int, double > * varPDFplus
 
map< int, double > * varPDFminus
 
map< int, double > * varPDFmember
 
unordered_map< string, double > enhanceISR
 
- Protected Attributes inherited from PhysicsBase
InfoinfoPtr = {}
 
SettingssettingsPtr = {}
 Pointer to the settings database.
 
ParticleDataparticleDataPtr = {}
 Pointer to the particle data table.
 
LoggerloggerPtr = {}
 Pointer to logger.
 
HadronWidthshadronWidthsPtr = {}
 Pointer to the hadron widths data table.
 
RndmrndmPtr = {}
 Pointer to the random number generator.
 
CoupSMcoupSMPtr = {}
 Pointers to SM and SUSY couplings.
 
CoupSUSYcoupSUSYPtr = {}
 
BeamSetupbeamSetupPtr = {}
 
BeamParticlebeamAPtr = {}
 
BeamParticlebeamBPtr = {}
 
BeamParticlebeamPomAPtr = {}
 
BeamParticlebeamPomBPtr = {}
 
BeamParticlebeamGamAPtr = {}
 
BeamParticlebeamGamBPtr = {}
 
BeamParticlebeamVMDAPtr = {}
 
BeamParticlebeamVMDBPtr = {}
 
PartonSystemspartonSystemsPtr = {}
 Pointer to information on subcollision parton locations.
 
SigmaTotalsigmaTotPtr = {}
 Pointers to the total/elastic/diffractive cross sections.
 
SigmaCombinedsigmaCmbPtr = {}
 
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.
 

Detailed Description

The SpaceShower class does spacelike showers.

Member Function Documentation

virtual bool branch ( Event )
inlinevirtual

ME corrections and kinematics that may give failure. Usage: branch( event).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.

virtual Event clustered ( const Event ,
int  ,
int  ,
int  ,
string   
)
inlinevirtual

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 DireSpace.

virtual vector<string> getSplittingName ( const Event ,
int  ,
int  ,
int   
)
inlinevirtual

Return a string identifier of a splitting. Usage: getSplittingName( event, iRad, iEmt, iRec)

Reimplemented in DireSpace.

virtual double getSplittingProb ( const Event ,
int  ,
int  ,
int  ,
string   
)
inlinevirtual

Return the splitting probability. Usage: getSplittingProb( event, iRad, iEmt, iRec)

Reimplemented in DireSpace.

virtual map<string, double> getStateVariables ( const Event ,
int  ,
int  ,
int  ,
string   
)
inlinevirtual

Return the evolution variable(s). Important note: this map must contain the following entries

  • a key "t" for the value of the shower evolution variable;
  • a key "tRS" for the value of the shower evolution variable from which the shower would be restarted after a branching;
  • a key "scaleAS" for the argument of alpha_s used for the branching;
  • a key "scalePDF" for the argument of the PDFs used for the branching. Usage: getStateVariables( event, iRad, iEmt, iRec, name)

Reimplemented in DireSpace.

virtual void init ( BeamParticle ,
BeamParticle  
)
inlinevirtual

Initialize generation. Possibility to force re-initialization by hand. Usage: init( beamAPtr, beamBPtr).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.

void initPtrs ( MergingHooksPtr  mergingHooksPtrIn,
PartonVertexPtr  partonVertexPtrIn,
WeightContainer weightContainerPtrIn 
)
inline

Initialize various pointers. (Separated from rest of init since not virtual.)

virtual bool isSpacelike ( const Event ,
int  ,
int  ,
int  ,
string   
)
inlinevirtual

Check if attempted clustering is handled by spacelike shower. Usage: isSpacelike( event, iRad, iEmt, iRec, name)

Reimplemented in DireSpace.

virtual bool limitPTmax ( Event ,
double  = 0.,
double  = 0. 
)
inlinevirtual

Find whether to limit maximum scale of emissions, and whether to dampen. Usage: limitPTmax( event, Q2Fac, double Q2Ren).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.

virtual double noEmissionProbability ( double  ,
double  ,
double  ,
int  ,
int  ,
double  ,
double   
)
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 DireSpace, and SimpleSpaceShower.

virtual void prepare ( int  ,
Event ,
bool  = true 
)
inlinevirtual

Prepare system for evolution; identify ME. Usage: prepare( iSys, event, limitPTmax).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.

virtual double pTnext ( Event ,
double  ,
double  ,
int  = -1,
bool  = false 
)
inlinevirtual

Select next pT in downwards evolution. Usage: pTnext( event, pTbegAll, pTendAll, nRadIn, doTrialIn).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.

virtual void update ( int  ,
Event ,
bool  = false 
)
inlinevirtual

Update dipole list after each FSR emission. Usage: update( iSys, event, hasWeakRad).

Reimplemented in VinciaISR, DireSpace, and SimpleSpaceShower.


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