LHAPDF5.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::LHAPDF5
5 
6 \brief LHAPDF5 library interface.
7  Concrete implementation of the PDFModelI interface.
8 
9 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
10  University of Liverpool & STFC Rutherford Appleton Laboratory
11 
12 \created June 06, 2004
13 
14 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
15  For the full text of the license visit http://copyright.genie-mc.org
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _LHAPDF5_H_
20 #define _LHAPDF5_H_
21 
23 #include <string>
24 using std::string;
25 
26 namespace genie {
27 
28 class LHAPDF5 : public PDFModelI {
29 
30 public:
31 
32  LHAPDF5();
33  LHAPDF5(string config);
34  virtual ~LHAPDF5();
35 
36  // Implement PDFModelI interface
37 
38  double UpValence (double x, double Q2) const;
39  double DownValence (double x, double Q2) const;
40  double UpSea (double x, double Q2) const;
41  double DownSea (double x, double Q2) const;
42  double Strange (double x, double Q2) const;
43  double Charm (double x, double Q2) const;
44  double Bottom (double x, double Q2) const;
45  double Top (double x, double Q2) const;
46  double Gluon (double x, double Q2) const;
47  PDF_t AllPDFs (double x, double Q2) const;
48 
49  // Override the default "Confugure" implementation
50  // of the Algorithm interface
51 
52  void Configure (const Registry & config);
53  void Configure (string config);
54 
55 private:
56 
57  void Initialize (void) const;
58  void SetPDFSetFromConfig (void) const;
59 };
60 
61 } // genie namespace
62 
63 #endif // _LHAPDF5_H_
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
double Gluon(double x, double Q2) const
Definition: LHAPDF5.cxx:131
double Q2(const Interaction *const i)
Definition: KineUtils.cxx:1064
std::string string
Definition: nybbler.cc:12
double Charm(double x, double Q2) const
Definition: LHAPDF5.cxx:116
void Initialize(void) const
Definition: LHAPDF5.cxx:46
double Bottom(double x, double Q2) const
Definition: LHAPDF5.cxx:121
double DownSea(double x, double Q2) const
Definition: LHAPDF5.cxx:106
Pure abstract base class. Defines the PDFModelI interface to be implemented by wrapper classes to exi...
Definition: PDFModelI.h:28
LHAPDF5 library interface. Concrete implementation of the PDFModelI interface.
Definition: LHAPDF5.h:28
void SetPDFSetFromConfig(void) const
Definition: LHAPDF5.cxx:70
double UpSea(double x, double Q2) const
Definition: LHAPDF5.cxx:101
double Top(double x, double Q2) const
Definition: LHAPDF5.cxx:126
double DownValence(double x, double Q2) const
Definition: LHAPDF5.cxx:96
static Config * config
Definition: config.cpp:1054
virtual ~LHAPDF5()
Definition: LHAPDF5.cxx:41
void Configure(const Registry &config)
Definition: LHAPDF5.cxx:165
A struct to hold PDF set data.
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double UpValence(double x, double Q2) const
Definition: LHAPDF5.cxx:91
double Strange(double x, double Q2) const
Definition: LHAPDF5.cxx:111
PDF_t AllPDFs(double x, double Q2) const
Definition: LHAPDF5.cxx:136
list x
Definition: train.py:276