PYTHIA  8.303
Public Member Functions | Protected Member Functions | List of all members
AntennaFunctionIF Class Reference

#include <VinciaAntennaFunctions.h>

Inheritance diagram for AntennaFunctionIF:
AntennaFunctionIX AntennaFunction GGEmitIF GQEmitIF GXConvIF QGEmitIF QQEmitIF QXSplitIF XGSplitIF GGEmitIFsec QGEmitIFsec QGEmitRF QQEmitRF XGSplitIFsec XGSplitRF

Public Member Functions

virtual bool init ()
 Method to initialise (can be different than that of the base class). More...
 
virtual bool check ()
 Function to check singularities, positivity, etc. More...
 
virtual string vinciaName () const
 Names (remember to redefine both for each inherited class).
 
virtual int idA () const
 Parton types AB -> 0a 1j 2b with A,a initial and B,b,j final.
 
virtual int idB () const
 
virtual int id0 () const
 
virtual int id1 () const
 
virtual int id2 () const
 
virtual double zA (vector< double > invariants)
 Functions to get Altarelli-Parisi energy fractions.
 
virtual double zB (vector< double > invariants)
 
virtual bool isIIant ()
 Methods to tell II, IF, and RF apart.
 
virtual bool isRFant ()
 
virtual bool checkRes ()
 Check for resonances. More...
 
virtual void getTestMasses (vector< double > &masses)
 Create the test masses for the checkRes method.
 
virtual bool getTestInvariants (vector< double > &invariants, vector< double > masses, double yaj, double yjk)
 Create the test invariants for the checkRes method.
 
- Public Member Functions inherited from AntennaFunction
 AntennaFunction ()=default
 Constructor.
 
virtual ~AntennaFunction ()
 Destructor.
 
virtual double antFun (vector< double > invariants, vector< double > mNew, vector< int > helBef, vector< int > helNew)=0
 The antenna function [GeV^-2].
 
virtual double AltarelliParisi (vector< double > invariants, vector< double > mNew, vector< int > helBef, vector< int > helNew)=0
 
virtual string baseName () const
 Construct baseName from idA, idB, and id1.
 
virtual string humanName () const
 Wrapper that can modify baseName to more human readable form if required.
 
virtual void initMasses (vector< double > *masses)
 Method to intialise mass values.
 
virtual int initHel (vector< int > *helBef, vector< int > *helNew)
 Method to initialise internal helicity variables. More...
 
double antFun (vector< double > invariants, vector< double > masses)
 Wrapper for helicity-summed/averaged antenna function.
 
double antFun (vector< double > invariants)
 Wrapper for massless, helicity-summed/averaged antenna function.
 
double AltarelliParisi (vector< double > invariants, vector< double > masses)
 Wrapper without helicity assignments.
 
double AltarelliParisi (vector< double > invariants)
 Wrapper for massless helicity-summed/averaged DGLAP kernels.
 
void initPtr (Info *infoPtrIn, DGLAP *dglapPtrIn)
 Initialize pointers. More...
 
double chargeFac ()
 Get parameters.
 
int kineMap ()
 
double alpha ()
 
double sectorDamp ()
 
double zA (vector< double > invariants)
 Functions to get Altarelli-Parisi energy fractions from invariants.
 
double zB (vector< double > invariants)
 
string id2str (int id) const
 Auxiliary function to translate an ID code to a string. More...
 

Protected Member Functions

double massiveEikonal (double saj, double sjk, double sak, double m_a, double m_k)
 
double massiveEikonal (vector< double > invariants, vector< double > masses)
 Massive eikonal factor, given invariants and masses.
 
double gramDet (vector< double > invariants, vector< double > masses)
 Return the Gram determinant.
 
double antFunCollLimit (vector< double > invariants, vector< double > masses)
 

Additional Inherited Members

- Protected Attributes inherited from AntennaFunction
bool isInitPtr {false}
 Is initialized.
 
bool isInit {false}
 
double chargeFacSav {0.0}
 Charge factor, kinematics map, and subleading-colour treatment.
 
int kineMapSav {0}
 
int modeSLC {-1}
 
bool sectorShower {false}
 
double alphaSav {0.0}
 The alpha collinear-partitioning parameter.
 
double sectorDampSav {0.0}
 The sector-shower collinear dampening parameter.
 
double term {}
 Shorthand for commonly used variable(s).
 
