cepgen is hosted by Hepforge, IPPP Durham
CepGen 1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches

Generic partonic level perturbative structure functions built from an external PDFs grid. More...

#include <CepGen/StructureFunctions/PartonicParameterisation.h>

+ Inheritance diagram for PartonicParameterisation:
+ Collaboration diagram for PartonicParameterisation:

Public Types

enum class  Mode { full = 0 , valence = 1 , sea = 2 }
 Quarks types. More...
 

Public Member Functions

 PartonicParameterisation (const ParametersList &)
 
virtual ~PartonicParameterisation ()=default
 
void eval () override final
 Local structure functions evaluation method.
 
const sigrat::ParameterisationsigmaRatio () const
 Longitudinal/transverse cross section ratio parameterisation used to compute \(F_{1/L}\).
 
Parameterisationoperator() (double, double)
 Compute all relevant structure functions for a given \((x_{\rm Bj},Q^2)\) couple.
 
double F2 (double xbj, double q2)
 Transverse structure function.
 
double FL (double xbj, double q2)
 Longitudinal structure function.
 
double W1 (double xbj, double q2)
 Longitudinal form factor.
 
double W2 (double xbj, double q2)
 
double FE (double xbj, double q2)
 Electric proton form factor.
 
double FM (double xbj, double q2)
 Magnetic proton form factor.
 
double F1 (double xbj, double q2)
 \(F_1\) structure function
 
const std::string & name () const
 Module unique indexing name.
 
bool operator== (const SteeredObject &oth) const
 Equality operator.
 
bool operator!= (const SteeredObject &oth) const
 Inequality operator.
 
const ParametersListparameters () const override
 Module user-defined parameters.
 
virtual void setParameters (const ParametersList &params) override
 Set module parameters.
 
void setDescribedParameters (const ParametersList &params_orig)
 Set (documented) module parameters.
 

Static Public Member Functions

static ParametersDescription description ()
 

Protected Member Functions

virtual double evalxQ2 (int flavour, double xbj, double q2)=0
 
virtual ParameterisationcomputeFL (double xbj, double q2)
 Compute the longitudinal structure function for a given point.
 
virtual ParameterisationcomputeFL (double xbj, double q2, double r)
 Compute the longitudinal structure function for a given point.
 
Parameterisationclear ()
 Reset the structure functions values.
 
ParameterisationsetF1F2 (double f1, double f2)
 
ParameterisationsetF2 (double f2)
 
ParameterisationsetFL (double fl)
 
ParameterisationsetW1 (double w1)
 
ParameterisationsetW2 (double w2)
 
ParameterisationsetFE (double fe)
 
ParameterisationsetFM (double fm)
 
double tau (double xbj, double q2) const
 Compute the dimensionless variable \(\tau=\frac{4x_{\rm Bj}^2m_p^2}{Q^2}\).
 
double gamma2 (double xbj, double q2) const
 Dimensionless variable \(\gamma^2=1+\frac{4x_{\rm Bj}^2 m_p^2}{Q^2}=1+\tau\).
 
template<typename T >
steer (const std::string &key) const
 Retrieve a parameters as previously steered.
 
template<typename T , typename U >
U steerAs (const std::string &key) const
 Retrieve a recasted parameters as previously steered.
 
std::string steerName () const
 Retrieve module name from parameters.
 
std::string steerPath (const std::string &key) const
 Retrieve a path from common search paths.
 

Protected Attributes

const unsigned short num_flavours_
 Number of quark flavours considered in the SF building.
 
const Mode mode_
 Quarks types considered in the SF building.
 
const double mp_
 Proton mass, in GeV/c^2.
 
const double mp2_
 Squared proton mass, in GeV^2/c^4.
 
const double mx_min_
 Minimum diffractive mass, in GeV/c^2.
 
Arguments args_
 Last \((x_{\rm Bj},Q^2)\) couple computed.
 
