PYTHIA  8.311
Public Member Functions | List of all members
ColourTracing Class Reference

ColourTracing class. It is used to trace colours within the event record. More...

#include <ColourTracing.h>

Public Member Functions

 ColourTracing ()
 Constructor.
 
void init (Logger *loggerPtrIn)
 
bool setupColList (Event &event)
 Setup the colour lists. More...
 
bool traceFromAcol (int indxCol, Event &event, int iJun, int iCol, vector< int > &iParton)
 Trace a colour line, from a colour, from an anticolour, or in loop. More...
 
bool traceFromCol (int indxCol, Event &event, int iJun, int iCol, vector< int > &iParton)
 Trace a colour line, from a colour to an anticolour. More...
 
bool traceInLoop (Event &event, vector< int > &iParton)
 Trace a colour loop, from a colour back to the anticolour of the same. More...
 
bool finished ()
 
bool colFinished ()
 
vector< vector< int > > getJunChains (Event &event)
 Get junction chains where the junctions are directly connected. More...
 

Detailed Description

ColourTracing class. It is used to trace colours within the event record.

Member Function Documentation

vector< vector< int > > getJunChains ( Event event)

Get junction chains where the junctions are directly connected.

Get junction chains, where the junctions are directly connected.

Make list of junction chains and help array.

Loop over junctions.

Keep looping over connected junctions until no new junctions are found.

bool setupColList ( Event event)

Setup the colour lists.

The ColourTracing class.

Find all final coloured and anticoloured partons.

Colour sextets have additional tags (store with negative numbers).

Return true if zero particles were found.

bool traceFromAcol ( int  indxCol,
Event event,
int  iJun,
int  iCol,
vector< int > &  iParton 
)

Trace a colour line, from a colour, from an anticolour, or in loop.

Trace a colour line, from an anticolour to a colour.

Junction kind, if any.

Begin to look for a matching colour.

First check list of matching colour ends. Also check for sextets (negative anticolour tag = extra colour tag).

Then check list of intermediate gluons.

Update to new colour. Remove gluon.

Check opposite-sign junction colours.

In a pinch, check list of opposite-sign junction end colours. Store in iParton list as -(10 + 10 * iAntiJun + iLeg). This is for =J-g-...-g-J= connections; where instead of running both ways, the second time we just store the two junctions.

Keep on tracing via gluons until reached end of leg.

Something went wrong in colour tracing.

Done.

bool traceFromCol ( int  indxCol,
Event event,
int  iJun,
int  iCol,
vector< int > &  iParton 
)

Trace a colour line, from a colour to an anticolour.

If none specified, select next colour tag from back of list.

Negative index implies extra (sextet) colour tag in anticolour slot.

Junction kind, if any.

Begin to look for a matching anticolour.

First check list of matching anticolour ends. Also check for sextets (negative colour tag = extra anticolour tag).

Then check list of intermediate gluons.

Update to new colour. Remove gluon.

Check opposite-sign junction colours.

In a pinch, check list of opposite-sign junction end colours. Store in iParton list as -(10 + 10 * iAntiJun + iAntiLeg). This is for J-g-...-g-J connections; where instead of running both ways, the second time we just store the two junctions.

Keep on tracing via gluons until reached end of leg.

Something went wrong in colour tracing.

Done.

bool traceInLoop ( Event event,
vector< int > &  iParton 
)

Trace a colour loop, from a colour back to the anticolour of the same.

Add starting gluon.

Move around until back where begun.

Check list of gluons.

Something went wrong in colour tracing.

Done.


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