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

#include <VinciaAntennaFunctions.h>

Inheritance diagram for AntennaFunctionIF:
AntennaFunctionIX AntennaFunction AntGGEmitIF AntGQEmitIF AntGXConvIF AntQGEmitIF AntQQEmitIF AntQXConvIF AntXGSplitIF AntGGEmitIFsec AntQGEmitIFsec AntQGEmitRF AntQQEmitRF AntXGSplitIFsec AntXGSplitRF AntQGEmitRFsec AntXGSplitRFsec

Public Member Functions

virtual bool init () override
 Method to initialise (can be different than that of the base class). More...
 
virtual bool check () override
 Function to check singularities, positivity, etc. More...
 
virtual string vinciaName () const override
 Names (remember to redefine both for each inherited class).
 
virtual int idA () const override
 Parton types AB -> 0a 1j 2b with A,a initial and B,b,j final.
 
virtual int idB () const override
 
virtual int id0 () const override
 
virtual int id1 () const override
 
virtual int id2 () const override
 
virtual double zA (vector< double > invariants) override
 Functions to get Altarelli-Parisi energy fractions.
 
virtual double zB (vector< double > invariants) override
 
virtual bool isIIant () override
 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 {}
 
LoggerloggerPtr {}
 
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 AntQQEmitIF. 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 ( )
overridevirtual

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.

Test all helicity configurations for collinearity and posivity.

Gluon emission.

Massless: quark helicities must be conserved.

For gluons, sector terms can give helicity flips

Do not allow helicity flips on both sides simultaneously

Gluon conversion.

Helicity of recoiler must be conserved.

Massless: quark helicity must be conserved.

Gluon splitting in the final state.

Helicity of recoiler must be conserved.

Massless: quark helicity must be conserved.

Gluon splitting in the initial state.

Helicity of recoiler must be conserved.

Massless: quark helicity must be conserved.

Check collinear singularities against massless AP kernels.

Test two sAK values.

Test invariants for a few points along collinear axis.

saj/sAK

sjk/sAK

Compute AP kernels.

Are there any limits to check?

Compute antennae (without subleading colour corrections).

For global antennae, add "swapped" term to represent neighbour.

Restore subleading-colour level.

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

Require better than 5% agreement unless dominated by non-singular.

Require better than 5% agreement unless dominated by non-singular.

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 ( )
overridevirtual

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

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

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.

Sector shower on/off and sectorDamp parameter.

Collinear partitioning (for global antennae).

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: