GENIEGenerator
Loading...
Searching...
No Matches
LHAPDF6.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::LHAPDF6
5
6\brief LHAPDF6 library interface.
7 Concrete implementation of the PDFModelI interface.
8
9\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
10 University of Liverpool
11
12\created March 20, 2018
13
14\cpright Copyright (c) 2003-2025, The GENIE Collaboration
15 For the full text of the license visit http://copyright.genie-mc.org
16*/
17//____________________________________________________________________________
18
19#ifndef _GENIE_LHAPDF6_INTERFACE_H_
20#define _GENIE_LHAPDF6_INTERFACE_H_
21
22#include "Framework/Conventions/GBuild.h"
24#include <string>
25using std::string;
26
27namespace LHAPDF
28{
29 class PDF;
30}
31
32namespace genie {
33
34class LHAPDF6 : public PDFModelI {
35
36public:
37
38 LHAPDF6();
39 LHAPDF6(string config);
40 virtual ~LHAPDF6();
41
42 // Implement the PDFModelI interface
43
44 double UpValence (double x, double Q2) const;
45 double DownValence (double x, double Q2) const;
46 double UpSea (double x, double Q2) const;
47 double DownSea (double x, double Q2) const;
48 double Strange (double x, double Q2) const;
49 double Charm (double x, double Q2) const;
50 double Bottom (double x, double Q2) const;
51 double Top (double x, double Q2) const;
52 double Gluon (double x, double Q2) const;
53 PDF_t AllPDFs (double x, double Q2) const;
54
55 // Override the default "Configure" implementation
56 // of the Algorithm interface
57
58 void Configure (const Registry & config);
59 void Configure (string config);
60
61private:
62
63 void LoadConfig (void);
64
65 string fSetName;
67
68#ifdef __GENIE_LHAPDF6_ENABLED__
69 LHAPDF::PDF * fLHAPDF;
70#endif
71
72};
73
74} // genie namespace
75#endif // _GENIE_LHAPDF6_INTERFACE_H_
double Gluon(double x, double Q2) const
Definition LHAPDF6.cxx:96
double Top(double x, double Q2) const
Definition LHAPDF6.cxx:91
string fSetName
Definition LHAPDF6.h:65
double UpValence(double x, double Q2) const
Definition LHAPDF6.cxx:56
double Strange(double x, double Q2) const
Definition LHAPDF6.cxx:76
void LoadConfig(void)
Definition LHAPDF6.cxx:140
double UpSea(double x, double Q2) const
Definition LHAPDF6.cxx:66
double DownValence(double x, double Q2) const
Definition LHAPDF6.cxx:61
double Bottom(double x, double Q2) const
Definition LHAPDF6.cxx:86
double DownSea(double x, double Q2) const
Definition LHAPDF6.cxx:71
virtual ~LHAPDF6()
Definition LHAPDF6.cxx:49
double Charm(double x, double Q2) const
Definition LHAPDF6.cxx:81
PDF_t AllPDFs(double x, double Q2) const
Definition LHAPDF6.cxx:119
void Configure(const Registry &config)
Definition LHAPDF6.cxx:126
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
struct genie::EPDF PDF_t