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::RunningAlphaStrongStandard Class Reference

Evaluation of the strong running coupling constant in the \(\overline{MS}\) scheme. More...

Inheritance diagram for PARTONS::RunningAlphaStrongStandard:
PARTONS::RunningAlphaStrongModule PARTONS::ModuleObject PARTONS::BaseObject

Public Member Functions

 RunningAlphaStrongStandard (const std::string &className)
 Constructor. More...
 
virtual RunningAlphaStrongStandardclone () const
 Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. More...
 
virtual ~RunningAlphaStrongStandard ()
 Destructor. More...
 
virtual double compute ()
 Evaluate \(\alpha_{s}\). More...
 
unsigned int GetColourNumber () const
 Get number of colors (SU( \(n_{c}\))) More...
 
- Public Member Functions inherited from PARTONS::RunningAlphaStrongModule
 RunningAlphaStrongModule (const std::string &className)
 Constructor. More...
 
virtual ~RunningAlphaStrongModule ()
 Destructor. 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...
 
double compute (double Mu2)
 Evaluate \(\alpha_{s}\) for a given value of renormalization scale squared. More...
 
unsigned int getNf () const
 
void setNf (unsigned int nf)
 
- 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 unsigned int classId
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::RunningAlphaStrongModule
static const std::string RUNNING_ALPHA_STRONG_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

 RunningAlphaStrongStandard (const RunningAlphaStrongStandard &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...
 
- Protected Member Functions inherited from PARTONS::RunningAlphaStrongModule
 RunningAlphaStrongModule (const RunningAlphaStrongModule &other)
 Copy constructor. More...
 
void preCompute (const double Mu2)
 Do a pre-evaluation steps before the evaluation of \(\alpha_{s}\). More...
 
bool isPreviousKinematicsDifferent (const double MuF2) const
 Check if previous kinematics is different than the actual one. 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 ComputeExpansionCoefficients (unsigned int NFlavour)
 Evaluate beta function coefficients for a fixed number of flavors. More...
 
void ComputeLambdaQCD ()
 Evaluate \(\Lambda_{QCD}\) for different number of flavors. More...
 
void Running (double Mu, double Lambda, unsigned int NFlavour)
 Evaluate \(\alpha_s\) at four loops. More...
 
double FindLambda (double Lambda, std::vector< double > Parameters)
 Returns \(\Lambda_{QCD}\) from \(\alpha_s\) at given scale. More...
 

Private Attributes

unsigned int fNc
 Number of colors (SU( \(n_{c}\))). More...
 
double fBeta0
 1st coefficient of beta function expansion. More...
 
double fBeta1
 2nd coefficient of beta function expansion. More...
 
double fBeta2
 3rd coefficient of beta function expansion. More...
 
double fBeta3
 4th coefficient of beta function expansion. More...
 
double fB1
 Reduced coefficient RunningAlphaStrong::fBeta1 / RunningAlphaStrong::fBeta0. More...
 
double fB2
 Reduced coefficient RunningAlphaStrong::fBeta2 / RunningAlphaStrong::fBeta0. More...
 
double fB3
 Reduced coefficient RunningAlphaStrong::fBeta3 / RunningAlphaStrong::fBeta0. More...
 
double fLambdaQCD3
 \(\Lambda_{QCD}(n_{f} = 3)\). More...
 
double fLambdaQCD4
 \(\Lambda_{QCD}(n_{f} = 4)\). More...
 
double fLambdaQCD5
 \(\Lambda_{QCD}(n_{f} = 5)\). More...
 
double fLambdaQCD6
 \(\Lambda_{QCD}(n_{f} = 6)\). More...
 
double fAlphaSMZ
 Reference value of strong coupling. More...
 
double fAlphaS
 Current value of strong coupling. More...
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::RunningAlphaStrongModule
double m_Mu2
 Current renormalization scale squared (in \(GeV^2\)) More...
 
double m_Mu
 Current renormalization scale (in \(GeV\)) More...
 
unsigned int m_nf
 Number of active quark flavors. More...
 
double m_alphaS
 Value of \(\alpha_{s}\) for the current renormalization scale. More...
 
- Protected Attributes inherited from PARTONS::ModuleObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer tp module object factory. More...
 

Detailed Description

Evaluation of the strong running coupling constant in the \(\overline{MS}\) scheme.

This module evaluates the strong running coupling constant in the \(\overline{MS}\) scheme. It takes \(\alpha(M_Z)\) and quark masses (c, b and t) as inputs and computes the evolution downwards to get \(\Lambda_{QCD}\) for different numbers of active flavors. Then \(\alpha(M_Z)\) is computed at the required scale.

For an example of usage of this module see the abstract class documentation.

Note 1: Quark masses and \(\alpha(M_Z)\) are defined in FundamentalPhysicalConstants.h. These values come from Ref. [20]

Note 2: The convention for the QCD beta function is the following:
\(\frac{d \alpha_{s}(n_{f})}{d \ln(\mu^2)} = \beta ( \alpha_{s} ) = - \sum_{n=1}^\infty \beta_{n-1} \times ( \alpha_{s} / \pi )^{(n+1)}\)

Constructor & Destructor Documentation

◆ RunningAlphaStrongStandard() [1/2]

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

Constructor.

Parameters
classNameName of class.

◆ ~RunningAlphaStrongStandard()

PARTONS::RunningAlphaStrongStandard::~RunningAlphaStrongStandard ( )
virtual

Destructor.

◆ RunningAlphaStrongStandard() [2/2]

PARTONS::RunningAlphaStrongStandard::RunningAlphaStrongStandard ( const RunningAlphaStrongStandard other)
protected

Copy constructor.

Parameters
otherObject to be copied.

Member Function Documentation

◆ clone()

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

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

Returns

Implements PARTONS::RunningAlphaStrongModule.

◆ compute()

double PARTONS::RunningAlphaStrongStandard::compute ( )
virtual

Evaluate \(\alpha_{s}\).

The value of renormalization scale should be set at this point by RunningAlphaStrongModule::preCompute() function.

Returns

Implements PARTONS::RunningAlphaStrongModule.

◆ ComputeExpansionCoefficients()

void PARTONS::RunningAlphaStrongStandard::ComputeExpansionCoefficients ( unsigned int  NFlavour)
private

Evaluate beta function coefficients for a fixed number of flavors.

\(n_{c}\)-independent expressions (not used) are given in [5].
\(n_{c}\)-dependent expressions (used) are given in [6].

Parameters
NFlavourNumber of flavors.

◆ ComputeLambdaQCD()

void PARTONS::RunningAlphaStrongStandard::ComputeLambdaQCD ( )
private

Evaluate \(\Lambda_{QCD}\) for different number of flavors.

◆ FindLambda()

double PARTONS::RunningAlphaStrongStandard::FindLambda ( double  Lambda,
std::vector< double >  Parameters 
)
private

Returns \(\Lambda_{QCD}\) from \(\alpha_s\) at given scale.

◆ GetColourNumber()

unsigned int PARTONS::RunningAlphaStrongStandard::GetColourNumber ( ) const

Get number of colors (SU( \(n_{c}\)))

◆ initModule()

void PARTONS::RunningAlphaStrongStandard::initModule ( )
protectedvirtual

Pure virtual function that provides skeleton for module initialization.

Children must define and override it.

Reimplemented from PARTONS::RunningAlphaStrongModule.

◆ isModuleWellConfigured()

void PARTONS::RunningAlphaStrongStandard::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::RunningAlphaStrongModule.

◆ Running()

void PARTONS::RunningAlphaStrongStandard::Running ( double  Mu,
double  Lambda,
unsigned int  NFlavour 
)
private

Evaluate \(\alpha_s\) at four loops.

Member Data Documentation

◆ classId

const unsigned int PARTONS::RunningAlphaStrongStandard::classId
static
Initial value:
=
new RunningAlphaStrongStandard("RunningAlphaStrongStandard"))
unsigned int registerBaseObject(BaseObject *pBaseObject)
Store a unique instance of a module identified by a unique string character key.
Definition: BaseObjectRegistry.cpp:45
static BaseObjectRegistry * getInstance()
Static function to be able to retrieve a unique instance pointer of this class anywhere in the code.
Definition: BaseObjectRegistry.cpp:15
RunningAlphaStrongStandard(const std::string &className)
Constructor.
Definition: RunningAlphaStrongStandard.cpp:72

