PYTHIA
8.312
|
#include <VinciaAntennaFunctions.h>
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. | |
Info * | infoPtr {} |
Pointers to Pythia8 classes. | |
ParticleData * | particleDataPtr {} |
Settings * | settingsPtr {} |
Rndm * | rndmPtr {} |
Logger * | loggerPtr {} |
DGLAP * | dglapPtr {} |
Pointer to VINCIA DGLAP class. | |
vector< double > | mDum {0, 0, 0, 0} |
Dummy vectors. | |
vector< int > | hDum {9, 9, 9, 9} |
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.
|
protected |
Wrapper for comparing to AP functions, sums over flipped invariants where appropriate.
|
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.
|
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.
|
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.
|
inlineprotected |
Massive eikonal factor, n.b. is positive definite - proportional to gram determinant.