PARTONS  
PARtonic Tomography Of Nucleon Software
Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
PARTONS::GPDGK19 Class Reference

The module implements GPDs which appear in Goloskokov-Kroll (GK) model in pseudoscalar meson production. More...

Inheritance diagram for PARTONS::GPDGK19:
PARTONS::GPDGK16 PARTONS::GPDModule PARTONS::ModuleObject PARTONS::BaseObject

Public Member Functions

 GPDGK19 (const std::string &className)
 Constructor. More...
 
virtual ~GPDGK19 ()
 Destructor. More...
 
virtual GPDGK19clone () const
 Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. More...
 
- Public Member Functions inherited from PARTONS::GPDGK16
 GPDGK16 (const std::string &className)
 Constructor. More...
 
virtual ~GPDGK16 ()
 Default destructor. More...
 
virtual void configure (const ElemUtils::Parameters &parameters)
 Provides a generic method to configure all types of modules by passing a Parameters object. More...
 
virtual std::string toString () const
 Return a pre-formatted characters string for output visualization of class member's values. More...
 
double getB0 () const
 
double getC1 () const
 
double getC2 () const
 
double getC3 () const
 
double getC4 () const
 
double getC5 () const
 
double getC6 () const
 
double getC7 () const
 
double getC8 () const
 
const std::vector< double > & getEdval1mtab () const
 
const std::vector< double > & getEdval1tab () const
 
const std::vector< double > & getEi1tab () const
 
const std::vector< double > & getEs1tab () const
 
const std::vector< double > & getEtdval1mtab () const
 
const std::vector< double > & getEtdval1tab () const
 
const std::vector< double > & getEtuval1mtab () const
 
const std::vector< double > & getEtuval1tab () const
 
const std::vector< double > & getEuval1mtab () const
 
const std::vector< double > & getEuval1tab () const
 
double getEdValMx () const
 
double getEtdValMx () const
 
double getEtuValMx () const
 
double getEuValMx () const
 
double getHdValMx () const
 
double getHtdValMx () const
 
double getHtuValMx () const
 
double getHuValMx () const
 
double getL () const
 
const std::vector< double > & getHdval1mtab () const
 
const std::vector< double > & getHdval1tab () const
 
const std::vector< double > & getHi1tab () const
 
const std::vector< double > & getHs1tab () const
 
const std::vector< double > & getHtdval1mtab () const
 
const std::vector< double > & getHtdval1tab () const
 
const std::vector< double > & getHti1tab () const
 
const std::vector< double > & getHtuval1mtab () const
 
const std::vector< double > & getHtuval1tab () const
 
const std::vector< double > & getHuval1mtab () const
 
const std::vector< double > & getHuval1tab () const
 
double getKappaS () const
 
double getEdval () const
 
double getEgluon () const
 
double getEsea () const
 
double getEtdval () const
 
double getEtgluon () const
 
double getEtsea () const
 
double getEtuval () const
 
double getEuval () const
 
double getHdval () const
 
double getHgluon () const
 
double getHsea () const
 
double getHtdval () const
 
double getHtgluon () const
 
double getHtsea () const
 
double getHtuval () const
 
double getHuval () const
 
- Public Member Functions inherited from PARTONS::GPDModule
virtual ~GPDModule ()
 Destructor. More...
 
virtual void resolveObjectDependencies ()
 Because of the initialization step order of the program, objects are registered in a total random order and some objects depend on others. More...
 
virtual void run ()
 
virtual void prepareSubModules (const std::map< std::string, BaseObjectData > &subModulesData)
 Method used in automation to prepare all the modules used by this current module and configure them recursively. More...
 
virtual PartonDistribution compute (const GPDKinematic &kinematic, GPDType::Type gpdType)
 Virtual method, computes GPD with some input parameters. More...
 
virtual GPDResult compute (const GPDKinematic &kinematic, const List< GPDType > &gpdType=List< GPDType >())
 Virtual method, computes GPD with some input parameters. More...
 
List< GPDTypegetListOfAvailableGPDTypeForComputation () const
 Get list of available GPDTypes in the model considered. More...
 
