PARTONS
|
PARtonic Tomography Of Nucleon Software
|
Abstract class that provides a skeleton to implement a Convolution of Coefficient Function module. More...
Public Member Functions | |
virtual | ~ConvolCoeffFunctionModule () |
Destructor. More... | |
virtual ConvolCoeffFunctionModule * | clone () const =0 |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. More... | |
virtual std::string | toString () const |
Return a pre-formatted characters string for output visualization of class member's values. 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 | configure (const ElemUtils::Parameters ¶meters) |
Provides a generic method to configure all types of modules by passing a Parameters object. More... | |
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 ResultType | compute (const KinematicType &kinematic, const List< GPDType > &gpdType)=0 |
Computes the coefficient functions at given kinematics. More... | |
virtual List< GPDType > | getListOfAvailableGPDTypeForComputation () const =0 |
Must be implemented in child class. More... | |
GPDModule * | getGPDModule () const |
Get pointer to the underlying GPD module. More... | |
void | setGPDModule (GPDModule *gpdModule) |
Set pointer to the underlying GPD module. More... | |
bool | isGPDModuleDependent () const |
True if this CCF module depends on a GPD module. More... | |
void | setIsGPDModuleDependent (bool isGPDModuleDependent) |
True if this CCF module depends on a GPD 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... | |
Protected Member Functions | |
ConvolCoeffFunctionModule (const std::string &className, ChannelType::Type channelType) | |
Constructor. More... | |
ConvolCoeffFunctionModule (const ConvolCoeffFunctionModule &other) | |
Copy constructor. More... | |
virtual void | setKinematics (const KinematicType &kinematic) |
Set internal kinematics. More... | |
void | setCurrentGPDType (GPDType::Type gpdType) |
Set current GPD type to be computed. 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... | |
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 | m_xi |
Skewness. More... | |
double | m_t |
Mandelstam variable, momentum transfer on the hadron target (in GeV^2). More... | |
double | m_MuF2 |
Factorization scale (in GeV^2). More... | |
double | m_MuR2 |
Renormalization scale (in GeV^2) More... | |
GPDType::Type | m_currentGPDComputeType |
GPDType of the current CFF computation. More... | |
GPDModule * | m_pGPDModule |
Pointer to the underlying GPD module. More... | |
bool | m_isGPDModuleDependent |
Boolean (true if this CCF module depends on a GPD module). More... | |
Protected Attributes inherited from PARTONS::ModuleObject | |
ModuleObjectFactory * | m_pModuleObjectFactory |
Pointer tp module object factory. More... | |
Additional Inherited Members | |
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... | |
Abstract class that provides a skeleton to implement a Convolution of Coefficient Function module.
|
inlinevirtual |
Destructor.
|
inlineprotected |
Constructor.
See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.
className | name of child class. |
channelType | Channel type. |
|
inlineprotected |
Copy constructor.
other | Object to be copied. |
|
pure virtual |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.
Implements PARTONS::ModuleObject.
Implemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DDVCSConvolCoeffFunctionModule, PARTONS::TCSCFFStandard, PARTONS::TCSCFFFromDVCSOnlyNLOPart, PARTONS::TCSCFFFromDVCS, PARTONS::GAM2CFFStandard, PARTONS::DVMPCFFGK06, PARTONS::DVCSCFFStandard, PARTONS::DVCSCFFNN, PARTONS::DVCSCFFHeavyQuark, PARTONS::DVCSCFFDispersionRelation, PARTONS::DVCSCFFConstant, and PARTONS::DDVCSCFFStandard.
|
pure virtual |
Computes the coefficient functions at given kinematics.
kinematic | Kinematics. |
gpdType | Type of CCF to compute. |
Implemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVCSConvolCoeffFunctionModule, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
inlinevirtual |
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::ModuleObject.
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVMPCFFGK06, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DVCSCFFNN, PARTONS::DVCSCFFDispersionRelation, PARTONS::DVCSCFFConstant, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
inline |
Get pointer to the underlying GPD module.
|
pure virtual |
Must be implemented in child class.
Implemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVCSConvolCoeffFunctionModule, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
inlineprotectedvirtual |
Pure virtual function that provides skeleton for module initialization.
Children must define and override it.
Implements PARTONS::ModuleObject.
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::TCSCFFStandard, PARTONS::TCSCFFFromDVCS, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::GAM2CFFStandard, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVMPCFFGK06, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DVCSCFFStandard, PARTONS::DVCSCFFNN, PARTONS::DVCSCFFDispersionRelation, PARTONS::DVCSCFFConstant, PARTONS::DDVCSConvolCoeffFunctionModule, and PARTONS::DDVCSCFFStandard.
|
inline |
True if this CCF module depends on a GPD module.
|
inlineprotectedvirtual |
Pure virtual function that provides skeleton to check if the module is well initialized and configured.
Children must define and override it.
Implements PARTONS::ModuleObject.
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::TCSCFFStandard, PARTONS::TCSCFFFromDVCS, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::GAM2CFFStandard, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVMPCFFGK06, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DVCSCFFStandard, PARTONS::DVCSCFFNN, PARTONS::DVCSCFFDispersionRelation, PARTONS::DVCSCFFConstant, PARTONS::DDVCSConvolCoeffFunctionModule, and PARTONS::DDVCSCFFStandard.
|
inlinevirtual |
Method used in automation to prepare all the modules used by this current module and configure them recursively.
The recursion is linked to the imbrication in XML files.
Can be implemented in the child class if it needs modules not needed by the parent class. But there must be first a call to the parent method.
subModulesData | Data used to retrieve the needed modules and their configuration. |
Reimplemented from PARTONS::ModuleObject.
Reimplemented in PARTONS::DVCSCFFNN, PARTONS::TCSConvolCoeffFunctionModule, PARTONS::TCSCFFStandard, PARTONS::TCSCFFFromDVCS, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::GAM2CFFStandard, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVMPCFFGK06, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DVCSCFFStandard, PARTONS::DVCSCFFDispersionRelation, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
inlinevirtual |
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::ModuleObject.
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::TCSCFFStandard, PARTONS::TCSCFFFromDVCS, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::GAM2CFFStandard, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVMPCFFGK06, PARTONS::DVCSConvolCoeffFunctionModule, PARTONS::DVCSCFFStandard, PARTONS::DVCSCFFNN, PARTONS::DVCSCFFHeavyQuark, PARTONS::DVCSCFFDispersionRelation, PARTONS::DDVCSConvolCoeffFunctionModule, and PARTONS::DDVCSCFFStandard.
|
inlinevirtual |
|
inlineprotected |
Set current GPD type to be computed.
|
inline |
Set pointer to the underlying GPD module.
|
inline |
True if this CCF module depends on a GPD module.
|
inlineprotectedvirtual |
Set internal kinematics.
kinematic | Kinematics to be set. |
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVCSConvolCoeffFunctionModule, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
inlinevirtual |
Return a pre-formatted characters string for output visualization of class member's values.
Reimplemented from PARTONS::ModuleObject.
Reimplemented in PARTONS::TCSConvolCoeffFunctionModule, PARTONS::GAM2ConvolCoeffFunctionModule, PARTONS::DVMPConvolCoeffFunctionModule, PARTONS::DVCSConvolCoeffFunctionModule, and PARTONS::DDVCSConvolCoeffFunctionModule.
|
protected |
GPDType of the current CFF computation.
|
protected |
Boolean (true if this CCF module depends on a GPD module).
|
protected |
Factorization scale (in GeV^2).
|
protected |
Renormalization scale (in GeV^2)
|
protected |
Pointer to the underlying GPD module.
|
protected |
Mandelstam variable, momentum transfer on the hadron target (in GeV^2).
|
protected |
Skewness.