PARTONS  
PARtonic Tomography Of Nucleon Software
Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | List of all members
PARTONS::GPDEvolutionApfel Class Reference
Inheritance diagram for PARTONS::GPDEvolutionApfel:
PARTONS::GPDEvolutionModule PARTONS::ModuleObject PARTONS::BaseObject

Public Member Functions

 GPDEvolutionApfel (const std::string &className)
 Constructor. More...
 
virtual ~GPDEvolutionApfel ()
 Destructor. More...
 
virtual GPDEvolutionApfelclone () const
 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 configure (const ElemUtils::Parameters &parameters)
 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...
 
void setSubgridNodes (const std::vector< int > &subgridNodes)
 
void setSubgridLowerBounds (const std::vector< double > &subgridLowerBounds)
 
void setSubgridInterDegrees (const std::vector< int > &subgridInterDegrees)
 
void setTabNodes (const int &tabNodes)
 
void setTabLowerBound (const double &tabLowerBound)
 
void setTabUpperBound (const double &tabUpperBound)
 
void setTabInterDegree (const int &tabInterDegree)
 
void setPreviousXi (const double &xi_prev)
 
std::vector< int > getSubgridNodes () const
 
std::vector< double > getSubgridLowerBounds () const
 
std::vector< int > getSubgridInterDegrees () const
 
int getTabNodes () const
 
double getTabLowerBound () const
 
double getTabUpperBound () const
 
int getTabInterDegree () const
 
double getPreviousXi () const
 
std::shared_ptr< apfel::Grid > getGrid () const
 
std::function< double(double const &)> getAlphas () const
 
std::shared_ptr< apfel::TabulateObject< apfel::Set< apfel::Distribution > > > getTabulatedGPDs () const
 
- Public Member Functions inherited from PARTONS::GPDEvolutionModule
 GPDEvolutionModule (const std::string &className)
 Constructor. More...
 
virtual ~GPDEvolutionModule ()
 Destructor. More...
 
PartonDistribution compute (const GPDKinematic &kinematic, GPDModule *pGPDModule, const GPDType::Type &type)
 Evaluate PartonDistribution. More...
 
void setMuF2_ref (const double &MuF2_ref)
 
void setPertOrder (const PerturbativeQCDOrderType::Type &pertOrder)
 
void setGPDType (GPDType::Type type)
 
void setRunningAlphaStrongModule (RunningAlphaStrongModule *runningAlphaStrongModule)
 
void setActiveFlavorsModule (ActiveFlavorsThresholdsModule *activeFlavorsModule)
 
double getMuF2_ref () const
 
double getMuF_ref () const
 
PerturbativeQCDOrderType::Type getPertOrder () const
 
GPDType::Type getGPDType () const
 
RunningAlphaStrongModulegetRunningAlphaStrongModule () const
 
ActiveFlavorsThresholdsModulegetActiveFlavorsModule () const
 
- Public Member Functions inherited from PARTONS::ModuleObject
 ModuleObject (const std::string &className, ChannelType::Type channelType)
 Constructor. More...
 
virtual ~ModuleObject ()
 Default destructor. More...
 
virtual void run ()
 
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 std::string PARAM_NAME_SUBGRID_NODES = "subgridNodes"
 Settable parameters. More...
 
static const std::string PARAM_NAME_SUBGRID_LOWER_BOUNDS = "subgridLowerBounds"
 
static const std::string PARAM_NAME_SUBGRID_INTER_DEGREES = "subgridInterDegrees"
 
static const std::string PARAM_NAME_TAB_NODES = "tabNodes"
 
static const std::string PARAM_NAME_TAB_LOWER_BOUND = "tabLowerBound"
 
static const std::string PARAM_NAME_TAB_UPPER_BOUND = "tabUpperBound"
 
static const std::string PARAM_NAME_TAB_INTER_DEGREE = "tabInterDegree"
 
static const unsigned int classId = BaseObjectRegistry::getInstance()->registerBaseObject(new GPDEvolutionApfel("GPDEvolutionApfel"))
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::GPDEvolutionModule
static const std::string GPD_EVOLUTION_MODULE_CLASS_NAME
 Type of module name used by the automatization. More...
 
- Static Public Attributes inherited from PARTONS::ModuleObject
static const std::string CLASS_NAME = "className"
 

Protected Member Functions

 GPDEvolutionApfel (const GPDEvolutionApfel &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 compute (GPDModule *pGPDModule, const GPDType::Type &type)
 
std::function< std::map< int, double >double const &, double const &)> initialScaleDistributions (GPDModule *pGPDModule)
 
- Protected Member Functions inherited from PARTONS::GPDEvolutionModule
 GPDEvolutionModule (const GPDEvolutionModule &other)
 Copy constructor. More...
 
virtual void setKinematics (const GPDKinematic &kinematic)
 
virtual GPDKinematic getKinematics () const
 
- 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 Attributes

std::vector< int > m_subgridNodes
 
std::vector< double > m_subgridLowerBounds
 
std::vector< int > m_subgridInterDegrees
 
int m_tabNodes
 
double m_tabLowerBound
 
double m_tabUpperBound
 
int m_tabInterDegree
 
double m_xi_prev
 
std::shared_ptr< apfel::Grid > m_g
 
std::function< double(double const &)> m_as
 
std::shared_ptr< apfel::TabulateObject< apfel::Set< apfel::Distribution > > > m_tabulatedGpds
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::GPDEvolutionModule
double m_MuF2_ref
 Attributes. More...
 
PerturbativeQCDOrderType::Type m_pertOrder
 pQCD order assumed in the calculation. More...
 
GPDType::Type m_type
 GPD distribution type. More...
 
RunningAlphaStrongModulem_pRunningAlphaStrongModule
 Pointer to RunningAlphaStrongModule object being used. More...
 
ActiveFlavorsThresholdsModulem_pActiveFlavorsModule
 Pointer to ActiveFlavorsThresholdsModule object being used. More...
 
double m_x
 Kinematics. More...
 
double m_xi
 Skewness variable. More...
 
double m_t
 Four-momentum transfer squared of hadron target (in \(GeV^{2}\)). More...
 
double m_MuF2
 Factorization scale squared (in \(GeV^{2}\)). More...
 
double m_MuR2
 Renormalization scale squared (in \(GeV^{2}\)). More...
 
- Protected Attributes inherited from PARTONS::ModuleObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer tp module object factory. More...
 

Constructor & Destructor Documentation

◆ GPDEvolutionApfel() [1/2]

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

Constructor.

Parameters
classNameName of class.

◆ ~GPDEvolutionApfel()

PARTONS::GPDEvolutionApfel::~GPDEvolutionApfel ( )
virtual

Destructor.

◆ GPDEvolutionApfel() [2/2]

PARTONS::GPDEvolutionApfel::GPDEvolutionApfel ( const GPDEvolutionApfel other)
protected

Copy constructor.

Parameters
otherObject to be copied.

Member Function Documentation

◆ clone()

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

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

Returns

Implements PARTONS::GPDEvolutionModule.

◆ compute()

PartonDistribution PARTONS::GPDEvolutionApfel::compute ( GPDModule pGPDModule,
const GPDType::Type type 
)
protectedvirtual

◆ configure()

void PARTONS::GPDEvolutionApfel::configure ( const ElemUtils::Parameters &  parameters)
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
parametersElemUtils::Parameters object.

Reimplemented from PARTONS::GPDEvolutionModule.

◆ getAlphas()

std::function< double(double const &)> PARTONS::GPDEvolutionApfel::getAlphas ( ) const

◆ getGrid()

std::shared_ptr< apfel::Grid > PARTONS::GPDEvolutionApfel::getGrid ( ) const

◆ getPreviousXi()

double PARTONS::GPDEvolutionApfel::getPreviousXi ( ) const

◆ getSubgridInterDegrees()

std::vector< int > PARTONS::GPDEvolutionApfel::getSubgridInterDegrees ( ) const

◆ getSubgridLowerBounds()

std::vector< double > PARTONS::GPDEvolutionApfel::getSubgridLowerBounds ( ) const

◆ getSubgridNodes()

std::vector< int > PARTONS::GPDEvolutionApfel::getSubgridNodes ( ) const

◆ getTabInterDegree()

int PARTONS::GPDEvolutionApfel::getTabInterDegree ( ) const

◆ getTabLowerBound()

double PARTONS::GPDEvolutionApfel::getTabLowerBound ( ) const

◆ getTabNodes()

int PARTONS::GPDEvolutionApfel::getTabNodes ( ) const

◆ getTabulatedGPDs()

std::shared_ptr< apfel::TabulateObject< apfel::Set< apfel::Distribution > > > PARTONS::GPDEvolutionApfel::getTabulatedGPDs ( ) const

◆ getTabUpperBound()

double PARTONS::GPDEvolutionApfel::getTabUpperBound ( ) const

◆ initialScaleDistributions()

std::function< std::map< int, double >double const &, double const &)> PARTONS::GPDEvolutionApfel::initialScaleDistributions ( GPDModule pGPDModule)
protected

◆ initModule()

void PARTONS::GPDEvolutionApfel::initModule ( )
protectedvirtual

Pure virtual function that provides skeleton for module initialization.

Children must define and override it.

Reimplemented from PARTONS::GPDEvolutionModule.

