Nanga Parbat 1.1.0
A TMD fitting framework
Public Member Functions | Protected Attributes | List of all members
NangaParbat::Parameterisation Class Reference

Mother class that implements the main feautures of a functional parameterisation of non-perturbative functions. More...

#include <parameterisation.h>

Inheritance diagram for NangaParbat::Parameterisation:
NangaParbat::DWS NangaParbat::MAP21test NangaParbat::MeanReplica NangaParbat::PV17 NangaParbat::PV19 NangaParbat::PV19b NangaParbat::PV19x NangaParbat::PV20Sivers NangaParbat::QGG13 NangaParbat::QGG6

Public Member Functions

 Parameterisation (std::string const &name="", int const &nfuncs=0, std::vector< double > pars={}, bool const &anders=false)
 The "Parameterisation" constructor. More...
 
virtual ~Parameterisation ()
 The "Parameterisation" destructor. More...
 
virtual void SetParameters (std::vector< double > const &pars)
 Function that sets the free parameters of the parameterisation. More...
 
virtual double Evaluate (double const &x, double const &b, double const &zeta, int const &ifunc) const
 Virtual function that returns the value of one of the functions. More...
 
virtual void EvaluateOnGrid ()
 
std::function< double(double const &, double const &, double const &, int const &)> Function () const
 Function that returns the parametrisation in the form of a std::function. More...
 
virtual double Derive (double const &x, double const &b, double const &zeta, int const &ifunc, int const &ipar) const
 Virtual function that returns the value of the derivative of one of the functions. More...
 
virtual void DeriveOnGrid ()
 
std::function< double(double const &, double const &, double const &, int const &, int const &)> Derivative () const
 Function that returns the derivative of the parametrisation in the form of a std::function. More...
 
virtual std::string LatexFormula () const
 Virtual function that returns a string with the formula of the non-perturbative function(s) in LaTex format. More...
 
virtual std::vector< std::string > GetParameterNames () const
 Virtual function that returns a vector of strings containing the names of the parameters in LaTex format. More...
 
virtual std::string GetDescription () const
 Virtual function that returns a short description of the parametrisation. More...
 
virtual std::function< std::map< int, double >(double const &, double const &)> LHAPDF_Function () const
 
virtual std::function< std::map< int, double >(double const &, double const &)> LHAPDF_Derivative (int) const
 
virtual std::function< apfel::Set< apfel::Distribution >(double const &)> DistributionFunction () const
 
virtual std::function< apfel::Set< apfel::Distribution >(double const &)> DistributionDerivative (int) const
 
Getters

Functions to retrieve the feauture of the parameterisation

std::string GetName () const
 
int GetNumberOfFunctions () const
 
virtual std::vector< double > GetParameters () const
 
virtual int GetParameterNumber () const
 
bool HasGradient () const
 

Protected Attributes

std::string _name
 Name of the parameterisation. More...
 
int _nfuncs
 Number of output functions. More...
 
std::vector< double > _pars
 The vector of free parameters. More...
 
bool _anders
 Whether the parametersation provides analytic derivatives. More...
 

Detailed Description

Mother class that implements the main feautures of a functional parameterisation of non-perturbative functions.

Examples
ComputeMeanReplica.cc, PlotTMDs.cc, and RunFit.cc.

Constructor & Destructor Documentation

◆ Parameterisation()

NangaParbat::Parameterisation::Parameterisation ( std::string const &  name = "",
int const &  nfuncs = 0,
std::vector< double >  pars = {},
bool const &  anders = false 
)

The "Parameterisation" constructor.

Parameters
namename of the parameterisation object (default: empty string)
nfuncsnumber of parametric functions (default: 0)
parsvector of parameters (default: empty vector)
anderswhether analytic derivatives are provided

◆ ~Parameterisation()

virtual NangaParbat::Parameterisation::~Parameterisation ( )
inlinevirtual

The "Parameterisation" destructor.

Member Function Documentation

◆ Derivative()

std::function< double(double const &, double const &, double const &, int const &, int const &)> NangaParbat::Parameterisation::Derivative ( ) const

Function that returns the derivative of the parametrisation in the form of a std::function.

◆ Derive()

virtual double NangaParbat::Parameterisation::Derive ( double const &  x,
double const &  b,
double const &  zeta,
int const &  ifunc,
int const &  ipar 
) const
inlinevirtual

Virtual function that returns the value of the derivative of one of the functions.

Parameters
xmomentum fraction
bimpact parameter
zetarapidity scale
ifuncindex of the function;
iparindex of the parameter
Returns
it returns the value of the derivative w.r.t. the ipar-th parameter of the ifunc-th function at (x, b, zeta;)

Reimplemented in NangaParbat::DWS, and NangaParbat::PV19x.

◆ DeriveOnGrid()

virtual void NangaParbat::Parameterisation::DeriveOnGrid ( )
inlinevirtual

