APFEL 4.8.0
A PDF evolution library in C++
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
apfel::MatchedEvolution< T > Class Template Referenceabstract

The MatchedEvolution class is a template mother class for the computation of the running of a generic quantity in a VFNS. It provides the basic ingredients for the computation and the heavy-quark threshold matching of the running of a given object. More...

#include <matchedevolution.h>

Public Member Functions

 MatchedEvolution ()=delete
 
virtual ~MatchedEvolution ()=default
 
 MatchedEvolution (T const &ObjRef, double const &MuRef, std::vector< double > const &Thresholds, int const &nsteps=10)
 The MatchedEvolution constructor.
 
virtual T EvolveObject (int const &nf, double const &t0, double const &t1, T const &Obj0) const
 Virtual function for the computation of the evolution.
 
virtual T MatchObject (bool const &Up, int const &nf, T const &Obj) const =0
 Pure virtual function for the computation of the matching.
 
virtual T Derivative (int const &nf, double const &Mu, T const &Obj) const =0
 Pure virtual function for the computation of the r.h.s. of a ODE (the derivative).
 
Evaluate (double const &mu) const
 Function that returns the evolved object.
 
Getters
GetObjectRef () const
 Function that returns the reference value of the object.
 
double GetMuRef () const
 Function that returns the reference scale.
 
std::vector< double > GetThresholds () const
 Function that returns the values of the thresholds.
 
int GetNumberOfSteps () const
 Function that returns the number of steps.
 
Setters
void SetObjectRef (T ObjRef)
 Function that sets the reference value of the object.
 
void SetMuRef (double const &MuRef)
 Function that sets the reference scale.
 
void SetNumberOfSteps (int const &nsteps)
 Function that sets the number of steps of the RK algorithm.
 

Protected Attributes

_ObjRef
 
double _MuRef
 
double _MuRef2
 
double _LogMuRef2
 
std::vector< double > _Thresholds
 
int _nsteps
 
std::vector< double > _Thresholds2
 
std::vector< double > _LogThresholds2
 

Detailed Description

template<class T>
class apfel::MatchedEvolution< T >

The MatchedEvolution class is a template mother class for the computation of the running of a generic quantity in a VFNS. It provides the basic ingredients for the computation and the heavy-quark threshold matching of the running of a given object.

Constructor & Destructor Documentation

◆ MatchedEvolution() [1/2]

template<class T >
apfel::MatchedEvolution< T >::MatchedEvolution ( )
delete

◆ ~MatchedEvolution()

template<class T >
virtual apfel::MatchedEvolution< T >::~MatchedEvolution ( )
virtualdefault

◆ MatchedEvolution() [2/2]

template<class T >
apfel::MatchedEvolution< T >::MatchedEvolution ( T const & ObjRef,
double const & MuRef,
std::vector< double > const & Thresholds,
int const & nsteps = 10 )

The MatchedEvolution constructor.

Parameters
ObjRefthe reference object
MuRefthe reference scale
Thresholdsvector with the heavy quark threholds
nstepsnumber of steps of the ODE solver (default: 10)

Member Function Documentation

◆ Derivative()

template<class T >
virtual T apfel::MatchedEvolution< T >::Derivative ( int const & nf,
double const & Mu,
T const & Obj ) const
pure virtual

Pure virtual function for the computation of the r.h.s. of a ODE (the derivative).

Parameters
nfthe number of active flavours
Muthe scale at which the derivative is computed
Objthe object used to compute the derivative
Returns
the r.h.s. of the ODE

Implemented in apfel::AlphaQCDg, apfel::AlphaQCD, apfel::AlphaQCDxi, apfel::AlphaQED, and apfel::AlphaQCDQED.

◆ Evaluate()

template<class T >
T apfel::MatchedEvolution< T >::Evaluate ( double const & mu) const

Function that returns the evolved object.

Parameters
muthe final scale
Returns
the evolved object.

◆ EvolveObject()

template<class T >
virtual T apfel::MatchedEvolution< T >::EvolveObject ( int const & nf,
double const & t0,
double const & t1,
T const & Obj0 ) const
virtual

Virtual function for the computation of the evolution.

Parameters
nfthe number of active flavours
t0the initial value of the scale
t1the final value of the scale
Obj0the starting object
Returns
the object evolved at the scale mu2

Reimplemented in apfel::AlphaQCDg.

◆ GetMuRef()

template<class T >
double apfel::MatchedEvolution< T >::GetMuRef ( ) const
inline

Function that returns the reference scale.

◆ GetNumberOfSteps()

template<class T >
int apfel::MatchedEvolution< T >::GetNumberOfSteps ( ) const
inline

Function that returns the number of steps.

◆ GetObjectRef()

template<class T >
T apfel::MatchedEvolution< T >::GetObjectRef ( ) const
inline

Function that returns the reference value of the object.

◆ GetThresholds()

template<class T >
std::vector< double > apfel::MatchedEvolution< T >::GetThresholds ( ) const
inline

Function that returns the values of the thresholds.

◆ MatchObject()

template<class T >
virtual T apfel::MatchedEvolution< T >::MatchObject ( bool const & Up,
int const & nf,
T const & Obj ) const
pure virtual

Pure virtual function for the computation of the matching.

Parameters
Upthe direction of the matching: "true" = upward, "false" = downward
nfthe number of active flavours
Objthe object to be matched
Returns
the matched object on the other side of the threshold

Implemented in apfel::AlphaQCD, apfel::AlphaQCDg, apfel::AlphaQCDxi, apfel::AlphaQED, and apfel::AlphaQCDQED.

◆ SetMuRef()

template<class T >
void apfel::MatchedEvolution< T >::SetMuRef ( double const & MuRef)
inline

Function that sets the reference scale.

Parameters
MuRefthe reference scale

◆ SetNumberOfSteps()

template<class T >
void apfel::MatchedEvolution< T >::SetNumberOfSteps ( int const & nsteps)
inline

Function that sets the number of steps of the RK algorithm.

Parameters
nstepsthe number of steps

◆ SetObjectRef()

template<class T >
void apfel::MatchedEvolution< T >::SetObjectRef ( T ObjRef)
inline

Function that sets the reference value of the object.

Parameters
ObjRefthe reference object

Member Data Documentation

◆ _LogMuRef2

template<class T >
double apfel::MatchedEvolution< T >::_LogMuRef2
protected

◆ _LogThresholds2

template<class T >
std::vector<double> apfel::MatchedEvolution< T >::_LogThresholds2
protected

◆ _MuRef

template<class T >
double apfel::MatchedEvolution< T >::_MuRef
protected

◆ _MuRef2

template<class T >
double apfel::MatchedEvolution< T >::_MuRef2
protected

◆ _nsteps

template<class T >
int apfel::MatchedEvolution< T >::_nsteps
protected

◆ _ObjRef

template<class T >
T apfel::MatchedEvolution< T >::_ObjRef
protected

◆ _Thresholds

template<class T >
std::vector<double> apfel::MatchedEvolution< T >::_Thresholds
protected

◆ _Thresholds2

template<class T >
std::vector<double> apfel::MatchedEvolution< T >::_Thresholds2
protected

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