|
PARTONS
|
PARtonic Tomography Of Nucleon Software
|
![]() |
A module that implements GPD as defined by Kroll-Goloskokov model in 2011. More...
Public Member Functions | |
| GPDGK16Numerical (const std::string &className) | |
| Constructor. More... | |
| virtual | ~GPDGK16Numerical () |
| Default destructor. More... | |
| virtual GPDGK16Numerical * | clone () const |
| Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. 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 | 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< GPDType > | getListOfAvailableGPDTypeForComputation () const |
| Get list of available GPDTypes in the model considered. 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) |
Public Member Functions inherited from PARTONS::MathIntegratorModule | |
| MathIntegratorModule () | |
| Default constructor. More... | |
| virtual | ~MathIntegratorModule () |
| Default destructor. More... | |
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::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" |
Static Public Attributes inherited from PARTONS::MathIntegratorModule | |
| static const std::string | PARAM_NAME_INTEGRATOR_TYPE |
| Parameter used in configureIntegrator() or XML automation to set the type of integrator. More... | |
Protected Member Functions | |
| GPDGK16Numerical (const GPDGK16Numerical &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 | computeE () |
| This method can be implemented in the child class if the GPD E 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... | |
| virtual PartonDistribution | computeEt () |
| This method can be implemented in the child class if the GPD Et 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 ¶meterName) const |
| Use in automation process to throw exception when a parameter is missing from the XML scenario file. More... | |
Protected Member Functions inherited from PARTONS::MathIntegratorModule | |
| MathIntegratorModule (const MathIntegratorModule &other) | |
| Copy constructor. More... | |
| void | setIntegrator (NumA::IntegratorType1D::Type integratorType) |
| Sets a given integrator available in NumA++. More... | |
| double | integrate (NumA::FunctionType1D *pFunction, double a, double b, std::vector< double > ¶meters) |
| Computes the integral of a function defined via a functor. More... | |
| void | configureIntegrator (const ElemUtils::Parameters ¶meters) |
| Provides a generic method to configure all types of integration routines by passing a Parameters object. More... | |
| NumA::Integrator1D * | getMathIntegrator () |
Protected Attributes | |
| double | c1 |
| double | c2 |
| double | c3 |
| double | c4 |
| double | c5 |
| double | c6 |
| double | c7 |
| double | c8 |
| double | b0 |
| double | fL |
| double | d0 |
| double | alphaP |
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... | |
Private Member Functions | |
| double | Et_pole (double x) |
| Pion pole contribution to Et. More... | |
| double | Profile (double N, double alpha, double beta) |
| double | GKPdfAnsatz (double N, double beta, double *coeff) |
| double | GKPdfAnsatz_t (double N, double beta, double *coeff) |
| double | GKPdfAnsatz_tg (double N, double beta, double *coeff) |
| double | GKtDependentsDD (double beta, double alpha) |
| double | GKtDependentuDD_t (double beta, double alpha) |
| double | GKtDependentdDD_t (double beta, double alpha) |
| double | GKtDependentuValDD (double beta, double alpha) |
| double | GKtDependentdValDD (double beta, double alpha) |
| double | GKtDependentgDD (double beta, double alpha) |
| double | GKtDependentHtgDD (double beta, double alpha) |
| double | GKtDependentDD_EuVal (double beta, double alpha) |
| double | GKtDependentDD_EdVal (double beta, double alpha) |
| double | GKtDependentDD_Es (double beta, double alpha) |
| double | GKtDependentDD_Eg (double beta, double alpha) |
| double | GKtDependentDD_EtuVal (double beta, double alpha) |
| double | GKtDependentDD_EtdVal (double beta, double alpha) |
| void | initFunctorsForIntegrations () |
| double | IntegralHdValBp (double x, std::vector< double > Par) |
| double | IntegralHdValBm (double x, std::vector< double > Par) |
| double | IntegralHg (double x, std::vector< double > Par) |
| double | IntegralHs (double x, std::vector< double > Par) |
| double | IntegralHsBm (double x, std::vector< double > Par) |
| double | IntegralHuVal (double x, std::vector< double > Par) |
| double | IntegralHtuVal (double x, std::vector< double > Par) |
| double | IntegralHtdVal (double x, std::vector< double > Par) |
| double | IntegralHuValMx (double x, std::vector< double > Par) |
| double | IntegralHtuValMx (double x, std::vector< double > Par) |
| double | IntegralHtdValMx (double x, std::vector< double > Par) |
| double | IntegralHdVal (double x, std::vector< double > Par) |
| double | IntegralHdValMx (double x, std::vector< double > Par) |
| double | IntegralxLargeHsSea (double x, std::vector< double > Par) |
| double | IntegralxLargeHsSeaMx (double x, std::vector< double > Par) |
| double | IntegralxSmallHsSea (double x, std::vector< double > Par) |
| double | IntegralxSmall1HsSea (double x, std::vector< double > Par) |
| double | IntegralxSmall2HsSea (double x, std::vector< double > Par) |
| double | IntegralxLargeHg (double x, std::vector< double > Par) |
| double | IntegralxLargeHgMx (double x, std::vector< double > Par) |
| double | IntegralxSmall1Hg (double x, std::vector< double > Par) |
| double | IntegralxSmall2Hg (double x, std::vector< double > Par) |
| double | IntegralxLargeHtg (double x, std::vector< double > Par) |
| double | IntegralxLargeHtgMx (double x, std::vector< double > Par) |
| double | IntegralxSmall1Htg (double x, std::vector< double > Par) |
| double | IntegralxSmall2Htg (double x, std::vector< double > Par) |
| double | IntegralEuVal (double x, std::vector< double > Par) |
| double | IntegralEdVal (double x, std::vector< double > Par) |
| double | IntegralEuValMx (double x, std::vector< double > Par) |
| double | IntegralEdValMx (double x, std::vector< double > Par) |
| double | IntegralxLargeEsSea (double x, std::vector< double > Par) |
| double | IntegralxLargeEsSeaMx (double x, std::vector< double > Par) |
| double | IntegralxSmallEsSea (double x, std::vector< double > Par) |
| double | IntegralxSmall1EsSea (double x, std::vector< double > Par) |
| double | IntegralxSmall2EsSea (double x, std::vector< double > Par) |
| double | IntegralxLargeEgSea (double x, std::vector< double > Par) |
| double | IntegralxLargeEgSeaMx (double x, std::vector< double > Par) |
| double | IntegralxSmall1EgSea (double x, std::vector< double > Par) |
| double | IntegralxSmall2EgSea (double x, std::vector< double > Par) |
| double | IntegralEtuVal (double x, std::vector< double > Par) |
| double | IntegralEtdVal (double x, std::vector< double > Par) |
| double | IntegralEtuValMx (double x, std::vector< double > Par) |
| double | IntegralEtdValMx (double x, std::vector< double > Par) |
| void | throwBetaException (const std::string &funcName, double betaValue) |
Private Attributes | |
| double | m_Mx |
| double | kappa_s |
| NumA::FunctionType1D * | m_pIntegralHuVal |
| NumA::FunctionType1D * | m_pIntegralHdVal |
| NumA::FunctionType1D * | m_pIntegralHuValMx |
| NumA::FunctionType1D * | m_pIntegralHdValMx |
| NumA::FunctionType1D * | m_pIntegralxLargeHsSea |
| NumA::FunctionType1D * | m_pIntegralxSmallHsSea |
| NumA::FunctionType1D * | m_pIntegralxSmall1HsSea |
| NumA::FunctionType1D * | m_pIntegralxSmall2HsSea |
| NumA::FunctionType1D * | m_pIntegralxLargeHsSeaMx |
| NumA::FunctionType1D * | m_pIntegralxLargeHg |
| NumA::FunctionType1D * | m_pIntegralxSmall1Hg |
| NumA::FunctionType1D * | m_pIntegralxSmall2Hg |
| NumA::FunctionType1D * | m_pIntegralxLargeHgMx |
| NumA::FunctionType1D * | m_pIntegralHtuVal |
| NumA::FunctionType1D * | m_pIntegralHtdVal |
| NumA::FunctionType1D * | m_pIntegralHtuValMx |
| NumA::FunctionType1D * | m_pIntegralHtdValMx |
| NumA::FunctionType1D * | m_pIntegralxLargeHtg |
| NumA::FunctionType1D * | m_pIntegralxSmall1Htg |
| NumA::FunctionType1D * | m_pIntegralxSmall2Htg |
| NumA::FunctionType1D * | m_pIntegralxLargeHtgMx |
| NumA::FunctionType1D * | m_pIntegralEuVal |
| NumA::FunctionType1D * | m_pIntegralEdVal |
| NumA::FunctionType1D * | m_pIntegralEuValMx |
| NumA::FunctionType1D * | m_pIntegralEdValMx |
| NumA::FunctionType1D * | m_pIntegralxLargeEsSea |
| NumA::FunctionType1D * | m_pIntegralxLargeEsSeaMx |
| NumA::FunctionType1D * | m_pIntegralxSmallEsSea |
| NumA::FunctionType1D * | m_pIntegralxSmall1EsSea |
| NumA::FunctionType1D * | m_pIntegralxSmall2EsSea |
| NumA::FunctionType1D * | m_pIntegralxLargeEgSea |
| NumA::FunctionType1D * | m_pIntegralxLargeEgSeaMx |
| NumA::FunctionType1D * | m_pIntegralxSmall1EgSea |
| NumA::FunctionType1D * | m_pIntegralxSmall2EgSea |
| NumA::FunctionType1D * | m_pIntegralEtuVal |
| NumA::FunctionType1D * | m_pIntegralEtdVal |
| NumA::FunctionType1D * | m_pIntegralEtuValMx |
| NumA::FunctionType1D * | m_pIntegralEtdValMx |
A module that implements GPD as defined by Kroll-Goloskokov model in 2011.
This model is defined in the series of references:
Modified from GK16Model to perform numerical integration (and remove cln dependency).
Available GPD types: H, E, Ht, Et.
May 2017 : Update to correct pion pole issue in Et as in GK16Model.
| PARTONS::GPDGK16Numerical::GPDGK16Numerical | ( | 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.
Use by the factory.
| other |
|
protected |
|
protected |
|
protected |
|
protected |
|
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 E is available to compute.
Reimplemented from PARTONS::GPDModule.
|
protectedvirtual |
This method can be implemented in the child class if the GPD Et is available to compute.
Reimplemented from 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 |
Pion pole contribution to Et.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
protectedvirtual |
Pure virtual function that provides skeleton for module initialization.
Children must define and override it.
Reimplemented from PARTONS::GPDModule.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
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 |
|
private |
|
virtual |
Return a pre-formatted characters string for output visualization of class member's values.
Reimplemented from PARTONS::GPDModule.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
Unique ID to automatically register the class in the registry.
|
protected |
|
protected |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |