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::ActiveFlavorsThresholdsModule Class Referenceabstract

Abstract class for modules defining number of quark flavors intervals. More...

Inheritance diagram for PARTONS::ActiveFlavorsThresholdsModule:
PARTONS::ModuleObject PARTONS::BaseObject PARTONS::ActiveFlavorsThresholdsConstant PARTONS::ActiveFlavorsThresholdsQuarkMasses PARTONS::ActiveFlavorsThresholdsVariable

Public Member Functions

 ActiveFlavorsThresholdsModule (const std::string &className)
 Constructor. More...
 
virtual ~ActiveFlavorsThresholdsModule ()
 Destructor. More...
 
virtual ActiveFlavorsThresholdsModuleclone () const =0
 Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. 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 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 std::string toString () const
 Return a pre-formatted characters string for output visualization of class member's values. 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...
 
ActiveFlavorsThresholds getNfInterval (double Mu2) const
 Get interval for a specific value of the factorization scale squared. More...
 
std::vector< ActiveFlavorsThresholdsgetNfIntervals (double Mu2Min, double Mu2Max) const
 Get intervals for a specific range of the factorization scale squared. More...
 
std::vector< ActiveFlavorsThresholdsgetNfIntervals () const
 Get intervals for the entire range of the factorization scale squared. More...
 
- 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 ACTIVE_FLAVORS_THRESHOLDS_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

 ActiveFlavorsThresholdsModule (const ActiveFlavorsThresholdsModule &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...
 
void addNfInterval (unsigned short nfValue, double lowerBound, double upperBound)
 Add a new interval. More...
 
void reset ()
 Reset vector containing defined integrals. 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 checkCurveIntegrity ()
 Perform a set of test in order to check the consistency of defined integrals. More...
 

Private Attributes

std::vector< ActiveFlavorsThresholdsm_nfFunctionOfMu2
 Vector containing defined integrals. More...
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::ModuleObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer tp module object factory. More...
 

Detailed Description

Abstract class for modules defining number of quark flavors intervals.

This class acts as an abstract (mother) class for modules that define the number of quark flavors intervals. These intervals are used e.g. by the evolution modules to evaluate the number of active quark flavors for a given factorization scale squared.

Constructor & Destructor Documentation

◆ ActiveFlavorsThresholdsModule() [1/2]

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

Constructor.

Parameters
classNameName of class.

◆ ~ActiveFlavorsThresholdsModule()

PARTONS::ActiveFlavorsThresholdsModule::~ActiveFlavorsThresholdsModule ( )
virtual

Destructor.

◆ ActiveFlavorsThresholdsModule() [2/2]

PARTONS::ActiveFlavorsThresholdsModule::ActiveFlavorsThresholdsModule ( const ActiveFlavorsThresholdsModule other)
protected

Copy constructor.

Parameters
otherObject to be copied.

Member Function Documentation

◆ addNfInterval()

void PARTONS::ActiveFlavorsThresholdsModule::addNfInterval ( unsigned short  nfValue,
double  lowerBound,
double  upperBound 
)
protected

Add a new interval.

Parameters
nfValueNumber of active quark flavors in the new interval.
lowerBoundLower bound of the new interval.
upperBoundUpper bound of the new interval.

◆ checkCurveIntegrity()

void PARTONS::ActiveFlavorsThresholdsModule::checkCurveIntegrity ( )
private

Perform a set of test in order to check the consistency of defined integrals.

◆ clone()

virtual ActiveFlavorsThresholdsModule* PARTONS::ActiveFlavorsThresholdsModule::clone ( ) const
pure virtual

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

Returns

Implements PARTONS::ModuleObject.

Implemented in PARTONS::ActiveFlavorsThresholdsVariable, PARTONS::ActiveFlavorsThresholdsQuarkMasses, and PARTONS::ActiveFlavorsThresholdsConstant.

◆ configure()

void PARTONS::ActiveFlavorsThresholdsModule::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::ModuleObject.

Reimplemented in PARTONS::ActiveFlavorsThresholdsVariable, and PARTONS::ActiveFlavorsThresholdsConstant.

◆ getNfInterval()

ActiveFlavorsThresholds PARTONS::ActiveFlavorsThresholdsModule::getNfInterval ( double  Mu2) const

Get interval for a specific value of the factorization scale squared.

Parameters
Mu2Factorization scale squared value.
Returns
Requested interval. If Mu2 is smaller than the lower bound of the first defined interval returns this interval. If Mu2 is larger than the upper bound of the last defined interval returns this interval.

◆ getNfIntervals() [1/2]

std::vector<ActiveFlavorsThresholds> PARTONS::ActiveFlavorsThresholdsModule::getNfIntervals ( ) const
inline

Get intervals for the entire range of the factorization scale squared.

◆ getNfIntervals() [2/2]

std::vector< ActiveFlavorsThresholds > PARTONS::ActiveFlavorsThresholdsModule::getNfIntervals ( double  Mu2Min,
double  Mu2Max 
) const

Get intervals for a specific range of the factorization scale squared.

Parameters
Mu2MinFactorization scale squared minimum value.
Mu2MaxFactorization scale squared maximum value.
Returns
If lowerBound > upperBound a single interval with the number of active flavors corresponding to lowerBound is returned. Otherwise, a vector containing intervals for the requested range of factorization scale.

◆ initModule()

void PARTONS::ActiveFlavorsThresholdsModule::initModule ( )
protectedvirtual

Pure virtual function that provides skeleton for module initialization.

Children must define and override it.

Implements PARTONS::ModuleObject.

Reimplemented in PARTONS::ActiveFlavorsThresholdsVariable, PARTONS::ActiveFlavorsThresholdsQuarkMasses, and PARTONS::ActiveFlavorsThresholdsConstant.

◆ isModuleWellConfigured()

void PARTONS::ActiveFlavorsThresholdsModule::isModuleWellConfigured ( )
protectedvirtual

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::ActiveFlavorsThresholdsVariable, PARTONS::ActiveFlavorsThresholdsQuarkMasses, and PARTONS::ActiveFlavorsThresholdsConstant.

◆ prepareSubModules()

void PARTONS::ActiveFlavorsThresholdsModule::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::ModuleObject.

◆ reset()

void PARTONS::ActiveFlavorsThresholdsModule::reset ( )
protected

Reset vector containing defined integrals.

◆ resolveObjectDependencies()

void PARTONS::ActiveFlavorsThresholdsModule::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::ModuleObject.

Reimplemented in PARTONS::ActiveFlavorsThresholdsVariable, and PARTONS::ActiveFlavorsThresholdsConstant.

◆ toString()

std::string PARTONS::ActiveFlavorsThresholdsModule::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::ModuleObject.

Member Data Documentation

◆ ACTIVE_FLAVORS_THRESHOLDS_MODULE_CLASS_NAME

const std::string PARTONS::ActiveFlavorsThresholdsModule::ACTIVE_FLAVORS_THRESHOLDS_MODULE_CLASS_NAME
static
Initial value:
=
"ActiveFlavorsThresholdsModule"

Type of module name used by the automatization.

◆ m_nfFunctionOfMu2

std::vector<ActiveFlavorsThresholds> PARTONS::ActiveFlavorsThresholdsModule::m_nfFunctionOfMu2
private

Vector containing defined integrals.


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