virtual PartonDistribution computeETrans ()
 This method can be implemented in the child class if the GPD ETrans is available to compute. More...
 
virtual PartonDistribution computeHtTrans ()
 This method can be implemented in the child class if the GPD HtTrans is available to compute. More...
 
virtual PartonDistribution computeEtTrans ()
 This method can be implemented in the child class if the GPD EtTrans is available to compute. More...
 
virtual PartonDistribution computeH3p ()
 This method can be implemented in the child class if the GPD H3p is available to compute. More...
 
virtual PartonDistribution computeE3p ()
 This method can be implemented in the child class if the GPD E3p is available to compute. More...
 
virtual PartonDistribution computeHt3p ()
 This method can be implemented in the child class if the GPD Ht3p is available to compute. More...
 
virtual PartonDistribution computeEt3p ()
 This method can be implemented in the child class if the GPD Et3p is available to compute. More...
 
virtual PartonDistribution computeH3m ()
 This method can be implemented in the child class if the GPD H3m is available to compute. More...
 
virtual PartonDistribution computeE3m ()
 This method can be implemented in the child class if the GPD E3m is available to compute. More...
 
virtual PartonDistribution computeHt3m ()
 This method can be implemented in the child class if the GPD Ht3m is available to compute. More...
 
virtual PartonDistribution computeEt3m ()
 This method can be implemented in the child class if the GPD Et3m is available to compute. More...
 
double getMuF2Ref () const
 Get reference factorization scale used by the GPD model before evolution. More...
 
const GPDEvolutionModulegetEvolQcdModule () const
 Set underlying GPD Evolution module. More...
 
void setEvolQcdModule (GPDEvolutionModule *pEvolQcdModule)
 Get underlying GPD Evolution module. More...
 
const CollinearDistributionModulegetPDFModule () const
 Set underlying PDF module. More...
 
void setPDFModule (CollinearDistributionModule *pPDFModule)
 Get underlying PDF module. More...
 
- Public Member Functions inherited from PARTONS::ModuleObject
 ModuleObject (const std::string &className, ChannelType::Type channelType)
 Constructor. More...
 
virtual ~ModuleObject ()
 Default destructor. More...
 
unsigned int getReferenceModuleId () const
 Get reference module id. More...
 
void setReferenceModuleId (unsigned int referenceModuleId)
 Set reference module id. More...
 
ChannelType::Type getChannelType () const
 Get channel type. More...
 
- Public Member Functions inherited from PARTONS::BaseObject
 BaseObject (const std::string &className)
 Constructor. More...
 
virtual ~BaseObject ()
 Default destructor. More...
 
void serialize (ElemUtils::Packet &packet) const
 Used to split a complex C++ object into a concatenation of simple types. More...
 
void unserialize (ElemUtils::Packet &packet)
 Used to rebuild a complex C++ object from a concatenation of simple type. More...
 
bool operator< (const BaseObject &other) const
 Overload of < operator to sort BaseObject object by its indexId value. More...
 
const std::string & getClassName () const
 
unsigned int getObjectId () const
 
int getIndexId () const
 
void setIndexId (int indexId)
 

Static Public Attributes

static const unsigned int classId
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::GPDGK16
static const unsigned int classId
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::GPDModule
static const std::string GPD_MODULE_CLASS_NAME = "GPDModule"
 Type of the module in XML automation. More...
 
- Static Public Attributes inherited from PARTONS::ModuleObject
static const std::string CLASS_NAME = "className"
 

Protected Member Functions

 GPDGK19 (const GPDGK19 &other)
 Copy constructor. More...
 
virtual void initModule ()
 Pure virtual function that provides skeleton for module initialization. More...
 
virtual void isModuleWellConfigured ()
 Pure virtual function that provides skeleton to check if the module is well initialized and configured. More...
 
virtual PartonDistribution computeHt ()
 This method can be implemented in the child class if the GPD Ht is available to compute. More...
 
virtual PartonDistribution computeEt ()
 This method can be implemented in the child class if the GPD Et is available to compute. More...
 