◆ DistributionDerivative()

virtual std::function< apfel::Set< apfel::Distribution >(double const &)> NangaParbat::Parameterisation::DistributionDerivative ( int  ) const
inlinevirtual

◆ DistributionFunction()

virtual std::function< apfel::Set< apfel::Distribution >(double const &)> NangaParbat::Parameterisation::DistributionFunction ( ) const
inlinevirtual

◆ Evaluate()

virtual double NangaParbat::Parameterisation::Evaluate ( double const &  x,
double const &  b,
double const &  zeta,
int const &  ifunc 
) const
inlinevirtual

Virtual function that returns the value of one of the functions.

Parameters
xmomentum fraction
bimpact parameter
zetarapidity scale ζ
ifuncindex of the function
Returns
it returns the value of the ifunc-th function at (x, b, ζ)

Reimplemented in NangaParbat::DWS, NangaParbat::MAP21test, NangaParbat::PV17, NangaParbat::PV19, NangaParbat::PV19b, NangaParbat::PV19x, NangaParbat::PV20Sivers, NangaParbat::QGG13, NangaParbat::QGG6, and NangaParbat::MeanReplica.

Examples
PlotTMDs.cc.

◆ EvaluateOnGrid()

virtual void NangaParbat::Parameterisation::EvaluateOnGrid ( )
inlinevirtual

◆ Function()

std::function< double(double const &, double const &, double const &, int const &)> NangaParbat::Parameterisation::Function ( ) const

Function that returns the parametrisation in the form of a std::function.

Examples
RunFit.cc.

◆ GetDescription()

virtual std::string NangaParbat::Parameterisation::GetDescription ( ) const
inlinevirtual

Virtual function that returns a short description of the parametrisation.

Reimplemented in NangaParbat::DWS, NangaParbat::MAP21test, NangaParbat::PV17, NangaParbat::PV19, NangaParbat::PV19b, NangaParbat::PV19x, NangaParbat::PV20Sivers, NangaParbat::QGG13, and NangaParbat::QGG6.

◆ GetName()

std::string NangaParbat::Parameterisation::GetName ( ) const
inline

◆ GetNumberOfFunctions()

int NangaParbat::Parameterisation::GetNumberOfFunctions ( ) const
inline

◆ GetParameterNames()

virtual std::vector< std::string > NangaParbat::Parameterisation::GetParameterNames ( ) const
inlinevirtual

Virtual function that returns a vector of strings containing the names of the parameters in LaTex format.

Reimplemented in NangaParbat::DWS, NangaParbat::MAP21test, NangaParbat::MeanReplica, NangaParbat::PV17, NangaParbat::PV19, NangaParbat::PV19b, NangaParbat::PV19x, NangaParbat::PV20Sivers, NangaParbat::QGG13, and NangaParbat::QGG6.

◆ GetParameterNumber()

virtual int NangaParbat::Parameterisation::GetParameterNumber ( ) const
inlinevirtual

◆ GetParameters()

virtual std::vector< double > NangaParbat::Parameterisation::GetParameters ( ) const
inlinevirtual

◆ HasGradient()

bool NangaParbat::Parameterisation::HasGradient ( ) const
inline

◆ LatexFormula()

virtual std::string NangaParbat::Parameterisation::LatexFormula ( ) const
inlinevirtual

Virtual function that returns a string with the formula of the non-perturbative function(s) in LaTex format.

Reimplemented in NangaParbat::DWS, NangaParbat::MAP21test, NangaParbat::MeanReplica, NangaParbat::PV17, NangaParbat::PV19, NangaParbat::PV19b, NangaParbat::PV19x, NangaParbat::PV20Sivers, NangaParbat::QGG13, and NangaParbat::QGG6.

◆ LHAPDF_Derivative()

virtual std::function< std::map< int, double >(double const &, double const &)> NangaParbat::Parameterisation::LHAPDF_Derivative ( int  ) const
inlinevirtual

◆ LHAPDF_Function()

virtual std::function< std::map< int, double >(double const &, double const &)> NangaParbat::Parameterisation::LHAPDF_Function ( ) const
inlinevirtual

◆ SetParameters()

virtual void NangaParbat::Parameterisation::SetParameters ( std::vector< double > const &  pars)
inlinevirtual

Function that sets the free parameters of the parameterisation.

Parameters
parsthe vector of parameters
Examples
PlotTMDs.cc, and RunFit.cc.

Member Data Documentation

◆ _anders

bool NangaParbat::Parameterisation::_anders
protected

Whether the parametersation provides analytic derivatives.

◆ _name

std::string NangaParbat::Parameterisation::_name
protected

Name of the parameterisation.

◆ _nfuncs

int NangaParbat::Parameterisation::_nfuncs
protected

Number of output functions.

◆ _pars

std::vector<double> NangaParbat::Parameterisation::_pars
protected

The vector of free parameters.


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