PYTHIA  8.303
Public Member Functions | Protected Attributes | List of all members
ShowerMEs Class Referenceabstract

The parton shower matrix-element interface. More...

#include <ShowerMEs.h>

Inheritance diagram for ShowerMEs:
ShowerMEsMadgraph ShowerMEsPlugin

Public Member Functions

 ShowerMEs ()=default
 Constructor.
 
virtual void initPtrVincia (Info *infoPtrIn, SusyLesHouches *slhaPtrIn, VinciaCommon *vinComPtrIn)
 The parton shower matrix-element interface. More...
 
virtual bool initVincia ()=0
 Initialise the MG5 model, parameters, and couplings.
 
virtual bool hasProcessVincia (vector< int > idIn, vector< int > idOut, set< int > sChan)=0
 Check if the process is available.
 
virtual double me2Vincia (vector< Particle > state, int nIn)=0
 Get the matrix element squared for a particle state.
 
virtual bool selectHelicitiesVincia (vector< Particle > &state, int nIn)
 Set helicities for a particle state. More...
 
virtual void setColourDepthVincia (int colourDepthIn)
 Set and get colour depth.
 
virtual int getColourDepthVincia ()
 
string makeLabelVincia (vector< int > &id, int nIn, bool convertToNames=false) const
 Convert a process label to a string, e.g. for printing to stdout. More...
 
virtual void setVerboseVincia (int verboseIn)
 Set verbosity level.
 
virtual bool initDire (Info *infoPtrIn, string card)=0
 Dire methods.
 
virtual bool isAvailableMEDire (vector< int > in, vector< int > out)=0
 
virtual bool isAvailableMEDire (const Pythia8::Event &event)=0
 
virtual double calcMEDire (const Pythia8::Event &event)=0
 
void fillIds (const Event &event, vector< int > &in, vector< int > &out) const
 Fill a vector of IDs. More...
 
void fillMoms (const Event &event, vector< Vec4 > &p) const
 Fill a vector of momenta.
 
void fillCols (const Event &event, vector< int > &colors) const
 Fill a vector of colors.
 
vector< vector< double > > fillMoms (const Event &event) const
 Return the momenta.
 

Protected Attributes

bool isInitPtr {false}
 Is initialized.
 
bool isInit {false}
 
map< vector< int >, double > me2hel {}
 Saved list of helicity components for last ME evaluated.
 
InfoinfoPtr {}
 Pointers to VINCIA and Pythia 8 objects.
 
CoupSMcoupSMPtr {}
 
ParticleDataparticleDataPtr {}
 
RndmrndmPtr {}
 
SettingssettingsPtr {}
 
VinciaCommonvinComPtr {}
 
SusyLesHouchesslhaPtr {}
 
int colourDepth {0}
 Colour mode (0: leading colour, 1: Vincia colour).
 
int verbose {0}
 Verbosity level.
 

Detailed Description

The parton shower matrix-element interface.

Member Function Documentation

void fillIds ( const Event event,
vector< int > &  in,
vector< int > &  out 
) const

Fill a vector of IDs.

Common methods. Fill a vector of IDs.

void initPtrVincia ( Info infoPtrIn,
SusyLesHouches slhaPtrIn,
VinciaCommon vinComPtrIn 
)
virtual

The parton shower matrix-element interface.

VINCIA methods. Set pointers to required PYTHIA 8 objects.

Set pointers to required PYTHIA 8 objects.

Reimplemented in ShowerMEsPlugin.

string makeLabelVincia ( vector< int > &  id,
int  nIn,
bool  convertToNames = false 
) const

Convert a process label to a string, e.g. for printing to stdout.

Convert process id codes (or helicity values) to string.

bool selectHelicitiesVincia ( vector< Particle > &  state,
int  nIn 
)
virtual

Set helicities for a particle state.

Use me2 to set helicities for a state. Takes a reference as input and operates on it.

Get the matrix element (automatically sums over any h=9 particles).

Did we find the ME, (me2() returns -1 if no ME found).

Check how many helicity configurations we summed over.

Random number between zero and me2sum (trivial if only one helConf).

Progressively subtract each me2hel and check when we cross zero.

Set helicity configuration.

Reimplemented in ShowerMEsPlugin.


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