virtual PartonDistribution computeHTrans ()
 This method can be implemented in the child class if the GPD HTrans is available to compute. More...
 
virtual PartonDistribution computeEbarTrans ()
 This method can be implemented in the child class if the GPD EbarTrans is available to compute. More...
 
void calculateHtCoefs ()
 
void calculateEtCoefs ()
 
void calculateHTransCoefs ()
 
void calculateETransCoefs ()
 
- Protected Member Functions inherited from PARTONS::GPDGK16
 GPDGK16 (const GPDGK16 &other)
 Copy constructor. More...
 
virtual PartonDistribution computeH ()
 This method can be implemented in the child class if the GPD H is available to compute. More...
 
virtual PartonDistribution computeE ()
 This method can be implemented in the child class if the GPD E is available to compute. More...
 
void calculateHCoefs ()
 
void calculateECoefs ()
 
void calculateHtCoefs ()
 
void calculateEtCoefs ()
 
- Protected Member Functions inherited from PARTONS::GPDModule
 GPDModule (const std::string &className)
 Default constructor. More...
 
 GPDModule (const GPDModule &other)
 Copy constructor. More...
 
virtual void setKinematics (const GPDKinematic &kinematic)
 Set internal kinematics. More...
 
void setCurrentGPDType (GPDType::Type gpdType)
 Set current GPD type to be computed. More...
 
- Protected Member Functions inherited from PARTONS::ModuleObject
 ModuleObject (const ModuleObject &other)
 
- Protected Member Functions inherited from PARTONS::BaseObject
 BaseObject (const BaseObject &other)
 Copy constructor. More...
 
void info (const std::string &functionName, const std::string &message) const
 Print info message into logger. More...
 
void debug (const std::string &functionName, const std::string &message) const
 Print debug message into logger. More...
 
void warn (const std::string &functionName, const std::string &message) const
 Print warning message into logger. More...
 
void errorMissingParameter (const std::string &parameterName) const
 Use in automation process to throw exception when a parameter is missing from the XML scenario file. More...
 

Private Member Functions

void calculateHtKas ()
 
void calculateEtKas ()
 
void calculateHTransKas ()
 
void calculateETransKas ()
 
double ValenceExpansion (double x, double i, double k)
 

Private Attributes

double kHtgluon
 Exponent of correlated x-t dependence. More...
 
double kHtsea
 Exponent of correlated x-t dependence. More...
 
double kHtuval
 Exponent of correlated x-t dependence. More...
 
double kHtdval
 Exponent of correlated x-t dependence. More...
 
double kEtgluon
 Exponent of correlated x-t dependence. More...
 
double kEtsea
 Exponent of correlated x-t dependence. More...
 
double kEtuval
 Exponent of correlated x-t dependence. More...
 
double kEtdval
 Exponent of correlated x-t dependence. More...
 
double kHTransgluon
 Exponent of correlated x-t dependence. More...
 
double kHTranssea
 Exponent of correlated x-t dependence. More...
 
double kHTransuval
 Exponent of correlated x-t dependence. More...
 
double kHTransdval
 Exponent of correlated x-t dependence. More...
 
double kETransgluon
 Exponent of correlated x-t dependence. More...
 
double kETranssea
 Exponent of correlated x-t dependence. More...
 
double kETransuval
 Exponent of correlated x-t dependence. More...
 
double kETransdval
 Exponent of correlated x-t dependence. More...
 
std::vector< double > Htuval1tab
 Htval1(i=0,1,2) for valence u. More...
 
std::vector< double > Htdval1tab
 Htval1(i=0,1,2) for valence d. More...
 
std::vector< double > Htuval1mtab
 Htval1(i=0,1,2) for valence u for -xb. More...
 
std::vector< double > Htdval1mtab
 Htval1(i=0,1,2) for valence d for -xb. More...
 
std::vector< double > Etuval1tab
 Etval1(i=0,1,2,3) for valence u. More...
 
std::vector< double > Etdval1tab
 Etval1(i=0,1,2,3) for valence d. More...
 
