The AlphaQCDg is a specialization class of the MatchedEvolution class for the computation of the QCD coupling running using the analytic g functions. More...
The AlphaQCDxi is a specialization class of the MatchedEvolution class for the computation of the QCD coupling running with the possibility to vary the resummation scale through the parameter xi. More...
Structure that contains all the precomputed quantities needed to perform the DGLAP evolution, i.e. perturbative coefficients of splitting functions and matching conditions, and the heavy quark thresholds. More...
The Distribution class defines one of the basic objects of APFEL++. This is essentially the discretisation of a function that can be conveniently used for convolutions. More...
DE-Quadrature Numerical automatic integrator for improper integral using double dxponential (DE) quadrature. The code is a manipulation of the code linked here: More...
The DoubleObject class is a collection of pairs of single objects (Distributions or Operators) accompained by a multiplicative constant. This mother class provides the basic ingredients for the computation double convolutions required in SIDIS and DY. More...
The EvolBasisPlusMinus class is derives from ConvolutionMap and implements a basis in which plus (q+qbar) and minus (q-qbar) combinations are fully coupled. More...
The Grid class defines ab object that is essentially a collection of "SubGrid" objects plus other global parameters. This class also includes all the relevant methods for the manipulation of the SubGrids. More...
The InitialiseEvolution performs all the operations to initialise a DGLAP evolution using an EvolutionSetup object to retrieve the relevant information. This class also provides the necessary functions to access the evolved distributions, coupling(s), and masses. More...
The Interpolator class is a mother class for the x-space interpolationand requires the implementation of a specialized interpolation algorithm. The current version uses the joint grid object stored allocated by the Grid class. More...
The LHKnotArray structure emulates the KnotArray1F class of LHAPDF and contains the grids in x, Q2 (only a given subgrid), and one single distribution tabulated on the (x,Q) bidimensional grid. More...
The MatchedEvolution class is a template mother class for the computation of the running of a generic quantity in a VFNS. It provides the basic ingredients for the computation and the heavy-quark threshold matching of the running of a given object. More...
The MatchingBasisQCD class is a derived of ConvolutionMap specialised for the matching of distributions using the QCD evolution basis and without assuming that intrinsic heavy quark contributions vanish. More...
The MatchingOperatorBasisQCD class is a derived of ConvolutionMap specialised for the matching of the evolution of operators at the heavy-quark thresholds using the QCD evolution basis. More...
The matrix class is a simple implementation of 2d arrays based on a continous memory allocation. Elements are accessible throught the (i,j) operator. More...
The Observable class encapsulates sets of operators and sets of T-type objects for an easy computation of observables deriving from the convolution of the two. This class can contain an arbitrary number of such pairs that are separatately convoluted and joint when the obeservable is computed by means of the "Evaluate" function. More...
The Operator class defines the basic object "Operator" which is essentially the convolution on the grid bewteen an Expression object (e.g. a splitting function) and the interpolant functions. More...
Space-like O(αs2) non-singlet-minus longitudinally polarised splitting function. This is equal to the non-singlet-plus unpolarised splitting function. More...
Space-like O(αs2) non-singlet-plus longitudinally polarised splitting function. This is equal to the non-singlet-minus unpolarised splitting function. More...
Space-like O(αs3) non-singlet-minus longitudinally polarised splitting function. This is equal to the non-singlet-plus unpolarised splitting function. More...
Space-like O(αs3) non-singlet-plus longitudinally polarised splitting function. This is equal to the non-singlet-minus unpolarised splitting function. More...
The template class QGrids is a mother class for the interpolation in Q. This class also implements methods for the subgrid interpolation relevant for example in a VFNS evolution. More...
The Set template class allocates a collection of objects of type T along the ConvolutionMap and provides the methods to perform operations between different types of objects T. More...
Structure that contains all the precomputed quantities needed to compute the DIS structure functions, i.e. the perturbative coefficients of the coefficient functions for F2, FL, and xF3. More...
The template TabulateObject class is a derived of the QGrid class that tabulates on object of type T (it can be a double, a Distribution, an Operator, Set<Distribution>, a Set<Operator>) over a grid in Q, taking into account the possible presence of thresholds, and provides the method to evaluate the tabulated object at any generic value of Q. More...
Structure that contains all precomputed quantities needed to perform the TMD evolution, matching to the collinear PDFs, and computation of cross sections, i.e. the perturbative coefficients of matching functions, all anomalous dimensions, and hard functions. More...
Class for the calculation of the phase-space reduction factor due to cuts on the single outgoing lepton in Drell-Yan production. The relevant process is:
γ(q) → l+(k1) + l-(k2)
with:
kT,1(2) > pT,min,1(2)
< ηmin
η1(2) < ηmax More...
The InitializeDglapObjectsQCD function precomputes the perturbative coefficients of space-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCD function precomputes the perturbative coefficients of space-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDpol function precomputes the perturbative coefficients of space-like longitudinally polarised splitting functions and matching conditions (assumed to be equal to the unpolarised ones) and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDpol function precomputes the perturbative coefficients of space-like longitudinally polarised splitting functions and matching conditions (assumed to be equal to the unpolarised ones) and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDT function precomputes the perturbative coefficients of time-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDT function precomputes the perturbative coefficients of time-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of space-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of space-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of timelike-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of time-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
DGLAP builders
Collection of functions that build a Dglap object used to perform the DGLAP evolution of distributions or operators.
Function that sums the element of a distribution. Specifically, it sums the elements of the joint grid. Combined with the Distribution*Distribution operator, this function is useful to compute scalar products.
The InitializeGPDObjects function precomputes the perturbative coefficients of unpolarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
The InitializeGPDObjectsPol function precomputes the perturbative coefficients of polarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
The InitializeGPDObjectsTrans function precomputes the perturbative coefficients of transversely polarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
GTMD object initializers
Collection of functions that initialise GtmdObjects structure for the perturbartive evolution and matching currently available.
The InitializeGtmdObjects function precomputes the perturbative coefficients required for the evolution and matching of GTMD and store them into a 'GtmdObjects' structure.
GTMD builders
Collection of functions that build a GTMD distributions as Set<Distribution>-valued functions. These functions perform evolution and matching either separately or alltogether.
Function that prints the APFEL++ banner on screen. Effective according to the verbosity level.
Runge-Kutta (RK) ODE solvers.
These functions solve the ordinary differential equation (ODE):
dy / dt = f(t,y)
where:
dy = rk4(f(t,y))
so differentiation between lower and upper:
y += dy(t,y,dt)
U is the type of the 'y' object.
template<class U >
std::function< U(double const &, U const &, double const &)>
rk4 (std::function< U(double const &t, U const &Obj)> const &f)
Template function that implements the fourth order RK algorithm.
template<class U >
std::function< U(double const &, U const &, double const &)>
rk1 (std::function< U(double const &t, U const &Obj)> const &f)
Template function that implements the first order RK algorithm.
Fortran harmonic polylogarithms
Harmonic polylogarithms up to weight five
Parameters
x
real input argument
nw
maximum number of weights requested
Hr1
weight 1 harmonic polylogs (1D array)
Hr2
weight 2 harmonic polylogs (2D array)
Hr3
weight 3 harmonic polylogs (3D array)
Hr4
weight 4 harmonic polylogs (4D array)
Hr5
weight 5 harmonic polylogs (5D array)
n1
lower bound of the weight index requested
n2
upper bound of the weight index requested
Note
This is just a suitably formatted wrapper of the original fortran function (see src/kernel/hplog.f) to facilitate the call of the harmonic logarithms from a C++ code.
double
apf_hplog_ (double *wx, int *wnw, double *Hr1, double *Hr2, double *Hr3, double *Hr4, double *Hr5, int *wn1, int *wn2)
Special functions
Collection of special functions needed in the evaluation of some expressions.
The InitializeF2NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC F2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC FL in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC xF3 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The Initializeg4NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC g4 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializegLNCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC gL in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The Initializeg1NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC xg1 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2CCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F2(nu) + F2(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2CCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F2(nu) - F2(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLCCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( FL(nu) + FL(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLCCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( FL(nu) - FL(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3CCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F3(nu) + F3(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3CCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F3(nu) - F3(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2NCObjectsMassive precomputes the perturbative coefficients of coefficient functions for NC F2 in the massive scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsMassive precomputes the perturbative coefficients of coefficient functions for NC FL in the massive scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2NCObjectsMassiveZero precomputes the perturbative coefficients of coefficient functions for NC F2 in the massless limit of the massive scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsMassiveZero precomputes the perturbative coefficients of coefficient functions for NC FL in the massless limit of the massive scheme and store them in the 'StructureFunctionObjects' structure.
SIA structure function object initializers
Collection of functions that initialise StructureFunctionObjects structure for the different kinds of structure functions available.
Note
For now only Zero-Mass structure functions up to O(αs) are implemented.
The InitializeF2NCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC F2 for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC FL for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3NCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC xF3 for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
Structure function builders
Collection of functions that build a map of Observable objects corresponding to the different component of the structure functions.
The InitializeTmdObjects function precomputes the perturbative coefficients required for the evolution and matching of TMD PDFs and FFs and store them into a 'TmdObjects' structure.
The InitializeTmdObjectsDYResScheme function precomputes the perturbative coefficients required for the evolution and matching of TMD PDFs and FFs and store them into a 'TmdObjects' structure. This function applies a resummation-scheme transformation to produce the scheme often used in qT resummation that has H = 1.
The InitializeTmdObjectsBM function precomputes the perturbative coefficients required for the evolution and matching of the (gluon) Boer-Mulders TMD PDF and store them into a 'TmdObjects' structure. For now, quark and FF TMDs are not filled in.
The InitializeTmdObjectsSivers function precomputes the perturbative coefficients required for the evolution and matching of the quark Sivers TMD PDF and store them into a 'TmdObjects' structure. For now, gluon and FF TMDs (i.e. the Collins TMDs) are not filled in. In addition, the matching is only present up to one loop.
The InitializeTmdObjects function precomputes the perturbative coefficients required for the evolution and matching of TMD g1 PDFs and store them into a 'TmdObjects' structure.
TMD builders
Collection of functions that build a TMD distributions (both PDFs and FFs) as Set<Distribution>-valued functions. These functions perform evolution and matching either separately or alltogether. Also a function for the computation of the hard factors is provided.
Function that returns the evolution factors for gluon and quarks. As compared to "EvolutionFactors", this function isolates the double logs into gammaK. This is reminiscent of the qT-resummation typical way of computing the Sudakov form factor.
Utility function for the computation of the electroweak charges, for both time-like and space-like virtualities (Reference: https://arxiv.org/pdf/hep-ph/9711387.pdf).
Absolute value of the object T. In the case of a Distribution, this is computed like the squared mean average of the entries of the joint grid. In the case of a set of distributions, the minimum dabs over the distributions is returned.
Function that returns the matched and evolved GTMDs in b-space as functions of the final scale and rapidity.
Parameters
GtmdObj
the GTMD objects
CollGPDs
the set of collinear GPDs to be matched
Alphas
the strong coupling function
PerturbativeOrder
the perturbative order
Ci
the initial-scale variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
Set<Distribution>-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ representing the evolved GTMDs.
Function that returns the matched and evolved TMD FFs in b-space as functions of the final scale and rapidity.
Parameters
TmdObj
the TMD objects
CollFFs
the set of collinear PDFs to be matched
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial-scale variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
Set<Distribution>-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ representing the evolved TMD FFs
Function that returns the matched and evolved TMD PDFs in b-space as functions of the final scale and rapidity.
Parameters
TmdObj
the TMD objects
CollPDFs
the set of collinear PDFs to be matched
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial-scale variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
Set<Distribution>-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ representing the evolved TMD PDFs
Function that returns the perturbative part of the Collins-Soper kernel for quarks.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
double-valued function of the impact parameter bT and of the the final renormalisation scale μ. It returns perturbative part of the Collis-Soper kernel for quarks.
Absolute value of the object T. In the case of a Distribution, this is computed like the squared mean average of the entries of the joint grid. In the case of a set of distributions, the minimum dabs over the distributions is returned.
Utility function for the computation of the electroweak charges, for both time-like and space-like virtualities (Reference: https://arxiv.org/pdf/hep-ph/9711387.pdf).
Parameters
Q
absolute value the virtuality of the vector boson
virt
virtuality (true: time-like, false: space-like)
Comp
the flavour selector (default: TOTAL, i.e. all flavours are computed)
Function that returns the evolution factors for gluon and quarks.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
std::vector<double>-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ. The 0-th component contains the gluon evolution factor, the remaining 12, from 1 to 12, are all equal and represent the quark evolution factors.
Function that returns the evolution factors for gluon and quarks. As compared to "EvolutionFactors", this function isolates the double logs into gammaK. This is reminiscent of the qT-resummation typical way of computing the Sudakov form factor.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
std::vector<double>-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ. The 0-th component contains the gluon evolution factor, the remaining 12, from 1 to 12, are all equal and represent the quark evolution factors.
Function that returns the evolution factor for the gluon.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
double-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ. It returns the gluon evolution factor.
Function for the computation of the Harmonic polylogs up to weight 5.
Parameters
w
vector of weights
x
real argument
Returns
Note
C++ adaptation of the FORTRAN implementation discussed in https://arxiv.org/pdf/1809.07084.pdf. The argument x is limited to the interval [0, sqrt(2)-1].
The InitializeDglapObjectsQCD function precomputes the perturbative coefficients of space-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy-quark masses
Thresholds
the heavy quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeDglapObjectsQCD function precomputes the perturbative coefficients of space-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy-quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
Note
This function assumes that masses and thresholds coincide.
The InitializeDglapObjectsQCDpol function precomputes the perturbative coefficients of space-like longitudinally polarised splitting functions and matching conditions (assumed to be equal to the unpolarised ones) and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy-quark masses
Thresholds
the heavy quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeDglapObjectsQCDpol function precomputes the perturbative coefficients of space-like longitudinally polarised splitting functions and matching conditions (assumed to be equal to the unpolarised ones) and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy-quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
Note
This function assumes that masses and thresholds coincide.
The InitializeDglapObjectsQCDT function precomputes the perturbative coefficients of time-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy-quark masses
Thresholds
the heavy quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeDglapObjectsQCDT function precomputes the perturbative coefficients of time-like unpolarised splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy-quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
Note
This function assumes that masses and thresholds coincide.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of space-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy-quark masses
Thresholds
the heavy quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of space-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy-quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
Note
This function assumes that masses and thresholds coincide.
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of timelike-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy-quark masses
Thresholds
the heavy quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeDglapObjectsQCDtrans function precomputes the perturbative coefficients of time-like transverity splitting functions and matching conditions and store them into a 'DglapObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy-quark thresholds
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
Note
This function assumes that masses and thresholds coincide.
The InitializeF2CCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F2(nu) - F2(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2CCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F2(nu) + F2(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2NCObjectsMassive precomputes the perturbative coefficients of coefficient functions for NC F2 in the massive scheme and store them in the 'StructureFunctionObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy quark masses
IntEps
the integration accuracy (default: 10-5})
nxi
the number of nodes of the grid in ξ = Q2/M2 (default: 150)
ximin
the lower bound of the grid in ξ (default: 0.05)
ximax
the upper bound of the grid in ξ (default: 10000)
intdeg
the interpolation degree on the grid in ξ (default: 3)
lambda
the value of the parameter in the function ln(ln(ξ/Λ2)) used for the tabulation (default: 0.0005)
The InitializeF2NCObjectsMassiveZero precomputes the perturbative coefficients of coefficient functions for NC F2 in the massless limit of the massive scheme and store them in the 'StructureFunctionObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy quark masses
IntEps
the integration accuracy (default: 10-5})
nxi
the number of nodes of the grid in ξ = Q2/M2 (default: 150)
ximin
the lower bound of the grid in ξ (default: 0.05)
ximax
the upper bound of the grid in ξ (default: 10000)
intdeg
the interpolation degree on the grid in ξ (default: 3)
lambda
the value of the parameter in the function ln(ln(ξ/Λ2)) used for the tabulation (default: 0.0005)
The InitializeF2NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC F2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF2NCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC F2 for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3CCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F3(nu) - F3(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3CCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( F3(nu) + F3(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC xF3 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeF3NCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC xF3 for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLCCMinusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( FL(nu) - FL(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLCCPlusObjectsZM precomputes the perturbative coefficients of coefficient functions for combination ( FL(nu) + FL(nubar) ) / 2 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsMassive precomputes the perturbative coefficients of coefficient functions for NC FL in the massive scheme and store them in the 'StructureFunctionObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy quark masses
IntEps
the integration accuracy (default: 10-5})
nxi
the number of nodes of the grid in ξ = Q2/M2 (default: 150)
ximin
the lower bound of the grid in ξ (default: 0.05)
ximax
the upper bound of the grid in ξ (default: 10000)
intdeg
the interpolation degree on the grid in ξ (default: 3)
lambda
the value of the parameter in the function ln(ln(ξ/Λ2)) used for the tabulation (default: 0.0005)
The InitializeFLNCObjectsMassiveZero precomputes the perturbative coefficients of coefficient functions for NC FL in the massless limit of the massive scheme and store them in the 'StructureFunctionObjects' structure.
Parameters
g
the x-space grid
Masses
the heavy quark masses
IntEps
the integration accuracy (default: 10-5})
nxi
the number of nodes of the grid in ξ = Q2/M2 (default: 150)
ximin
the lower bound of the grid in ξ (default: 0.05)
ximax
the upper bound of the grid in ξ (default: 10000)
intdeg
the interpolation degree on the grid in ξ (default: 3)
lambda
the value of the parameter in the function ln(ln(ξ/Λ2)) used for the tabulation (default: 0.0005)
The InitializeFLNCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC FL in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeFLNCObjectsZMT precomputes the perturbative coefficients of coefficient functions for NC FL for SIA in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The Initializeg1NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC xg1 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The Initializeg4NCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC g4 in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializegLNCObjectsZM precomputes the perturbative coefficients of coefficient functions for NC gL in the ZM scheme and store them in the 'StructureFunctionObjects' structure.
The InitializeGPDObjects function precomputes the perturbative coefficients of unpolarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
xi
value of the skewness
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeGPDObjectsPol function precomputes the perturbative coefficients of polarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
xi
value of the skewness
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeGPDObjectsTrans function precomputes the perturbative coefficients of transversely polarised GPD evolution kernels and store them into a 'DglapObjects' structure. GPDs are assumed to be continuous over heavy-quark thresholds.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
xi
value of the skewness
OpEvol
the switch for the computation of the evolution operator (default: false)
IntEps
the integration accuracy (default: 10-5)
Returns
A map of DglapObject objects, one for each possible nf
The InitializeGtmdObjects function precomputes the perturbative coefficients required for the evolution and matching of GTMD and store them into a 'GtmdObjects' structure.
The InitializeTmdObjects function precomputes the perturbative coefficients required for the evolution and matching of TMD PDFs and FFs and store them into a 'TmdObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
IntEps
the integration accuracy (default: 10-5)
Returns
A map of TmdObject objects, one for each possible nf
The InitializeTmdObjectsBM function precomputes the perturbative coefficients required for the evolution and matching of the (gluon) Boer-Mulders TMD PDF and store them into a 'TmdObjects' structure. For now, quark and FF TMDs are not filled in.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
IntEps
the integration accuracy (default: 10-7)
Returns
A map of TmdObject objects, one for each possible nf
The InitializeTmdObjectsDYResScheme function precomputes the perturbative coefficients required for the evolution and matching of TMD PDFs and FFs and store them into a 'TmdObjects' structure. This function applies a resummation-scheme transformation to produce the scheme often used in qT resummation that has H = 1.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
IntEps
the integration accuracy (default: 10-5)
Returns
A map of TmdObject objects, one for each possible nf
The InitializeTmdObjects function precomputes the perturbative coefficients required for the evolution and matching of TMD g1 PDFs and store them into a 'TmdObjects' structure.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
IntEps
the integration accuracy (default: 10-5)
Returns
A map of TmdObject objects, one for each possible nf
The InitializeTmdObjectsSivers function precomputes the perturbative coefficients required for the evolution and matching of the quark Sivers TMD PDF and store them into a 'TmdObjects' structure. For now, gluon and FF TMDs (i.e. the Collins TMDs) are not filled in. In addition, the matching is only present up to one loop.
Parameters
g
the x-space grid
Thresholds
the heavy quark thresholds
IntEps
the integration accuracy (default: 10-7)
Returns
A map of TmdObject objects, one for each possible nf
Function that returns the evolution factor for quarks.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
double-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ. It returns the quark evolution factor.
Function that returns the evolution factor for quarks with explicit dependence on the resummation-scale parameter.
Parameters
TmdObj
the TMD objects
Alphas
the strong coupling function
PerturbativeOrder
the logarithmic perturbative order
xi
the resummation-scale parameter (default: 1)
Ci
the initial scale-variation factor (default: 1)
IntEps
the integration accuracy (default: 10-7)
Returns
double-valued function of the impact parameter bT, the final renormalisation scale μ, and the final rapidity scale ζ. It returns the quark evolution factor.
possible values of vl: LOW = No informative and warning messages are displayed. Error messages are printed anyway MEDIUM = No informative messages are displayed. Warning and error messages are printed HIGH = All messages are displayed
Function that sums the element of a distribution. Specifically, it sums the elements of the joint grid. Combined with the Distribution*Distribution operator, this function is useful to compute scalar products.