Herwig
7.2.1
|
Matchbox extensions to StandardXComb. More...
#include <MatchboxXCombData.h>
Classes | |
struct | ReshuffleEquation |
Helper struct to define the reshuffling equation. More... | |
Public Member Functions | |
void | flushCaches () |
Reset all cache flags. | |
Ptr< MatchboxFactory >::tcptr | factory () const |
Get the factory. | |
Ptr< MatchboxMEBase >::tptr | matchboxME () const |
Get the matrix element; may return null. | |
Ptr< SubtractionDipole >::tptr | subtractionDipole () const |
Get the dipole; may return null. | |
const vector< int > & | crossingMap () const |
The crossing information as filled by the last call to fillCrossingMap() | |
vector< int > & | crossingMap () |
The crossing information as filled by the last call to fillCrossingMap() | |
const map< size_t, size_t > & | amplitudeToColourMap () const |
The colour crossing information as filled by the last call to fillCrossingMap() | |
map< size_t, size_t > & | amplitudeToColourMap () |
The colour crossing information as filled by the last call to fillCrossingMap() | |
const map< size_t, size_t > & | colourToAmplitudeMap () const |
The colour crossing information as filled by the last call to fillCrossingMap() | |
map< size_t, size_t > & | colourToAmplitudeMap () |
The colour crossing information as filled by the last call to fillCrossingMap() | |
double | crossingSign () const |
The crossing sign as filled by the last call to fillCrossingMap() | |
void | crossingSign (double c) |
The crossing sign as filled by the last call to fillCrossingMap() | |
Energy2 | lastRenormalizationScale () const |
The last renormalization scale. | |
void | lastRenormalizationScale (Energy2 lrs) |
The last renormalization scale. | |
const cPDVector & | amplitudePartonData () const |
The amplitude parton data. | |
cPDVector & | amplitudePartonData () |
The amplitude parton data. | |
const vector< Lorentz5Momentum > & | amplitudeMomenta () const |
The crossed momenta. | |
vector< Lorentz5Momentum > & | amplitudeMomenta () |
The crossed momenta. | |
bool | calculateTreeAmplitudes () const |
True, if the the tree level amplitudes need to be calculated. | |
const map< vector< int >, CVector > & | lastAmplitudes () const |
The amplitude values which have been contributing to the last call of prepareAmplitudes. | |
void | haveTreeAmplitudes (bool f=true) |
True, if the the tree level amplitudes need to be calculated. | |
map< vector< int >, CVector > & | lastAmplitudes () |
The amplitude values which have been contributing to the last call of prepareAmplitudes. | |
const map< vector< int >, CVector > & | lastLargeNAmplitudes () const |
The leading N amplitude values which have been contributing to the last call of prepareAmplitudes. | |
map< vector< int >, CVector > & | lastLargeNAmplitudes () |
The leading N amplitude values which have been contributing to the last call of prepareAmplitudes. | |
bool | calculateOneLoopAmplitudes () const |
True, if the the one-loop amplitudes need to be calculated. | |
const map< vector< int >, CVector > & | lastOneLoopAmplitudes () const |
The one-loop amplitude values which have been contributing to the last call of prepareAmplitudes. | |
void | haveOneLoopAmplitudes (bool f=true) |
True, if the the one-loop amplitudes need to be calculated. | |
map< vector< int >, CVector > & | lastOneLoopAmplitudes () |
The one-loop amplitude values which have been contributing to the last call of prepareAmplitudes. | |
bool | calculateTreeME2 () const |
True, if the tree-level matrix element squared needs to be calculated. | |
double | lastTreeME2 () const |
The last tree-level matrix element squared. | |
void | lastTreeME2 (double v) |
The last tree-level matrix element squared. | |
bool | calculateLargeNME2 () const |
True, if the tree-level matrix element squared needs to be calculated. | |
double | lastLargeNME2 () const |
The last tree-level matrix element squared. | |
void | lastLargeNME2 (double v) |
The last tree-level matrix element squared. | |
bool | calculateOneLoopInterference () const |
True, if the one-loop/tree-level interference. More... | |
double | lastOneLoopInterference () const |
The last one-loop/tree-level interference. | |
void | lastOneLoopInterference (double v) |
The last one-loop/tree-level interference. | |
bool | calculateOneLoopPoles () const |
True, if the one-loop/tree-level interference. More... | |
pair< double, double > | lastOneLoopPoles () const |
The last one-loop/tree-level interference. | |
void | lastOneLoopPoles (pair< double, double > v) |
The last one-loop/tree-level interference. | |
bool | calculateColourCorrelator (pair< int, int > ij) const |
True, if the indexed colour correlated matrix element needs to be calculated. | |
double | lastColourCorrelator (pair< int, int > ij) const |
The colour correlated matrix element. | |
void | lastColourCorrelator (pair< int, int > ij, double v) |
The colour correlated matrix element. | |
bool | calculateLargeNColourCorrelator (pair< int, int > ij) const |
True, if the indexed large-N colour correlated matrix element needs to be calculated. | |
double | lastLargeNColourCorrelator (pair< int, int > ij) const |
The large-N colour correlated matrix element. | |
void | lastLargeNColourCorrelator (pair< int, int > ij, double v) |
The large-N colour correlated matrix element. | |
bool | calculateColourSpinCorrelator (const pair< int, int > &ij) const |
True, if the indexed colour/spin correlated matrix element needs to be calculated. | |
Complex | lastColourSpinCorrelator (const pair< int, int > &ij) const |
The colour/spin correlated matrix element. | |
void | lastColourSpinCorrelator (const pair< int, int > &ij, Complex v) |
The colour/spin correlated matrix element. | |
bool | calculateSpinCorrelator (const pair< int, int > &ij) const |
True, if the indexed spin correlated matrix element needs to be calculated. | |
Complex | lastSpinCorrelator (const pair< int, int > &ij) const |
The spin correlated matrix element. | |
void | lastSpinCorrelator (const pair< int, int > &ij, Complex v) |
The spin correlated matrix element. | |
unsigned int | nLight () const |
Return the number of light flavours to be considered for this process. | |
void | nLight (unsigned int n) |
Set the number of light flavours to be considered for this process. | |
vector< long > | nLightJetVec () const |
Return the vector that contains the PDG ids of the light flavours, which are contained in the jet particle group. | |
void | nLightJetVec (long n) |
Set the elements of the vector that contains the PDG ids of the light flavours, which are contained in the jet particle group. | |
vector< long > | nHeavyJetVec () const |
Return the vector that contains the PDG ids of the heavy flavours, which are contained in the jet particle group. | |
void | nHeavyJetVec (long n) |
Set the elements of the vector that contains the PDG ids of the heavy flavours, which are contained in the jet particle group. | |
vector< long > | nLightProtonVec () const |
Return the vector that contains the PDG ids of the light flavours, which are contained in the proton particle group. | |
void | nLightProtonVec (long n) |
Set the elements of the vector that contains the PDG ids of the light flavours, which are contained in the proton particle group. | |
size_t | colourBasisDim () const |
Get the dimensionality of the colour basis for this process. | |
void | colourBasisDim (size_t d) |
Set the dimensionality of the colour basis for this process. | |
int | nDimPhasespace () const |
Return the number of degrees of freedom required by the phase space generator. | |
void | nDimPhasespace (int d) |
Set the number of degrees of freedom required by the phase space generator. | |
int | nDimAmplitude () const |
Return the number of degrees of freedom required by the amplitude. | |
void | nDimAmplitude (int d) |
Set the number of degrees of freedom required by the amplitude. | |
int | nDimInsertions () const |
Return the number of degrees of freedom required by the insertion operators. | |
void | nDimInsertions (int d) |
Set the number of degrees of freedom required by the insertion operators. | |
const vector< double > & | amplitudeRandomNumbers () const |
Get the additional random numbers required by the amplitude. | |
vector< double > & | amplitudeRandomNumbers () |
Access the additional random numbers required by the amplitude. | |
const vector< double > & | insertionRandomNumbers () const |
Get the additional random numbers required by the insertion operator. | |
vector< double > & | insertionRandomNumbers () |
Access the additional random numbers required by the insertion operator. | |
const map< int, double > & | diagramWeights () const |
Return the diagram weights indexed by diagram id. | |
map< int, double > & | diagramWeights () |
Access the diagram weights indexed by diagram id. | |
const set< pair< size_t, size_t > > & | singularLimits () const |
Return the singular limits. | |
set< pair< size_t, size_t > > & | singularLimits () |
Access the singular limits. | |
const set< pair< size_t, size_t > >::const_iterator & | lastSingularLimit () const |
Return the last matched singular limit. | |
set< pair< size_t, size_t > >::const_iterator & | lastSingularLimit () |
Access the last matched singular limit. | |
void | hwStandardModel (Ptr< StandardModel >::tcptr sm) |
Set the Herwig StandardModel object. | |
Ptr< StandardModel >::tcptr | hwStandardModel () const |
Get the Herwig StandardModel object. | |
double | symmetryFactor () const |
Return the symmetry factor. | |
void | symmetryFactor (double f) |
Set the symmetry factor. | |
const vector< int > & | olpId () const |
Return the OLP process ids. | |
void | olpId (int pType, int id) |
Set the OLP process ids. | |
void | olpId (const vector< int > &id) |
Set the OLP process ids. | |
double * | olpMomenta () |
Return the olp momentum vector. | |
void | fillOLPMomenta (const vector< Lorentz5Momentum > &mm, const cPDVector &mePartonData=cPDVector(), const map< long, Energy > &reshuffleMap=map< long, Energy >()) |
Fill the olp momentum vector. | |
void | reshuffle (vector< Lorentz5Momentum > &momenta, const cPDVector &mePartonData, const map< long, Energy > &reshuffleMap) const |
Perform a reshuffling to the mass shells contained in the map. | |
int | externalId () const |
Return a generic process id to communicate with external codes. | |
void | externalId (int id) |
Set a generic process id to communicate with external codes. | |
bool | initialized () const |
True if the process has been initialized. | |
void | isInitialized (bool is=true) |
True if the process has been initialized. | |
const vector< double * > & | externalMomenta () const |
Return the external momentum vector. | |
void | fillExternalMomenta (const vector< Lorentz5Momentum > &) |
Fill the external momentum vector. | |
const map< vector< int >, vector< complex< double > > > & | heljamp () const |
Caching for the external madgraph colour structures. | |
const map< vector< int >, vector< complex< double > > > & | helLNjamp () const |
Caching for the external madgraph colour structures (large N) | |
void | pushheljamp (const vector< int > &hel, const complex< double > &jamp) |
pushback the madgraph colour structures | |
void | clearheljamp () |
clear the madgraph colour structures | |
void | pushhelLNjamp (const vector< int > &hel, const complex< double > &jamp) |
pushback the madgraph colour structures (large N) | |
void | clearhelLNjamp () |
clear the madgraph colour structures (large N) | |
Standard constructors and destructors. | |
MatchboxXCombData (tMEPtr newME) | |
Standard constructor. | |
MatchboxXCombData () | |
Default constructor. | |
virtual | ~MatchboxXCombData () |
Destructor. | |
Static Public Member Functions | |
static void | Init () |
The standard Init function used to initialize the interfaces. More... | |
Private Member Functions | |
MatchboxXCombData & | operator= (const MatchboxXCombData &)=delete |
The assignment operator is private and must never be called. More... | |
Private Attributes | |
Ptr< MatchboxMEBase >::tptr | theMatchboxME |
The matrix element. | |
Ptr< SubtractionDipole >::tptr | theSubtractionDipole |
The dipole. | |
vector< int > | theCrossingMap |
The crossing information as filled by the last call to fillCrossingMap() | |
map< size_t, size_t > | theAmplitudeToColourMap |
The colour crossing information as filled by the last call to fillCrossingMap() | |
map< size_t, size_t > | theColourToAmplitudeMap |
The colour crossing information as filled by the last call to fillCrossingMap() | |
double | theCrossingSign |
The crossing sign as filled by the last call to fillCrossingMap() | |
Energy2 | theLastRenormalizationScale |
The last renormalization scale. | |
cPDVector | theAmplitudePartonData |
The amplitude parton data. | |
vector< Lorentz5Momentum > | theAmplitudeMomenta |
The ccrossed momenta. | |
bool | theCalculateTreeAmplitudes |
True, if the the tree level amplitudes need to be calculated. | |
map< vector< int >, CVector > | theLastAmplitudes |
The amplitude values which have been contributing to the last call of prepareAmplitudes. | |
map< vector< int >, CVector > | theLastLargeNAmplitudes |
The leading N amplitude values which have been contributing to the last call of prepareAmplitudes. | |
bool | theCalculateOneLoopAmplitudes |
True, if the the one-loop amplitudes need to be calculated. | |
map< vector< int >, CVector > | theLastOneLoopAmplitudes |
The one-loop amplitude values which have been contributing to the last call of prepareAmplitudes. | |
bool | theCalculateTreeME2 |
True, if the tree-level matrix element squared needs to be calculated. | |
double | theLastTreeME2 |
The last tree-level matrix element squared. | |
bool | theCalculateLargeNME2 |
True, if the tree-level matrix element squared needs to be calculated. | |
double | theLastLargeNME2 |
The last tree-level matrix element squared. | |
bool | theCalculateOneLoopInterference |
True, if the one-loop/tree-level interference. More... | |
double | theLastOneLoopInterference |
The last one-loop/tree-level interference. | |
bool | theCalculateOneLoopPoles |
True, if the one-loop/tree-level interference. More... | |
pair< double, double > | theLastOneLoopPoles |
The last one-loop/tree-level interference. | |
map< pair< int, int >, bool > | theCalculateColourCorrelators |
True, if the indexed colour correlated matrix element needs to be calculated. | |
map< pair< int, int >, double > | theColourCorrelators |
The colour correlated matrix element. | |
map< pair< int, int >, bool > | theCalculateLargeNColourCorrelators |
True, if the indexed large-N colour correlated matrix element needs to be calculated. | |
map< pair< int, int >, double > | theLargeNColourCorrelators |
The large-N colour correlated matrix element. | |
map< pair< int, int >, bool > | theCalculateColourSpinCorrelators |
True, if the indexed colour/spin correlated matrix element needs to be calculated. | |
map< pair< int, int >, Complex > | theColourSpinCorrelators |
The colour/spin correlated matrix element. | |
map< pair< int, int >, bool > | theCalculateSpinCorrelators |
True, if the indexed spin correlated matrix element needs to be calculated. | |
map< pair< int, int >, Complex > | theSpinCorrelators |
The spin correlated matrix element. | |
size_t | theColourBasisDim |
The dimensionality of the colour basis for this process. | |
int | theNDimPhasespace |
The number of degrees of freedom required by the phase space generator. | |
int | theNDimAmplitude |
The number of degrees of freedom required by the amplitude. | |
int | theNDimInsertions |
The number of degrees of freedom required by the insertion operators. | |
vector< double > | theAmplitudeRandomNumbers |
Additional random numbers required by the amplitude. | |
vector< double > | theInsertionRandomNumbers |
Additional random numbers required by the insertion operator. | |
map< int, double > | theDiagramWeights |
The diagram weights indexed by diagram id. | |
set< pair< size_t, size_t > > | theSingularLimits |
If not empty, the entries here serve to limit phasespace generation to the corresponding collinear limits, or soft limits if both pair entries are equal. | |
set< pair< size_t, size_t > >::const_iterator | theLastSingularLimit |
The last matched singular limit. | |
Ptr< StandardModel >::tcptr | theStandardModel |
The Herwig StandardModel object. | |
double | theSymmetryFactor |
The symmetry factor. | |
vector< int > | theOLPId |
The OLP process id. | |
double * | theOLPMomenta |
Return the olp momentum vector. | |
bool | filledOLPMomenta |
True, if olp momenta have been filled. | |
int | theExternalId |
A generic process id to communicate with external codes. | |
bool | theInitialized |
True if the process has been initialized. | |
vector< double * > | theExternalMomenta |
The external momenta. | |
bool | filledExternalMomenta |
True, if external momenta have been filled. | |
map< vector< int >, vector< complex< double > > > | theHelJamp |
caching of different colour structures (MadGraph-Interface) | |
map< vector< int >, vector< complex< double > > > | theLNHelJamp |
caching of different colour structures (MadGraph-Interface) | |
Static Private Attributes | |
static unsigned int | theNLight |
The number of light flavours to be considered for this process. | |
static vector< long > | theNLightJetVec |
Vector with the PDG ids of the light quark flavours, which are contained in the jet particle group. | |
static vector< long > | theNHeavyJetVec |
Vector with the PDG ids of the heavy quark flavours, which are contained in the jet particle group. | |
static vector< long > | theNLightProtonVec |
Vector with the PDG ids of the light quark flavours, which are contained in the proton particle group. | |
Functions used by the persistent I/O system. | |
void | persistentOutput (PersistentOStream &os) const |
Function used to write out object persistently. More... | |
void | persistentInput (PersistentIStream &is, int version) |
Function used to read in object persistently. More... | |
static void | putCVector (PersistentOStream &, const CVector &) |
Put a CVector to the persistent ostream. | |
static void | getCVector (PersistentIStream &, CVector &) |
Get a CVector from the persistent istream. | |
static void | putAmplitudeMap (PersistentOStream &, const map< vector< int >, CVector > &) |
Put an amplitude map to the persistent ostream. | |
static void | getAmplitudeMap (PersistentIStream &, map< vector< int >, CVector > &) |
Get an amplitude map from the persistent istream. | |
Matchbox extensions to StandardXComb.
Definition at line 77 of file MatchboxXCombData.h.
|
inline |
True, if the one-loop/tree-level interference.
be calculated.
Definition at line 298 of file MatchboxXCombData.h.
|
inline |
True, if the one-loop/tree-level interference.
be calculated.
Definition at line 316 of file MatchboxXCombData.h.
|
static |
The standard Init function used to initialize the interfaces.
Called exactly once for each class by the class description system before the main function starts or when this class is dynamically loaded.
|
privatedelete |
The assignment operator is private and must never be called.
In fact, it should not even be implemented.
void Herwig::MatchboxXCombData::persistentInput | ( | PersistentIStream & | is, |
int | version | ||
) |
Function used to read in object persistently.
is | the persistent input stream read from. |
version | the version number of the object when written. |
void Herwig::MatchboxXCombData::persistentOutput | ( | PersistentOStream & | os | ) | const |
Function used to write out object persistently.
os | the persistent output stream written to. |
|
private |
True, if the one-loop/tree-level interference.
be calculated.
Definition at line 916 of file MatchboxXCombData.h.
|
private |
True, if the one-loop/tree-level interference.
be calculated.
Definition at line 927 of file MatchboxXCombData.h.