std::vector< double > Etuval1mtab
 Etval1(i=0,1,2,3) for valence u for -xb. More...
 
std::vector< double > Etdval1mtab
 Etval1(i=0,1,2,3) for valence d for -xb. More...
 
std::vector< double > HTransuval1tab
 HTransval1(i=0,1,2,3,4,5) for valence u. More...
 
std::vector< double > HTransdval1tab
 HTransval1(i=0,1,2,3,4,5) for valence d. More...
 
std::vector< double > HTransuval1mtab
 HTransval1(i=0,1,2,3,4,5) for valence u for -xb. More...
 
std::vector< double > HTransdval1mtab
 HTransval1(i=0,1,2,3,4,5) for valence d for -xb. More...
 
std::vector< double > ETransuval1tab
 ETransval1(i=0,1,2) for valence u. More...
 
std::vector< double > ETransdval1tab
 ETransval1(i=0,1,2) for valence d. More...
 
std::vector< double > ETransuval1mtab
 ETransval1(i=0,1,2) for valence u for -xb. More...
 
std::vector< double > ETransdval1mtab
 ETransval1(i=0,1,2) for valence d for -xb. More...
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::GPDGK16
double c1
 
double c2
 
double c3
 
double c4
 
double c5
 
double c6
 
double c7
 
double c8
 
double b0
 
double fL
 
std::vector< double > Hi1tab
 Hi1(i=0,0.5,1,1.5) for gluons. More...
 
- Protected Attributes inherited from PARTONS::GPDModule
std::map< GPDType::Type, PartonDistribution(GPDModule::*)()> m_listGPDComputeTypeAvailable
 List of GPD types that can be computed by the child class. More...
 
std::map< GPDType::Type, PartonDistribution(GPDModule::*)()>::iterator m_it
 Iterator. More...
 
double m_x
 Longitudinal momentum fraction of the active parton. More...
 
double m_xi
 Skewness. More...
 
double m_t
 Mandelstam variable, momentum transfer on the hadron target. More...
 
double m_MuF2
 Factorization scale squared. More...
 
double m_MuR2
 Renormalization scale squared. More...
 
GPDType::Type m_currentGPDComputeType
 Current GPD type. More...
 
double m_MuF2_ref
 Reference factorization scale used by the GPD model before evolution. More...
 
GPDEvolutionModulem_pGPDEvolutionModule
 Pointer to the underlying GPD Evolution module. More...
 
CollinearDistributionModulem_pCollinearDistributionModule
 Pointer to the underlying PDF module. More...
 
- Protected Attributes inherited from PARTONS::ModuleObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer tp module object factory. More...
 

Detailed Description

The module implements GPDs which appear in Goloskokov-Kroll (GK) model in pseudoscalar meson production.

This model is defined in the series of references:

Available GPD types: H, E, \tilde{H}, \tilde{E}, H_T and \bar{E}_T

We use the following parameters for GPDs (all GPDs have Regge-like profile function): 1) \tilde{H}: Table 1 in arxiv:1901.11380 with \alpha(0) = 0.32 2) \tilde{E}: Table 1 in arxiv:1901.11380 3) H_T: Table 1 in arxiv:1901.11380 with \alpha(0) = -0.17 4) \bar{E}_T: Table 1 in arxiv:1901.11380 with PDFs (forward-limits) parametrizations ABM: arXiv:1202.2281 and DSSV: arXiv:0904.3821

Parameterization of GPDs H and E as in GPDGK16

Constructor & Destructor Documentation

◆ GPDGK19() [1/2]

PARTONS::GPDGK19::GPDGK19 ( const std::string &  className)

Constructor.

See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.

Parameters
classNamename of child class.

◆ ~GPDGK19()

PARTONS::GPDGK19::~GPDGK19 ( )
virtual

Destructor.

◆ GPDGK19() [2/2]

PARTONS::GPDGK19::GPDGK19 ( const GPDGK19 other)
protected

Copy constructor.

Member Function Documentation

◆ calculateEtCoefs()