const std::string name_
 Module unique indexing name.
 
ParametersList params_
 Module parameters.
 

Static Protected Attributes

static constexpr std::array< short, 6 > QUARK_PDGS = {{1, 2, 3, 4, 5, 6}}
 
static constexpr std::array< short, 6 > Q_TIMES_3
 

Friends

std::ostream & operator<< (std::ostream &, const Mode &mode)
 

Detailed Description

Definition at line 26 of file PartonicParameterisation.h.

Member Enumeration Documentation

◆ Mode

enum class Mode
strong
Enumerator
full 
valence 
sea 

Definition at line 32 of file PartonicParameterisation.h.

Constructor & Destructor Documentation

◆ PartonicParameterisation()

PartonicParameterisation ( const ParametersList params)
explicit

Definition at line 26 of file PartonicParameterisation.cpp.

◆ ~PartonicParameterisation()

virtual ~PartonicParameterisation ( )
virtualdefault

Member Function Documentation

◆ clear()

Parameterisation & clear ( )
protectedinherited

Definition at line 51 of file Parameterisation.cpp.

◆ computeFL() [1/2]

Parameterisation & computeFL ( double  xbj,
double  q2 
)
protectedvirtualinherited

Reimplemented in ChristyBosted, and Grid.

Definition at line 118 of file Parameterisation.cpp.

◆ computeFL() [2/2]

Parameterisation & computeFL ( double  xbj,
double  q2,
double  r 
)
protectedvirtualinherited

Reimplemented in ChristyBosted, and Grid.

Definition at line 127 of file Parameterisation.cpp.

◆ description()

ParametersDescription description ( )
static

Definition at line 32 of file PartonicParameterisation.cpp.

◆ eval()

void eval ( )
finaloverridevirtual

Implements Parameterisation.

Definition at line 40 of file PartonicParameterisation.cpp.

◆ evalxQ2()

virtual double evalxQ2 ( int  flavour,
double  xbj,
double  q2 
)
protectedpure virtual

◆ F1()

double F1 ( double  xbj,
double  q2 
)
inherited

Definition at line 73 of file Parameterisation.cpp.

◆ F2()

double F2 ( double  xbj,
double  q2 
)
inherited

Definition at line 57 of file Parameterisation.cpp.

◆ FE()

double FE ( double  xbj,
double  q2 
)
inherited

Definition at line 69 of file Parameterisation.cpp.

◆ FL()

double FL ( double  xbj,
double  q2 
)
inherited

Definition at line 59 of file Parameterisation.cpp.

◆ FM()

double FM ( double  xbj,
double  q2 
)
inherited

Definition at line 71 of file Parameterisation.cpp.

◆ gamma2()

double gamma2 ( double  xbj,
double  q2 
) const
protectedinherited

Definition at line 116 of file Parameterisation.cpp.

◆ name()

const std::string & name ( ) const
inherited

Definition at line 42 of file NamedModule.h.

◆ operator!=()

template<typename T >
bool operator!= ( const SteeredObject< T > &  oth) const
inherited

Definition at line 51 of file SteeredObject.h.

◆ operator()()

Parameterisation & operator() ( double  xbj,
double  q2 
)
inherited
Parameters
[in]xbjBjorken's x variable
[in]q2Squared 4-momentum transfer (in GeV^2)

Definition at line 37 of file Parameterisation.cpp.

◆ operator==()

template<typename T >
bool operator== ( const SteeredObject< T > &  oth) const
inherited

Definition at line 49 of file SteeredObject.h.

◆ parameters()

template<typename T >
const ParametersList & parameters ( ) const
overridevirtualinherited

Reimplemented from Steerable.

Definition at line 54 of file SteeredObject.h.

◆ setDescribedParameters()

template<typename T >
void setDescribedParameters ( const ParametersList params_orig)
inherited

Definition at line 73 of file SteeredObject.h.

