herwig is hosted by Hepforge, IPPP Durham
Herwig 7.3.0
CVolver::ColourFlowCrossing Class Reference

The crossing of a physical process to a colour flow basis. More...

#include <ColourFlows.h>

Public Member Functions

 ColourFlowCrossing ()
 Default constructor.
 
template<class ParticleData >
 ColourFlowCrossing (const std::vector< ParticleData > &proc, bool signs=true)
 Construct for the given process.
 
const std::size_t & nFlows () const
 Return the number of colour flows.
 
std::size_t colourLeg (const std::size_t &i) const
 Return the external leg for the given colour.
 
std::size_t antiColourLeg (const std::size_t &i) const
 Return the external leg for the given anti-colour.
 
std::size_t colourCrossingSign (const std::size_t &i) const
 Return the crossing sign for the given colour.
 
double antiColourCrossingSign (const std::size_t &i) const
 Return the crossing sign for the given anti-colour.
 
bool coloured (const std::size_t &i) const
 Return true, if the external line carries colour.
 
std::size_t colourLine (const std::size_t &i) const
 Return the colour line for the given external leg.
 
bool antiColoured (const std::size_t &i) const
 Return true, if the external line carries anti-colour.
 
std::size_t antiColourLine (const std::size_t &i) const
 Return the anti-colour line for the given external leg.
 

Private Member Functions

void addColourCrossing (const std::size_t &leg, std::size_t &count, double sign)
 Add colour leg mapping.
 
void addAntiColourCrossing (const std::size_t &leg, std::size_t &count, double sign)
 Add anti-colour leg mapping.
 

Private Attributes

std::size_t theNFlows
 The number of colour flows.
 
std::map< std::size_t, std::size_t > theColourMap
 Map colour legs to external legs.
 
std::map< std::size_t, std::size_t > theAntiColourMap
 Map anti-colour legs to external legs.
 
std::map< std::size_t, std::size_t > theReverseColourMap
 Map external legs to colour legs.
 
std::map< std::size_t, std::size_t > theReverseAntiColourMap
 Map external legs to anti-colour legs.
 
std::map< std::size_t, double > theColourCrossingSigns
 Map colour legs to crossing signs.
 
std::map< std::size_t, double > theAntiColourCrossingSigns
 Map anti-colour legs to crossing signs.
 

Detailed Description

The crossing of a physical process to a colour flow basis.

Definition at line 245 of file ColourFlows.h.

Constructor & Destructor Documentation

◆ ColourFlowCrossing() [1/2]

CVolver::ColourFlowCrossing::ColourFlowCrossing ( )
inline

Default constructor.

Definition at line 278 of file ColourFlows.h.

◆ ColourFlowCrossing() [2/2]

template<class ParticleData >
CVolver::ColourFlowCrossing::ColourFlowCrossing ( const std::vector< ParticleData > &  proc,
bool  signs = true 
)
inlineexplicit

Construct for the given process.

Definition at line 285 of file ColourFlows.h.

References addAntiColourCrossing(), addColourCrossing(), and theNFlows.

Member Function Documentation

◆ addAntiColourCrossing()

void CVolver::ColourFlowCrossing::addAntiColourCrossing ( const std::size_t &  leg,
std::size_t &  count,
double  sign 
)
inlineprivate

Add anti-colour leg mapping.

Definition at line 264 of file ColourFlows.h.

References theAntiColourCrossingSigns, theAntiColourMap, and theReverseAntiColourMap.

Referenced by ColourFlowCrossing().

◆ addColourCrossing()

void CVolver::ColourFlowCrossing::addColourCrossing ( const std::size_t &  leg,
std::size_t &  count,
double  sign 
)
inlineprivate

Add colour leg mapping.

Definition at line 252 of file ColourFlows.h.

References theColourCrossingSigns, theColourMap, and theReverseColourMap.

Referenced by ColourFlowCrossing().

◆ antiColourCrossingSign()

double CVolver::ColourFlowCrossing::antiColourCrossingSign ( const std::size_t &  i) const
inline

Return the crossing sign for the given anti-colour.

