PDFxTMDLib  1.0.0
Classes | Public Member Functions | List of all members
PDFxTMD::ITMD Class Reference

Interface for Transverse Momentum Dependent (TMD) parton distribution functions. More...

#include <ITMD.h>

Public Member Functions

template<typename TMDApproachT >
 ITMD (TMDApproachT tmdApproach)
 
double tmd (PartonFlavor flavor, double x, double kt2, double mu2) const
 Evaluate the TMD PDF for a specific flavor. More...
 
void tmd (double x, double kt2, double mu2, std::array< double, DEFAULT_TOTAL_PDFS > &output) const
 Evaluate the TMD PDF for all flavors. More...
 
 ITMD (const ITMD &other)
 Copy constructor for ITMD objects. More...
 
ITMDoperator= (ITMD const &other)
 Assignment operator for ITMD objects. More...
 
 ITMD (ITMD &&other) noexcept=default
 
 ~ITMD ()=default
 
ITMDoperator= (ITMD &&other)=default
 

Detailed Description

Interface for Transverse Momentum Dependent (TMD) parton distribution functions.

This class provides a type-erased interface for accessing TMD PDFs.

The class handles:

Constructor & Destructor Documentation

◆ ITMD() [1/3]

template<typename TMDApproachT >
PDFxTMD::ITMD::ITMD ( TMDApproachT  tmdApproach)
inlineexplicit

◆ ITMD() [2/3]

PDFxTMD::ITMD::ITMD ( const ITMD other)
inline

Copy constructor for ITMD objects.

This constructor creates a new ITMD object as a copy of another ITMD object.

Parameters
otherThe ITMD object to copy.

◆ ITMD() [3/3]

PDFxTMD::ITMD::ITMD ( ITMD &&  other)
defaultnoexcept

◆ ~ITMD()

PDFxTMD::ITMD::~ITMD ( )
default

Member Function Documentation

◆ operator=() [1/2]

ITMD& PDFxTMD::ITMD::operator= ( ITMD &&  other)
default

◆ operator=() [2/2]

ITMD& PDFxTMD::ITMD::operator= ( ITMD const &  other)
inline

Assignment operator for ITMD objects.

This operator assigns the value of another ITMD object to the current ITMD object.

Parameters
otherThe ITMD object to assign from.
Returns
A reference to the current ITMD object.

◆ tmd() [1/2]

void PDFxTMD::ITMD::tmd ( double  x,
double  kt2,
double  mu2,
std::array< double, DEFAULT_TOTAL_PDFS > &  output 
) const
inline

Evaluate the TMD PDF for all flavors.

This function evaluates the TMD PDF for all flavors at once, given x, kt2, and mu2.

Parameters
xThe momentum fraction of the parton.
kt2The transverse momentum squared of the parton.
mu2The factorization scale squared.
Returns
A vector containing the TMD PDF values for all flavors {tbar [0], bbar [1], cbar [2], sbar [3], ubar [4], dbar[5], g [6], d [7], u [8], s [9], c [10], b [11], t [12]}.

◆ tmd() [2/2]

double PDFxTMD::ITMD::tmd ( PartonFlavor  flavor,
double  x,
double  kt2,
double  mu2 
) const
inline

Evaluate the TMD PDF for a specific flavor.

This function evaluates the TMD PDF for a given flavor, x, kt2, and mu2.

Parameters
flavorThe parton flavor to evaluate the TMD PDF for.
xThe momentum fraction of the parton.
kt2The transverse momentum squared of the parton.
mu2The factorization scale squared.
Returns
The value of the TMD PDF for the given flavor, x, kt2, and mu2.

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