◆ setF1F2()

Parameterisation & setF1F2 ( double  f1,
double  f2 
)
protectedinherited

Definition at line 77 of file Parameterisation.cpp.

◆ setF2()

Parameterisation & setF2 ( double  f2)
protectedinherited

Definition at line 83 of file Parameterisation.cpp.

◆ setFE()

Parameterisation & setFE ( double  fe)
protectedinherited

Definition at line 104 of file Parameterisation.cpp.

◆ setFL()

Parameterisation & setFL ( double  fl)
protectedinherited

Definition at line 88 of file Parameterisation.cpp.

◆ setFM()

Parameterisation & setFM ( double  fm)
protectedinherited

Definition at line 109 of file Parameterisation.cpp.

◆ setParameters()

template<typename T >
virtual void setParameters ( const ParametersList params)
overridevirtualinherited

Reimplemented from Steerable.

Reimplemented in Initial, Remnants, CutsList, IncomingBeams, and Kinematics.

Definition at line 62 of file SteeredObject.h.

◆ setW1()

Parameterisation & setW1 ( double  w1)
protectedinherited

Definition at line 94 of file Parameterisation.cpp.

◆ setW2()

Parameterisation & setW2 ( double  w2)
protectedinherited

Definition at line 99 of file Parameterisation.cpp.

◆ sigmaRatio()

const sigrat::Parameterisation * sigmaRatio ( ) const
inherited

Definition at line 41 of file Parameterisation.h.

◆ steer()

template<typename T >
T steer ( const std::string &  key) const
protectedinherited

Definition at line 39 of file Steerable.h.

◆ steerAs()

template<typename T , typename U >
U steerAs ( const std::string &  key) const
protectedinherited

Definition at line 44 of file Steerable.h.

◆ steerName()

std::string steerName ( ) const
protectedinherited

Definition at line 48 of file Steerable.h.

◆ steerPath()

std::string steerPath ( const std::string &  key) const
protectedinherited

Definition at line 30 of file Steerable.cpp.

◆ tau()

double tau ( double  xbj,
double  q2 
) const
protectedinherited

Definition at line 114 of file Parameterisation.cpp.

◆ W1()

double W1 ( double  xbj,
double  q2 
)
inherited

Definition at line 65 of file Parameterisation.cpp.

◆ W2()

double W2 ( double  xbj,
double  q2 
)
inherited

Definition at line 67 of file Parameterisation.cpp.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const Mode mode 
)
friend

Definition at line 61 of file PartonicParameterisation.cpp.

Member Data Documentation

◆ args_

Arguments args_
protectedinherited

Definition at line 109 of file Parameterisation.h.

◆ mode_

const Mode mode_
protected

Definition at line 43 of file PartonicParameterisation.h.

◆ mp2_

const double mp2_
protectedinherited

Definition at line 106 of file Parameterisation.h.

◆ mp_

const double mp_
protectedinherited

Definition at line 105 of file Parameterisation.h.

◆ mx_min_

const double mx_min_
protectedinherited

Definition at line 107 of file Parameterisation.h.

◆ name_

const std::string name_
protectedinherited

Definition at line 45 of file NamedModule.h.

◆ num_flavours_

const unsigned short num_flavours_
protected

Definition at line 41 of file PartonicParameterisation.h.

◆ params_

ParametersList params_
mutableprotectedinherited

Definition at line 50 of file Steerable.h.

◆ Q_TIMES_3

constexpr std::array< short, 6 > Q_TIMES_3
staticconstexprprotected
Initial value:
= {{
-1 , 2 , -1 , 2 , -1 , 2
}}

Definition at line 46 of file PartonicParameterisation.h.

◆ QUARK_PDGS

constexpr std::array< short, 6 > QUARK_PDGS = {{1, 2, 3, 4, 5, 6}}
staticconstexprprotected

Definition at line 45 of file PartonicParameterisation.h.