PARTONS
|
PARtonic Tomography Of Nucleon Software
|
Module based on the original code from http://hepdata.cedar.ac.uk/pdfs. More...
Public Member Functions | |
GPDVinnikov06 (const std::string &className) | |
Constructor. More... | |
virtual | ~GPDVinnikov06 () |
Default destructor. More... | |
virtual GPDVinnikov06 * | clone () const |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. 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 | configure (const ElemUtils::Parameters ¶meters) |
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... | |
Public Member Functions inherited from PARTONS::GPDModule | |
virtual | ~GPDModule () |
Destructor. 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< GPDType > | getListOfAvailableGPDTypeForComputation () const |
Get list of available GPDTypes in the model considered. More... | |
virtual PartonDistribution | computeE () |
This method can be implemented in the child class if the GPD E 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 | 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... | |
virtual PartonDistribution | computeEbarTrans () |
This method can be implemented in the child class if the GPD EbarTrans is available to compute. More... | |
double | getMuF2Ref () const |
Get reference factorization scale used by the GPD model before evolution. More... | |
const GPDEvolutionModule * | getEvolQcdModule () const |
Set underlying GPD Evolution module. More... | |
void | setEvolQcdModule (GPDEvolutionModule *pEvolQcdModule) |
Get underlying GPD Evolution module. More... | |
const CollinearDistributionModule * | getPDFModule () 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 |
ID assigned by BaseObjectRegistry. 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 | |
GPDVinnikov06 (const GPDVinnikov06 &other) | |
Copy constructor. More... | |
virtual void | isModuleWellConfigured () |
Pure virtual function that provides skeleton to check if the module is well initialized and configured. More... | |
virtual void | initModule () |
Pure virtual function that provides skeleton for module initialization. More... | |
virtual PartonDistribution | computeH () |
This method can be implemented in the child class if the GPD H is available to compute. More... | |
virtual PartonDistribution | computeHt () |
This method can be implemented in the child class if the GPD Ht is available to compute. More... | |
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 ¶meterName) const |
Use in automation process to throw exception when a parameter is missing from the XML scenario file. More... | |
Private Member Functions | |
double | gpdh (int const i_part, double x, double const xi, double const t, int const n_par, double *const param) |
Evaluation of GPD H. More... | |
double | gpdh_pol (int const i_part, double x, double const xi, double const t, int const n_par, double *const param) |
Evaluation of GPD Ht. More... | |
double | dd1 (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD H and x < -xi part More... | |
double | dd2 (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD H and -xi < x < xi part. More... | |
double | dd3 (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD H and x > xi part. More... | |
double | dd1_pol (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD Ht and x < -xi part. More... | |
double | dd2_pol (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD Ht and x > xi part. More... | |
double | dd3_pol (int const i_part, double const beta, double const x, double const xi, double const t, int const n_par, double *const param) |
Double distribution for GPD Ht and x > xi part. More... | |
double | uval (double const x, double const t) |
Unpolarized PDF for quarks uVal convoluted with t-dependence. More... | |
double | dval (double const x, double const t) |
Unpolarized PDF for quarks dVal convoluted with t-dependence. More... | |
double | usea (double const x, double const t) |
Unpolarized PDF for quarks uSea convoluted with t-dependence. More... | |
double | dsea (double const x, double const t) |
Unpolarized PDF for quarks dSea convoluted with t-dependence. More... | |
double | ssea (double const x, double const t) |
Unpolarized PDF for quarks s convoluted with t-dependence. More... | |
double | glu (double const x, double const t) |
Unpolarized PDF for gluons convoluted with t-dependence. More... | |
double | uval_pol (double const x, double const t) |
Polarized PDF for quarks uVal convoluted with t-dependence. More... | |
double | dval_pol (double const x, double const t) |
Polarized PDF for quarks dVal convoluted with t-dependence. More... | |
double | usea_pol (double const x, double const t) |
Polarized PDF for quarks uSea convoluted with t-dependence. More... | |
double | dsea_pol (double const x, double const t) |
Polarized PDF for quarks dSea convoluted with t-dependence. More... | |
double | ssea_pol (double const x, double const t) |
Polarized PDF for quarks s convoluted with t-dependence. More... | |
double | glu_pol (double const x, double const t) |
Polarized PDF for gluons convoluted with t-dependence. More... | |
double | dd_int_simp (double const bmin, double const bmax, double(GPDVinnikov06::*dd)(int, double, double, double, double, int, double *), int const i_part, double const x, double const xi, double const t, int const n_par, double *param) |
Integration for double distribution. More... | |
double | gammf (double const x) |
Gamma function. More... | |
double | prof_funct (double const b, double const beta, double const alpha) |
Double distribution profile function. More... | |
double | power (double const x, double const y) |
Exponentiation function. More... | |
Private Attributes | |
const double | EPS_BETR |
Epsilon to avoid the evaluation for x=xi. More... | |
const int | SIMP_INT |
Number of steps used in the integration. More... | |
int | n_par |
Number of model parameters. More... | |
double | param [6] |
Model parameters (double distribution profile function parameter for all partons). More... | |
Additional Inherited Members | |
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... | |
GPDEvolutionModule * | m_pGPDEvolutionModule |
Pointer to the underlying GPD Evolution module. More... | |
CollinearDistributionModule * | m_pCollinearDistributionModule |
Pointer to the underlying PDF module. More... | |
Protected Attributes inherited from PARTONS::ModuleObject | |
ModuleObjectFactory * | m_pModuleObjectFactory |
Pointer tp module object factory. More... | |
Module based on the original code from http://hepdata.cedar.ac.uk/pdfs.
For the reference, see arxiv:hep-ph/0604248 [21].
Available GPD types: H, Ht.
PARTONS::GPDVinnikov06::GPDVinnikov06 | ( | const std::string & | className | ) |
Constructor.
See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.
className | name of child class. |
|
virtual |
Default destructor.
|
protected |
Copy constructor.
other | Object to be copied. |
|
virtual |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.
Implements PARTONS::GPDModule.
|
protectedvirtual |
This method can be implemented in the child class if the GPD H is available to compute.
Reimplemented from PARTONS::GPDModule.
|
protectedvirtual |
This method can be implemented in the child class if the GPD Ht is available to compute.
Reimplemented from PARTONS::GPDModule.
|
virtual |
Provides a generic method to configure all types of modules by passing a Parameters object.
Parameters class represents a list of couples key/value (see Parameters class documentation for more info).
parameters | ElemUtils::Parameters object. |
Reimplemented from PARTONS::GPDModule.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
Integration for double distribution.
bmin | Integration limit min. |
bmax | Integration limit max. |
dd | Double distribution function to be integrated. |
i_part | Parton selection (0 for g, -1/+1 for uSea/uVal, -2/+2 for dSea/dVal, 3 for s). |
x,xi,t | GPD variables. |
n_par | Number of input parameters. |
param | Input parameters. |
|
private |
Unpolarized PDF for quarks dSea convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for quarks dSea convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Unpolarized PDF for quarks dVal convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for quarks dVal convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Gamma function.
x | Argument. |
|
private |
Unpolarized PDF for gluons convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for gluons convoluted with t-dependence.
x,t | GPD variables. |
|
private |
|
private |
|
protectedvirtual |
Pure virtual function that provides skeleton for module initialization.
Children must define and override it.
Reimplemented from PARTONS::GPDModule.
|
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::GPDModule.
|
private |
Exponentiation function.
x,y | Exponentiation parameters x^y. |
|
private |
Double distribution profile function.
b | Profile parameter. |
beta,alpha | Double distribution variables. |
|
virtual |
Because of the initialization step order of the program, objects are registered in a total random order and some objects depend on others.
To avoid the problem of pointer resolution order, this method is called by the BaseObjectRegistery after all objects are well registered in it. See BaseObjectRegistry class documentation for more details.
Reimplemented from PARTONS::GPDModule.
|
private |
Unpolarized PDF for quarks s convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for quarks s convoluted with t-dependence.
x,t | GPD variables. |
|
virtual |
Return a pre-formatted characters string for output visualization of class member's values.
Reimplemented from PARTONS::GPDModule.
|
private |
Unpolarized PDF for quarks uSea convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for quarks uSea convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Unpolarized PDF for quarks uVal convoluted with t-dependence.
x,t | GPD variables. |
|
private |
Polarized PDF for quarks uVal convoluted with t-dependence.
x,t | GPD variables. |
|
static |
ID assigned by BaseObjectRegistry.
|
private |
Epsilon to avoid the evaluation for x=xi.
|
private |
Number of model parameters.
|
private |
Model parameters (double distribution profile function parameter for all partons).
|
private |
Number of steps used in the integration.