Definition at line 353 of file ColourFlows.h.

References theAntiColourCrossingSigns.

◆ antiColoured()

bool CVolver::ColourFlowCrossing::antiColoured ( const std::size_t &  i) const
inline

Return true, if the external line carries anti-colour.

Definition at line 380 of file ColourFlows.h.

References theReverseAntiColourMap.

◆ antiColourLeg()

std::size_t CVolver::ColourFlowCrossing::antiColourLeg ( const std::size_t &  i) const
inline

Return the external leg for the given anti-colour.

Definition at line 333 of file ColourFlows.h.

References theAntiColourMap.

◆ antiColourLine()

std::size_t CVolver::ColourFlowCrossing::antiColourLine ( const std::size_t &  i) const
inline

Return the anti-colour line for the given external leg.

Definition at line 387 of file ColourFlows.h.

References theReverseAntiColourMap.

◆ colourCrossingSign()

std::size_t CVolver::ColourFlowCrossing::colourCrossingSign ( const std::size_t &  i) const
inline

Return the crossing sign for the given colour.

Definition at line 343 of file ColourFlows.h.

References theColourCrossingSigns.

◆ coloured()

bool CVolver::ColourFlowCrossing::coloured ( const std::size_t &  i) const
inline

Return true, if the external line carries colour.

Definition at line 363 of file ColourFlows.h.

References theReverseColourMap.

◆ colourLeg()

std::size_t CVolver::ColourFlowCrossing::colourLeg ( const std::size_t &  i) const
inline

Return the external leg for the given colour.

Definition at line 323 of file ColourFlows.h.

References theColourMap.

◆ colourLine()

std::size_t CVolver::ColourFlowCrossing::colourLine ( const std::size_t &  i) const
inline

Return the colour line for the given external leg.

Definition at line 370 of file ColourFlows.h.

References theReverseColourMap.

◆ nFlows()

const std::size_t & CVolver::ColourFlowCrossing::nFlows ( ) const
inline

Return the number of colour flows.

Definition at line 318 of file ColourFlows.h.

References theNFlows.

Member Data Documentation

◆ theAntiColourCrossingSigns

std::map<std::size_t,double> CVolver::ColourFlowCrossing::theAntiColourCrossingSigns
private

Map anti-colour legs to crossing signs.

Definition at line 429 of file ColourFlows.h.

Referenced by addAntiColourCrossing(), and antiColourCrossingSign().

◆ theAntiColourMap

std::map<std::size_t,std::size_t> CVolver::ColourFlowCrossing::theAntiColourMap
private

Map anti-colour legs to external legs.

Definition at line 409 of file ColourFlows.h.

Referenced by addAntiColourCrossing(), and antiColourLeg().

◆ theColourCrossingSigns

std::map<std::size_t,double> CVolver::ColourFlowCrossing::theColourCrossingSigns
private

Map colour legs to crossing signs.

Definition at line 424 of file ColourFlows.h.

Referenced by addColourCrossing(), and colourCrossingSign().

◆ theColourMap

std::map<std::size_t,std::size_t> CVolver::ColourFlowCrossing::theColourMap
private

Map colour legs to external legs.

Definition at line 404 of file ColourFlows.h.

Referenced by addColourCrossing(), and colourLeg().

◆ theNFlows

std::size_t CVolver::ColourFlowCrossing::theNFlows
private

The number of colour flows.

Definition at line 399 of file ColourFlows.h.

Referenced by ColourFlowCrossing(), and nFlows().

◆ theReverseAntiColourMap

std::map<std::size_t,std::size_t> CVolver::ColourFlowCrossing::theReverseAntiColourMap
private

Map external legs to anti-colour legs.

Definition at line 419 of file ColourFlows.h.

Referenced by addAntiColourCrossing(), antiColoured(), and antiColourLine().

◆ theReverseColourMap

std::map<std::size_t,std::size_t> CVolver::ColourFlowCrossing::theReverseColourMap
private

Map external legs to colour legs.

Definition at line 414 of file ColourFlows.h.

Referenced by addColourCrossing(), coloured(), and colourLine().


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