PDFxTMDLib 2.0.0
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
PDFxTMD::ICDPD Class Reference

Type-erased interface for collinear double parton distribution functions. More...

#include <ICDPD.h>

Public Member Functions

template<typename DPDApproachT , typename = std::enable_if_t<!std::is_same_v<std::decay_t<DPDApproachT>, ICDPD>>>
 ICDPD (DPDApproachT &&dpdApproach)
 
double dpd (PartonFlavor flavor1, PartonFlavor flavor2, double x1, double mu1_2, double x2, double mu2_2) const
 Evaluate the DPD for two flavors, two x values, and two scales.
 
 ICDPD (const ICDPD &other)
 
ICDPD & operator= (const ICDPD &other)
 
 ICDPD (ICDPD &&other) noexcept=default
 
ICDPD & operator= (ICDPD &&other) noexcept=default
 
 ~ICDPD ()=default
 

Detailed Description

Type-erased interface for collinear double parton distribution functions.

This class wraps any DPD implementation that provides:

double dpd(PartonFlavor flavor1, PartonFlavor flavor2, double x1, double mu1_2, double x2, double mu2_2);

For example, it can wrap:

PDFxTMD::CollinearDPD

Constructor & Destructor Documentation

◆ ICDPD() [1/3]

template<typename DPDApproachT , typename = std::enable_if_t<!std::is_same_v<std::decay_t<DPDApproachT>, ICDPD>>>
PDFxTMD::ICDPD::ICDPD ( DPDApproachT &&  dpdApproach)
inlineexplicit

◆ ICDPD() [2/3]

PDFxTMD::ICDPD::ICDPD ( const ICDPD &  other)
inline

◆ ICDPD() [3/3]

PDFxTMD::ICDPD::ICDPD ( ICDPD &&  other)
defaultnoexcept

◆ ~ICDPD()

PDFxTMD::ICDPD::~ICDPD ( )
default

Member Function Documentation

◆ dpd()

double PDFxTMD::ICDPD::dpd ( PartonFlavor  flavor1,
PartonFlavor  flavor2,
double  x1,
double  mu1_2,
double  x2,
double  mu2_2 
) const
inline

Evaluate the DPD for two flavors, two x values, and two scales.

Parameters
flavor1First parton flavor.
flavor2Second parton flavor.
x1First momentum fraction.
mu1_2First factorization scale squared.
x2Second momentum fraction.
mu2_2Second factorization scale squared.
Returns
DPD value.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

ICDPD & PDFxTMD::ICDPD::operator= ( ICDPD &&  other)
defaultnoexcept

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