9 #ifndef ThePEG_GRVBase_H
10 #define ThePEG_GRVBase_H
13 #include "ThePEG/PDF/PDFBase.h"
63 double l, Energy2 particleScale)
const;
71 double l, Energy2 particleScale)
const;
82 double S()
const {
return theS; }
132 virtual void setup(
double l, Energy2 scale)
const = 0;
138 void setup(
double l, Energy2 scale, Energy2 mu2, Energy2 lam2)
const;
143 double valens(
double N,
double ak,
double bk,
144 double a,
double b,
double c,
double d)
const;
150 double lightsea(
double al,
double be,
double ak,
double bk,
double a,
151 double b,
double c,
double d,
double e,
double es)
const;
156 double heavysea(
double sth,
double al,
double be,
double ak,
double ag,
157 double b,
double d,
double e,
double es)
const;
163 virtual double uv()
const = 0;
169 virtual double dv()
const = 0;
175 virtual double del()
const = 0;
181 virtual double udb()
const = 0;
187 virtual double sb()
const = 0;
193 virtual double cb()
const = 0;
199 virtual double bb()
const = 0;
205 virtual double gl()
const = 0;
double lightsea(double al, double be, double ak, double bk, double a, double b, double c, double d, double e, double es) const
The form of the light sea and gluon density functions.
double fdv() const
fdv() returns the saved values from the dv() functions if present.
virtual double xfvl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale, double l, Energy2 particleScale) const
Return the valaens partof the density of parton at the given a scale and log fractional momentum l (t...
double sbSave
Saved values from the different functions.
double fuv() const
fuv() returns the saved values from the quv() functions if present.
GRVBase inherits from PDFBase and is used as a base class for all GRV parton densities.
double rootx() const
Return the square root of the last selected momentum fraction, .
Energy2 theLam2
The last used .
TransientConstRCPtr is a simple wrapper around a bare const pointer which can be assigned to and from...
double valens(double N, double ak, double bk, double a, double b, double c, double d) const
The form of the valens density functions.
double glSave
Saved values from the different functions.
This is the main namespace within which all identifiers in ThePEG are declared.
GRVBase()
Default constructor.
double S() const
Return last selected .
virtual double dv() const =0
Return the value of the d valens density for the values previously given by setup().
double dvSave
Saved values from the different functions.
double rootS() const
Return last selected .
GRVBase & operator=(const GRVBase &)
Private and non-existent assignment operator.
double lx() const
Return last selected logarithmic momentum fraction .
virtual double bb() const =0
Return the value of the b density for the values previously given by setup().
double fsb() const
fsb() returns the saved values from the sb() functions if present.
double fcb() const
fcb() returns the saved values from the cb() functions if present.
double cbSave
Saved values from the different functions.
virtual bool canHandleParticle(tcPDPtr particle) const
Return true if this PDF can handle the extraction of parton from the given particle, ie.
double fbb() const
fbb() returns the saved values from the bb() functions if present.
PDFBase is the base class for implementing parton density functions for particles with sub-structure...
virtual double gl() const =0
Return the value of the gluon densities for the values previously given by setup().
double delSave
Saved values from the different functions.
double theS2
Return last selected .
Energy2 theMu2
The last used .
vector< cPDPtr > cPDVector
A vector of pointers to const ParticleData objects.
virtual cPDVector partons(tcPDPtr p) const
Return the parton types which are described by these parton densities.
double theLx
The last selected logarithmic momentum fraction .
double bbSave
Saved values from the different functions.
double fudb() const
fudb() returns the saved values from the udb() functions if present.
double thex
THe last selected momentum fraction, .
double theRootx
The square root of the last selected momentum fraction, .
double theEps
One minus the last selected momentum fraction, eps .
double heavysea(double sth, double al, double be, double ak, double ag, double b, double d, double e, double es) const
The form of the heavy sea density functions.
double uvSave
Saved values from the different functions.
double S2() const
Return last selected .
virtual double cb() const =0
Return the value of the c density for the values previously given by setup().
double fgl() const
fgl() returns the saved values from the gl() functions if present.
double theRootS
Return last selected .
double eps() const
Return one minus the last selected momentum fraction, eps .
static void Init()
Standard Init function used to initialize the interface.
virtual double sb() const =0
Return the value of the s density for the values previously given by setup().
virtual double del() const =0
Return the value of the difference between the u and d sea densities for the values previously given ...
virtual double xfl(tcPDPtr particle, tcPDPtr parton, Energy2 partonScale, double l, Energy2 particleScale) const
Return the value of the density of parton at the given a scale and log fractional momentum l (the opt...
double fdel() const
fdel() returns the saved values from the del() functions if present.
double theS
The last selected .
double S3() const
Return last selected .
virtual double udb() const =0
Return the value of the average u and d sea densities for the values previously given by setup()...
virtual double uv() const =0
Return the value of the u valens density for the values previously given by setup().
double x() const
Return last selected momentum fraction, .
double udbSave
Saved values from the different functions.
virtual ~GRVBase()
Destructor.
virtual void setup(double l, Energy2 scale) const =0
Setup the l and scale to be used in the following call to uv(), dv)=, etc.
Energy2 Q2
The last selected scale.
double theS3
Return last selected .