double preFacFiniteTermSav {0.0}
 
double antMinSav {0.0}
 
bool isMinVar {}
 
double mi {0.0}
 Variables for internal storage of masses and helicities.
 
double mj {0.0}
 
double mk {0.0}
 
int hA {9}
 
int hB {9}
 
int hi {9}
 
int hj {9}
 
int hk {9}
 
map< int, bool > LH {{9, true}, {1, false}, {-1, true}}
 
map< int, bool > RH {{9, true}, {1, true}, {-1, false}}
 
int verbose {1}
 Verbosity level.
 
InfoinfoPtr {}
 Pointers to Pythia8 classes.
 
ParticleDataparticleDataPtr {}
 
SettingssettingsPtr {}
 
RndmrndmPtr {}
 
DGLAPdglapPtr {}
 Pointer to VINCIA DGLAP class.
 
vector< double > mDum {0, 0, 0, 0}
 Dummy vectors.
 
vector< int > hDum {9, 9, 9, 9}
 

Detailed Description

Class AntennaFunctionIF, base class for IF/RF antenna functions which implements QQEmitIF. Derived classes are for global initial-final and resonance-final antenna functions. The method isRFant() distinguishes between the two.

Member Function Documentation

double antFunCollLimit ( vector< double >  invariants,
vector< double >  masses 
)
protected

Wrapper for comparing to AP functions, sums over flipped invariants where appropriate.

bool check ( )
virtual

Function to check singularities, positivity, etc.

For check for positivity

Resonance-final.

Initial-Final: sAK + sjk = sak + saj.

Two values for sAK.

Check soft singularity against dipole factor.

Test one symmetric and one asymmetric soft phase-space point.

Test two sAK values.

Test invariants.

saj/sAK

sjk/sAK

1 + yjk = sak/sAK + yaj

Compute eikonal.

Compute antenna (without subleading-colour corrections).

Compare.

Check for collinearity (no helicity APs so far). Test invariants, for a few points along collinear axis.

Test two sAK values.

Test invariants.

saj/sAK

sjk/sAK

Compute AP kernels.

Compute antennae (without subleading colour corrections).

Check if only a singularity on one side exists (-> z = -1).

Test all helicity configurations for posivity and dead zones.

Gluon emission: do not allow external helicity flips.

Check for positivity and dead zones.

sAK^0.5 between 1 and 1000 GeV.

Pick random xA.

sjk between 0 and sAK(1-xA)/xA, saj between 0 and sAK+sjk.

Check that sxy < shhMax.

Restrict checks to ordered region; require pT2 < sAK

Compute antenna.

Check positivity (strict).

Check for dead zones away from phase-space boundary.

Verbose output.

End loop over helicities.

End loop over initi-final state.

Reimplemented from AntennaFunctionIX.

bool checkRes ( )
virtual

Check for resonances.

Get test masses.

Test soft singularity for gluon emissions. Only test asymmetric soft phase-space point (masses limit available phase space).

Get scaled invariants.

Get dimensionful invariants.

Get massive eikonal.

Get full antenna.

Check ratio.

Check collinear singularity (only check for final state parton, quasi-collinear limit not relevant for res here). Test invariants, for a few points along collinear axis.

Get scaled invariants.

Get dimensionful invariants.

Are we still in the available phase space?

Get the antenna (with sum over flipped invariants where appropriate).

Get AP function.

Require better than 1% agreement unless dominated by nonsingular.

bool init ( )
virtual

Method to initialise (can be different than that of the base class).

Class AntennaFunctionIF, base class for IF antenna functions which implements QQEmitIF.

Check whether pointers are initialized.

Subleading-colour treatment. modeSLC = 0: all gluon-emission antennae normalised to CA. modeSLC = 1: use colour factors as specified by user. modeSLC = 2: QQ gets CF, GG gets CA, QG gets interpolation.

Set kinematics map, depending on whether this is an IF or RF antenna.

Gluon emission antennae.

Gluon splitting antennae.

IF antennae.

Collinear partitioning (for global antennae).

Sector shower on/off and sectorDamp parameter.

Return OK.

Reimplemented from AntennaFunctionIX.

double massiveEikonal ( double  saj,
double  sjk,
double  sak,
double  m_a,
double  m_k 
)
inlineprotected

Massive eikonal factor, n.b. is positive definite - proportional to gram determinant.


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