tmdlib is hosted by Hepforge, IPPP Durham
TMDlib  1.0.X
UnintegratedGluon Class Reference

#include <TMDlib_UnintegratedGluonKS.h>

Public Member Functions

 UnintegratedGluon ()
 
 UnintegratedGluon (string filename, gsl_interp_type int_type)
 
vector< int > grid_size () const
 return size of the grid in each dimension More...
 
vector< pair< double, double > > grid_limits () const
 
double xg (double logx, double logkt2, double logmu2=0.0)
 
virtual ~UnintegratedGluon ()
 

Detailed Description

Computing unintegrated gluon by interpolating an input grid

The form of the 2d grid is assumed to be:

 # logx   logkt2    xg
    i1     j1      val1
    ...    ...     ...
    i1     jn      valn
    i2     j1      valn+1
    ...    ...     ...
    i2     jn      valn*m     

and both variables have to grow monotonically.

IMPORTANT: normalization of gluon

In case of problems in gluon evaluation a corresponding error is written to the unintegratedgluon.err file which is always produced by this class. The possible error codes are

  • Err001 : Evaluation outside the domain of the grid.
  • Err002 : Negative value of the gluon.

In each of the above cases the return value of the xg(double logx, double logkt2) function is set to zero.

Todo:
  • add description of normalization, perhaps remove functions _norm_f/F

Constructor & Destructor Documentation

◆ UnintegratedGluon() [1/2]

UnintegratedGluon::UnintegratedGluon ( )

base constructor taking the grid at input

Parameters
filenamename of the input grid file
int_typetype of interpolation; it takes gsl defined values *gsl_interp_linear or *gsl_interp_cspline

◆ UnintegratedGluon() [2/2]

UnintegratedGluon::UnintegratedGluon ( string  filename,
gsl_interp_type  int_type 
)

References filename, grid2d, and grid3d.

◆ ~UnintegratedGluon()

UnintegratedGluon::~UnintegratedGluon ( )
virtual

Member Function Documentation

◆ grid_limits()

vector<pair <double, double> > UnintegratedGluon::grid_limits ( ) const
inline

return grid limits in form of 2d vector of pairs: [[x1min,x1max], [x2min, x2max]]

Min and max values in each dimension can be obtained by using first or second pair data members.

Referenced by xg().

◆ grid_size()

vector< int > UnintegratedGluon::grid_size ( ) const

return size of the grid in each dimension

◆ xg()

double UnintegratedGluon::xg ( double  logx,
double  logkt2,
double  logmu2 = 0.0 
)

value of the unintegrated gluon

Parameters
logxln(x) where x is the longitudinal momentum fraction of the gluon
logkt2ln(kt^2) where kt is the transverse momentum of the gluon
logmu2ln(\mu^2) where \mu is the factorization scale; this parameter is relevant only for some gluons like e.g. the KShardscale gluon; it also implies that 3d grid is used as input

References count1, count2, count3, count4, count5, first, grid3d, and grid_limits().


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