GENIEGenerator
Loading...
Searching...
No Matches
PDFModelI.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::PDFModelI
5
6\brief Pure abstract base class. Defines the PDFModelI interface to be
7 implemented by wrapper classes to existing Parton Density Function
8 libraries (PDFLIB, LHAPDF), or by built-in implementations.
9
10\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
11 University of Liverpool
12
13\created May 04, 2004
14
15\cpright Copyright (c) 2003-2025, The GENIE Collaboration
16 For the full text of the license visit http://copyright.genie-mc.org
17*/
18//____________________________________________________________________________
19
20#ifndef _PDF_MODEL_I_H_
21#define _PDF_MODEL_I_H_
22
25
26namespace genie {
27
28class PDFModelI : public Algorithm {
29
30public:
31
32 virtual ~PDFModelI();
33
34 //-- define PDFModelI interface
35
36 virtual double UpValence (double x, double Q2) const = 0;
37 virtual double DownValence (double x, double Q2) const = 0;
38 virtual double UpSea (double x, double Q2) const = 0;
39 virtual double DownSea (double x, double Q2) const = 0;
40 virtual double Strange (double x, double Q2) const = 0;
41 virtual double Charm (double x, double Q2) const = 0;
42 virtual double Bottom (double x, double Q2) const = 0;
43 virtual double Top (double x, double Q2) const = 0;
44 virtual double Gluon (double x, double Q2) const = 0;
45 virtual PDF_t AllPDFs (double x, double Q2) const = 0;
46
47protected:
48
49 PDFModelI();
50 PDFModelI(string name);
51 PDFModelI(string name, string config);
52};
53
54} // genie namespace
55
56#endif // _PDF_MODEL_I_H_
virtual double DownSea(double x, double Q2) const =0
virtual double Charm(double x, double Q2) const =0
virtual double Gluon(double x, double Q2) const =0
virtual double Top(double x, double Q2) const =0
virtual double UpValence(double x, double Q2) const =0
virtual PDF_t AllPDFs(double x, double Q2) const =0
virtual double Strange(double x, double Q2) const =0
virtual double Bottom(double x, double Q2) const =0
virtual double UpSea(double x, double Q2) const =0
virtual double DownValence(double x, double Q2) const =0
virtual ~PDFModelI()
Definition PDFModelI.cxx:34
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
struct genie::EPDF PDF_t