void PARTONS::GPDGK19::calculateEtCoefs ( )
protected

◆ calculateEtKas()

void PARTONS::GPDGK19::calculateEtKas ( )
private

◆ calculateETransCoefs()

void PARTONS::GPDGK19::calculateETransCoefs ( )
protected

◆ calculateETransKas()

void PARTONS::GPDGK19::calculateETransKas ( )
private

◆ calculateHtCoefs()

void PARTONS::GPDGK19::calculateHtCoefs ( )
protected

◆ calculateHtKas()

void PARTONS::GPDGK19::calculateHtKas ( )
private

◆ calculateHTransCoefs()

void PARTONS::GPDGK19::calculateHTransCoefs ( )
protected

◆ calculateHTransKas()

void PARTONS::GPDGK19::calculateHTransKas ( )
private

◆ clone()

GPDGK19 * PARTONS::GPDGK19::clone ( ) const
virtual

Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.

Returns

Reimplemented from PARTONS::GPDGK16.

◆ computeEbarTrans()

PartonDistribution PARTONS::GPDGK19::computeEbarTrans ( )
protectedvirtual

This method can be implemented in the child class if the GPD EbarTrans is available to compute.

Returns
PartonDistribution object. Contains results for each flavor of partons.

Reimplemented from PARTONS::GPDModule.

◆ computeEt()

PartonDistribution PARTONS::GPDGK19::computeEt ( )
protectedvirtual

This method can be implemented in the child class if the GPD Et is available to compute.

Returns
PartonDistribution object. Contains results for each flavor of partons.

Reimplemented from PARTONS::GPDGK16.

◆ computeHt()

PartonDistribution PARTONS::GPDGK19::computeHt ( )
protectedvirtual

This method can be implemented in the child class if the GPD Ht is available to compute.

Returns
PartonDistribution object. Contains results for each flavor of partons.

Reimplemented from PARTONS::GPDGK16.

◆ computeHTrans()

PartonDistribution PARTONS::GPDGK19::computeHTrans ( )
protectedvirtual

This method can be implemented in the child class if the GPD HTrans is available to compute.

Returns
PartonDistribution object. Contains results for each flavor of partons.

Reimplemented from PARTONS::GPDModule.

◆ initModule()

void PARTONS::GPDGK19::initModule ( )
protectedvirtual

Pure virtual function that provides skeleton for module initialization.

Children must define and override it.

Reimplemented from PARTONS::GPDGK16.

◆ isModuleWellConfigured()

void PARTONS::GPDGK19::isModuleWellConfigured ( )
protectedvirtual

Pure virtual function that provides skeleton to check if the module is well initialized and configured.

Children must define and override it.

Reimplemented from PARTONS::GPDGK16.

◆ ValenceExpansion()

double PARTONS::GPDGK19::ValenceExpansion ( double  x,
double  i,
double  k 
)
private

Member Data Documentation

◆ classId

const unsigned int PARTONS::GPDGK19::classId
static
Initial value:
=
new GPDGK19("GPDGK19"))
unsigned int registerBaseObject(BaseObject *pBaseObject)
Store a unique instance of a module identified by a unique string character key.
Definition: BaseObjectRegistry.cpp:45
static BaseObjectRegistry * getInstance()
Static function to be able to retrieve a unique instance pointer of this class anywhere in the code.
Definition: BaseObjectRegistry.cpp:15
GPDGK19(const std::string &className)
Constructor.
Definition: GPDGK19.cpp:23

Unique ID to automatically register the class in the registry.

◆ Etdval1mtab

std::vector<double> PARTONS::GPDGK19::Etdval1mtab
private

Etval1(i=0,1,2,3) for valence d for -xb.

◆ Etdval1tab

std::vector<double> PARTONS::GPDGK19::Etdval1tab
private

Etval1(i=0,1,2,3) for valence d.

◆ ETransdval1mtab

std::vector<double> PARTONS::GPDGK19::ETransdval1mtab
private

ETransval1(i=0,1,2) for valence d for -xb.

◆ ETransdval1tab