Unique ID to automatically register the class in the registry.

◆ fAlphaS

double PARTONS::RunningAlphaStrongStandard::fAlphaS
private

Current value of strong coupling.

◆ fAlphaSMZ

double PARTONS::RunningAlphaStrongStandard::fAlphaSMZ
private

Reference value of strong coupling.

◆ fB1

double PARTONS::RunningAlphaStrongStandard::fB1
private

Reduced coefficient RunningAlphaStrong::fBeta1 / RunningAlphaStrong::fBeta0.

◆ fB2

double PARTONS::RunningAlphaStrongStandard::fB2
private

Reduced coefficient RunningAlphaStrong::fBeta2 / RunningAlphaStrong::fBeta0.

◆ fB3

double PARTONS::RunningAlphaStrongStandard::fB3
private

Reduced coefficient RunningAlphaStrong::fBeta3 / RunningAlphaStrong::fBeta0.

◆ fBeta0

double PARTONS::RunningAlphaStrongStandard::fBeta0
private

1st coefficient of beta function expansion.

◆ fBeta1

double PARTONS::RunningAlphaStrongStandard::fBeta1
private

2nd coefficient of beta function expansion.

◆ fBeta2

double PARTONS::RunningAlphaStrongStandard::fBeta2
private

3rd coefficient of beta function expansion.

◆ fBeta3

double PARTONS::RunningAlphaStrongStandard::fBeta3
private

4th coefficient of beta function expansion.

◆ fLambdaQCD3

double PARTONS::RunningAlphaStrongStandard::fLambdaQCD3
private

\(\Lambda_{QCD}(n_{f} = 3)\).

◆ fLambdaQCD4

double PARTONS::RunningAlphaStrongStandard::fLambdaQCD4
private

\(\Lambda_{QCD}(n_{f} = 4)\).

◆ fLambdaQCD5

double PARTONS::RunningAlphaStrongStandard::fLambdaQCD5
private

\(\Lambda_{QCD}(n_{f} = 5)\).

◆ fLambdaQCD6

double PARTONS::RunningAlphaStrongStandard::fLambdaQCD6
private

\(\Lambda_{QCD}(n_{f} = 6)\).

◆ fNc

unsigned int PARTONS::RunningAlphaStrongStandard::fNc
private

Number of colors (SU( \(n_{c}\))).


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