PYTHIA  8.311
Public Member Functions | List of all members
EPS09 Class Reference

Nuclear modifications from EPS09 fit. More...

#include <PartonDistributions.h>

Inheritance diagram for EPS09:
nPDF PDF

Public Member Functions

 EPS09 (int idBeamIn=2212, int iOrderIn=1, int iSetIn=1, string pdfdataPath="../share/Pythia8/pdfdata/", PDFPtr protonPDFPtrIn=0, Logger *loggerPtrIn=0)
 Constructor.
 
void rUpdate (int id, double x, double Q2) override
 Update parton densities. More...
 
void setErrorSet (int iSetIn)
 Use other than central set to study uncertainties.
 
- Public Member Functions inherited from nPDF
 nPDF (int idBeamIn=2212, PDFPtr protonPDFPtrIn=0)
 Constructor.
 
void xfUpdate (int id, double x, double Q2) override
 Update parton densities. More...
 
void initNPDF (int idBeamIn, PDFPtr protonPDFPtrIn=0)
 Initialize the nPDF-related members. More...
 
int getA ()
 Return the number of protons and nucleons.
 
int getZ ()
 
void setMode (double zaIn)
 
void resetMode ()
 
- Public Member Functions inherited from PDF
 PDF (int idBeamIn=2212)
 Constructor.
 
virtual ~PDF ()
 Virtual destructor.
 
virtual bool init (int, string, int, Logger *)
 
bool isSetup ()
 Confirm that PDF has been set up (important for LHAPDF and H1 Pomeron).
 
virtual void setBeamID (int idBeamIn)
 Switch to new beam particle identities; for similar hadrons only.
 
void resetValenceContent ()
 Set valence content. More...
 
void setValenceContent (int idVal1In, int idVal2In, int idVal3In)
 
virtual void setExtrapolate (bool)
 Allow extrapolation beyond boundaries. This is optional.
 
double xf (int id, double x, double Q2)
 Read out parton density. More...
 
double xfVal (int id, double x, double Q2)
 Read out valence and sea part of parton densities. More...
 
double xfSea (int id, double x, double Q2)
 Only sea part of parton densities. More...
 
virtual bool insideBounds (double, double)
 Check whether x and Q2 values fall inside the fit bounds (LHAPDF6 only).
 
virtual double alphaS (double)
 Access the running alpha_s of a PDF set (LHAPDF6 only).
 
virtual double mQuarkPDF (int)
 Return quark masses used in the PDF fit (LHAPDF6 only).
 
virtual int nMembers ()
 Return number of members of this PDF family (LHAPDF6 only).
 
virtual void calcPDFEnvelope (int, double, double, int)
 Calculate PDF envelope.
 
virtual void calcPDFEnvelope (pair< int, int >, pair< double, double >, double, int)
 
virtual PDFEnvelope getPDFEnvelope ()
 
virtual double gammaPDFxDependence (int, double)
 Approximate photon PDFs by decoupling the scale and x-dependence.
 
virtual double gammaPDFRefScale (int)
 Provide the reference scale for logarithmic Q^2 evolution for photons.
 
virtual int sampleGammaValFlavor (double)
 Sample the valence content for photons.
 
virtual double xfIntegratedTotal (double)
 The total x-integrated PDFs. Relevant for MPIs with photon beams.
 
virtual double xGamma ()
 Return the sampled value for x_gamma.
 
virtual void xPom (double=-1.0)
 Keep track of pomeron momentum fraction.
 
virtual double xfFlux (int, double, double)
 Return accurate and approximated photon fluxes and PDFs.
 
virtual double xfApprox (int, double, double)
 
virtual double xfGamma (int, double, double)
 
virtual double intFluxApprox ()
 
virtual bool hasApproxGammaFlux ()
 
virtual double getXmin ()
 Return the kinematical limits and sample Q2 and x.
 
virtual double getXhadr ()
 
virtual double sampleXgamma (double)
 
virtual double sampleQ2gamma (double)
 
virtual double fluxQ2dependence (double)
 
virtual double xfMax (int id, double x, double Q2)
 Normal PDFs unless gamma inside lepton -> an overestimate for sampling.
 
virtual double xfSame (int id, double x, double Q2)
 Normal PDFs unless gamma inside lepton -> Do not sample x_gamma.
 
virtual void setVMDscale (double=1.)
 Allow for new scaling factor for VMD PDFs.
 
bool sSymmetric () const
 Return if s/sbar, c/cbar, and b/bbar PDFs are symmetric.
 
bool cSymmetric () const
 
bool bSymmetric () const
 
void sSymmetric (bool sSymmetricIn)
 Set s/sbar, c/cbar, and b/bbar PDFs symmetric.
 
void cSymmetric (bool cSymmetricIn)
 
void bSymmetric (bool bSymmetricIn)
 

Additional Inherited Members

- Protected Member Functions inherited from PDF
void printErr (string loc, string errMsg, Logger *loggerPtr=nullptr)
 Small routine for error printout, depending on loggerPtr existing or not.
 
double xfRaw (int id) const
 Get the raw stored value for the quark variable corresponding to the id. More...
 
bool isValence (int id) const
 Check whether the specified id is a valence quark.
 
- Protected Attributes inherited from nPDF
double ruv
 
double rdv
 
double ru
 
double rd
 
double rs
 
double rc
 
double rb
 
double rg
 
- Protected Attributes inherited from PDF
int idBeam
 Store relevant quantities.
 
int idBeamAbs
 
int idSav
 
int idVal1
 
int idVal2
 
int idVal3
 
double xSav
 
double Q2Sav
 
double xu
 Stored quantities.
 
double xd
 
double xs
 
double xubar
 
double xdbar
 
double xsbar
 
double xc
 
double xb
 
double xcbar
 
double xbbar
 
double xg
 
double xlepton
 
double xgamma
 
bool isSet
 
bool isInit
 
int beamType
 
bool hasGammaInLepton
 True if a photon beam inside a lepton beam, otherwise set false.
 
bool sSymmetricSave = false
 Whether to treat flavoured PDFs as symmetric, for efficiency.
 
bool cSymmetricSave = true
 
bool bSymmetricSave = true
 

Detailed Description

Nuclear modifications from EPS09 fit.

Member Function Documentation

void rUpdate ( int  id,
double  x,
double  Q2 
)
overridevirtual

Update parton densities.

Interpolation from the grid.

Freeze the x and Q2 values if outside the grid.

Calculate the position in log(log Q^2) grid:

Set the Q2 index to interval [1,...,49].

Calculate the three nearest points in log(log Q^2) grid.

Interpolate the grid values.

Calculate the position in log(x) or x grid.

Set the x-index to interval [1,...,48].

Do not use the last grid points for interpolation.

Calculate the four nearest points in log-x or lin-x grid.

Grid points used for interpolation.

Read in the relevant values from table and interpolate in x.

Interpolate in Q2.

Save the values.

Implements nPDF.


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