◆ isModuleWellConfigured()

void PARTONS::GPDEvolutionApfel::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::GPDEvolutionModule.

◆ prepareSubModules()

void PARTONS::GPDEvolutionApfel::prepareSubModules ( const std::map< std::string, BaseObjectData > &  subModulesData)
virtual

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.

Parameters
subModulesDataData used to retrieve the needed modules and their configuration.

Reimplemented from PARTONS::GPDEvolutionModule.

◆ resolveObjectDependencies()

void PARTONS::GPDEvolutionApfel::resolveObjectDependencies ( )
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::GPDEvolutionModule.

◆ setPreviousXi()

void PARTONS::GPDEvolutionApfel::setPreviousXi ( const double &  xi_prev)

◆ setSubgridInterDegrees()

void PARTONS::GPDEvolutionApfel::setSubgridInterDegrees ( const std::vector< int > &  subgridInterDegrees)

◆ setSubgridLowerBounds()

void PARTONS::GPDEvolutionApfel::setSubgridLowerBounds ( const std::vector< double > &  subgridLowerBounds)

◆ setSubgridNodes()

void PARTONS::GPDEvolutionApfel::setSubgridNodes ( const std::vector< int > &  subgridNodes)

◆ setTabInterDegree()

void PARTONS::GPDEvolutionApfel::setTabInterDegree ( const int &  tabInterDegree)

◆ setTabLowerBound()

void PARTONS::GPDEvolutionApfel::setTabLowerBound ( const double &  tabLowerBound)

◆ setTabNodes()

void PARTONS::GPDEvolutionApfel::setTabNodes ( const int &  tabNodes)

◆ setTabUpperBound()

void PARTONS::GPDEvolutionApfel::setTabUpperBound ( const double &  tabUpperBound)

◆ toString()

std::string PARTONS::GPDEvolutionApfel::toString ( ) const
virtual

Return a pre-formatted characters string for output visualization of class member's values.

Returns
a pre-formatted characters string.

Reimplemented from PARTONS::GPDEvolutionModule.

Member Data Documentation

◆ classId

const unsigned int PARTONS::GPDEvolutionApfel::classId = BaseObjectRegistry::getInstance()->registerBaseObject(new GPDEvolutionApfel("GPDEvolutionApfel"))
static

Unique ID to automatically register the class in the registry.

◆ m_as

std::function<double(double const&)> PARTONS::GPDEvolutionApfel::m_as
private

◆ m_g

std::shared_ptr<apfel::Grid> PARTONS::GPDEvolutionApfel::m_g
private

◆ m_subgridInterDegrees

std::vector<int> PARTONS::GPDEvolutionApfel::m_subgridInterDegrees
private

◆ m_subgridLowerBounds

std::vector<double> PARTONS::GPDEvolutionApfel::m_subgridLowerBounds
private

◆ m_subgridNodes

std::vector<int> PARTONS::GPDEvolutionApfel::m_subgridNodes
private

◆ m_tabInterDegree

int PARTONS::GPDEvolutionApfel::m_tabInterDegree
private

◆ m_tabLowerBound

double PARTONS::GPDEvolutionApfel::m_tabLowerBound
private

◆ m_tabNodes

int PARTONS::GPDEvolutionApfel::m_tabNodes
private

◆ m_tabulatedGpds

std::shared_ptr<apfel::TabulateObject<apfel::Set<apfel::Distribution> > > PARTONS::GPDEvolutionApfel::m_tabulatedGpds
private

◆ m_tabUpperBound

double PARTONS::GPDEvolutionApfel::m_tabUpperBound
private

◆ m_xi_prev

double PARTONS::GPDEvolutionApfel::m_xi_prev
private

◆ PARAM_NAME_SUBGRID_INTER_DEGREES

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_SUBGRID_INTER_DEGREES = "subgridInterDegrees"
static

◆ PARAM_NAME_SUBGRID_LOWER_BOUNDS

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_SUBGRID_LOWER_BOUNDS = "subgridLowerBounds"
static

◆ PARAM_NAME_SUBGRID_NODES

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_SUBGRID_NODES = "subgridNodes"
static

Settable parameters.

◆ PARAM_NAME_TAB_INTER_DEGREE

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_TAB_INTER_DEGREE = "tabInterDegree"
static

◆ PARAM_NAME_TAB_LOWER_BOUND

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_TAB_LOWER_BOUND = "tabLowerBound"
static

◆ PARAM_NAME_TAB_NODES

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_TAB_NODES = "tabNodes"
static

◆ PARAM_NAME_TAB_UPPER_BOUND

const std::string PARTONS::GPDEvolutionApfel::PARAM_NAME_TAB_UPPER_BOUND = "tabUpperBound"
static

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