std::vector<double> PARTONS::GPDGK19::ETransdval1tab
private

ETransval1(i=0,1,2) for valence d.

◆ ETransuval1mtab

std::vector<double> PARTONS::GPDGK19::ETransuval1mtab
private

ETransval1(i=0,1,2) for valence u for -xb.

◆ ETransuval1tab

std::vector<double> PARTONS::GPDGK19::ETransuval1tab
private

ETransval1(i=0,1,2) for valence u.

◆ Etuval1mtab

std::vector<double> PARTONS::GPDGK19::Etuval1mtab
private

Etval1(i=0,1,2,3) for valence u for -xb.

◆ Etuval1tab

std::vector<double> PARTONS::GPDGK19::Etuval1tab
private

Etval1(i=0,1,2,3) for valence u.

◆ Htdval1mtab

std::vector<double> PARTONS::GPDGK19::Htdval1mtab
private

Htval1(i=0,1,2) for valence d for -xb.

◆ Htdval1tab

std::vector<double> PARTONS::GPDGK19::Htdval1tab
private

Htval1(i=0,1,2) for valence d.

◆ HTransdval1mtab

std::vector<double> PARTONS::GPDGK19::HTransdval1mtab
private

HTransval1(i=0,1,2,3,4,5) for valence d for -xb.

◆ HTransdval1tab

std::vector<double> PARTONS::GPDGK19::HTransdval1tab
private

HTransval1(i=0,1,2,3,4,5) for valence d.

◆ HTransuval1mtab

std::vector<double> PARTONS::GPDGK19::HTransuval1mtab
private

HTransval1(i=0,1,2,3,4,5) for valence u for -xb.

◆ HTransuval1tab

std::vector<double> PARTONS::GPDGK19::HTransuval1tab
private

HTransval1(i=0,1,2,3,4,5) for valence u.

◆ Htuval1mtab

std::vector<double> PARTONS::GPDGK19::Htuval1mtab
private

Htval1(i=0,1,2) for valence u for -xb.

◆ Htuval1tab

std::vector<double> PARTONS::GPDGK19::Htuval1tab
private

Htval1(i=0,1,2) for valence u.

◆ kEtdval

double PARTONS::GPDGK19::kEtdval
private

Exponent of correlated x-t dependence.

◆ kEtgluon

double PARTONS::GPDGK19::kEtgluon
private

Exponent of correlated x-t dependence.

◆ kETransdval

double PARTONS::GPDGK19::kETransdval
private

Exponent of correlated x-t dependence.

◆ kETransgluon

double PARTONS::GPDGK19::kETransgluon
private

Exponent of correlated x-t dependence.

◆ kETranssea

double PARTONS::GPDGK19::kETranssea
private

Exponent of correlated x-t dependence.

◆ kETransuval

double PARTONS::GPDGK19::kETransuval
private

Exponent of correlated x-t dependence.

◆ kEtsea

double PARTONS::GPDGK19::kEtsea
private

Exponent of correlated x-t dependence.

◆ kEtuval

double PARTONS::GPDGK19::kEtuval
private

Exponent of correlated x-t dependence.

◆ kHtdval

double PARTONS::GPDGK19::kHtdval
private

Exponent of correlated x-t dependence.

◆ kHtgluon

double PARTONS::GPDGK19::kHtgluon
private

Exponent of correlated x-t dependence.

◆ kHTransdval

double PARTONS::GPDGK19::kHTransdval
private

Exponent of correlated x-t dependence.

◆ kHTransgluon

double PARTONS::GPDGK19::kHTransgluon
private

Exponent of correlated x-t dependence.

◆ kHTranssea

double PARTONS::GPDGK19::kHTranssea
private

Exponent of correlated x-t dependence.

◆ kHTransuval

double PARTONS::GPDGK19::kHTransuval
private

Exponent of correlated x-t dependence.

◆ kHtsea

double PARTONS::GPDGK19::kHtsea
private

Exponent of correlated x-t dependence.

◆ kHtuval

double PARTONS::GPDGK19::kHtuval
private

Exponent of correlated x-t dependence.


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