|
virtual | ~PDF () |
| Virtual destructor, to allow unfettered inheritance.
|
|
void | print (std::ostream &os=std::cout, int verbosity=1) const |
| Summary printout.
|
|
|
virtual double | xMin () |
| Minimum valid x value for this PDF.
|
|
virtual double | xMax () |
| Maximum valid x value for this PDF.
|
|
virtual double | qMin () |
|
virtual double | qMax () |
| Maximum valid Q value for this PDF (in GeV). More...
|
|
virtual double | q2Min () |
| Minimum valid Q2 value for this PDF (in GeV2).
|
|
virtual double | q2Max () |
| Maximum valid Q2 value for this PDF (in GeV2).
|
|
int | forcePositive () const |
| Check whether the PDF is set to only return positive (definite) values or not. More...
|
|
void | setForcePositive (int mode) |
| Set whether the PDF will only return positive (definite) values or not.
|
|
bool | inPhysicalRangeX (double x) const |
| Check whether the given x is physically valid. More...
|
|
bool | inPhysicalRangeQ2 (double q2) const |
| Check whether the given Q2 is physically valid. More...
|
|
bool | inPhysicalRangeQ (double q) const |
| Check whether the given Q is physically valid. More...
|
|
bool | inPhysicalRangeXQ2 (double x, double q2) const |
| Check whether the given (x,Q2) is physically valid.
|
|
bool | inPhysicalRangeXQ (double x, double q) const |
| Check whether the given (x,Q) is physically valid.
|
|
virtual bool | inRangeQ (double q) const |
| Grid range check for Q. More...
|
|
virtual bool | inRangeQ2 (double q2) const =0 |
| Grid range check for Q2. More...
|
|
virtual bool | inRangeX (double x) const =0 |
| Grid range check for x. More...
|
|
virtual bool | inRangeXQ (double x, double q) const |
| Combined range check for x and Q.
|
|
bool | inRangeXQ2 (double x, double q2) const |
| Combined range check for x and Q2.
|
|
|
PDFInfo & | info () |
| Get the info class that actually stores and handles the metadata.
|
|
const PDFInfo & | info () const |
| Get the info class that actually stores and handles the metadata (const version)
|
|
PDFSet & | set () const |
| Get the PDF set of which this is a member. More...
|
|
|
int | memberID () const |
| PDF member local ID number. More...
|
|
int | lhapdfID () const |
| PDF member global LHAPDF ID number. More...
|
|
std::string | description () const |
| Description of this PDF member.
|
|
int | dataversion () const |
| Version of this PDF's data file.
|
|
std::string | type () const |
| Get the type of PDF member that this object represents (central, error)
|
|
|
virtual const std::vector< int > & | flavors () const |
| List of flavours defined by this PDF set. More...
|
|
void | setFlavors (std::vector< int > const &flavors) |
| Manually set/override the list of flavours defined by this PDF set. More...
|
|
bool | hasFlavor (int id) const |
| Checks whether id is a valid parton for this PDF.
|
|
int | orderQCD () const |
| Order of QCD at which this PDF has been constructed. More...
|
|
int | qcdOrder () const |
|
double | quarkMass (int id) const |
| Get a quark mass in GeV by PDG code (|PID| = 1-6 only) More...
|
|
double | quarkThreshold (int id) const |
| Get a flavor scale threshold in GeV by PDG code (|PID| = 1-6 only) Convenience interface to the Mass* and Threshold* info keywords. Returns -1 for an undefined PID. More...
|
|
|
void | setAlphaS (AlphaS *alphas) |
| Set the AlphaS calculator by pointer. More...
|
|
void | setAlphaS (AlphaSPtr alphas) |
| Set the AlphaS calculator by smart pointer.
|
|
bool | hasAlphaS () const |
| Check if an AlphaS calculator is set.
|
|
AlphaS & | alphaS () |
| Retrieve the AlphaS object for this PDF.
|
|
const AlphaS & | alphaS () const |
| Retrieve the AlphaS object for this PDF (const)
|
|
double | alphasQ (double q) const |
| Value of alpha_s(Q2) used by this PDF. More...
|
|
double | alphasQ2 (double q2) const |
| Value of alpha_s(Q2) used by this PDF. More...
|
|
|
virtual double | _xfxQ2 (int id, double x, double q2) const =0 |
| Calculate the PDF xf(x) value at (x,q2) for the given PID. More...
|
|
virtual void | _xfxQ2 (double x, double q2, std::vector< double > &ret) const =0 |
|
double | xfxQ2 (int id, double x, double q2) const |
| Get the PDF xf(x) value at (x,q2) for the given PID. More...
|
|
double | xfxQ (int id, double x, double q) const |
| Get the PDF xf(x) value at (x,q) for the given PID. More...
|
|
void | xfxQ2 (double x, double q2, std::map< int, double > &rtn) const |
| Get the PDF xf(x) value at (x,q2) for all supported PIDs. More...
|
|
void | xfxQ (double x, double q, std::map< int, double > &rtn) const |
| Get the PDF xf(x) value at (x,q) for all supported PIDs. More...
|
|
void | xfxQ2 (double x, double q2, std::vector< double > &rtn) const |
| Get the PDF xf(x) value at (x,q2) for "standard" PIDs. More...
|
|
void | xfxQ (double x, double q, std::vector< double > &rtn) const |
| Get the PDF xf(x) value at (x,q) for "standard" PIDs. More...
|
|
std::map< int, double > | xfxQ2 (double x, double q2) const |
| Get the PDF xf(x) value at (x,q2) for all supported PIDs. More...
|
|
std::map< int, double > | xfxQ (double x, double q) const |
| Get the PDF xf(x) value at (x,q) for all supported PIDs. More...
|
|
PDF is the general interface for access to parton density information.
The PDF interface declares the general form of all PDF types, such as Grid based or analytic.
- Examples
- /examples/analyticpdf.cc, /examples/compatibility.cc, and /tests/testgrid.cc.
virtual double LHAPDF::PDF::_xfxQ2 |
( |
int |
id, |
|
|
double |
x, |
|
|
double |
q2 |
|
) |
| const |
|
protectedpure virtual |
Calculate the PDF xf(x) value at (x,q2) for the given PID.
This is the key function to be overridden in concrete PDF types, since it actually does the calculation of xf(x,Q2) by analytic, interpolation, or other means. The user-called xfxQ2 method exists so that the physical range and PID checks need only be done in one place, rather than need to be re-implemented in each concrete implementation.
- Parameters
-
id | Parton ID in the PDG scheme |
x | Momentum fraction |
q2 | Squared energy (renormalization) scale |
- Returns
- the value of xf(x,q2)
Implemented in LHAPDF::GridPDF.
void LHAPDF::PDF::xfxQ |
( |
double |
x, |
|
|
double |
q, |
|
|
std::vector< double > & |
rtn |
|
) |
| const |
|
inline |
Get the PDF xf(x) value at (x,q) for "standard" PIDs.
This version fills a user-supplied vector to avoid container construction costs on every call.
The filled vector follows the LHAPDF5 convention, with 13 entries running in the PDF ID order [-6, -5, ..., -1, 21, 1, ... 5, 6], i.e. quark PDF values will be at vector index pid+6 and the gluon at index 6.
- Parameters
-
x | Momentum fraction |
q | Energy (renormalization) scale |
rtn | Vector of PDF xf(x,q) values, to be filled |
void LHAPDF::PDF::xfxQ2 |
( |
double |
x, |
|
|
double |
q2, |
|
|
std::vector< double > & |
rtn |
|
) |
| const |
Get the PDF xf(x) value at (x,q2) for "standard" PIDs.
This version fills a user-supplied vector to avoid container construction costs on every call.
The filled vector follows the LHAPDF5 convention, with 13 entries running in the PDF ID order [-6, -5, ..., -1, 21, 1, ... 5, 6], i.e. quark PDF values will be at vector index pid+6 and the gluon at index 6.
- Parameters
-
x | Momentum fraction |
q2 | Squared energy (renormalization) scale |
rtn | Vector of PDF xf(x,q2) values, to be filled |