DISXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::DISXSec
5 
6 \brief Computes the DIS Cross Section. \n
7  Is a concrete implementation of the XSecIntegratorI interface. \n
8 
9 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
10  University of Liverpool & STFC Rutherford Appleton Laboratory
11 
12 \created May 04, 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 _DIS_XSEC_H_
20 #define _DIS_XSEC_H_
21 
23 
24 namespace genie {
25 
26 class DISXSec : public XSecIntegratorI {
27 
28 public:
29  DISXSec();
30  DISXSec(string config);
31  virtual ~DISXSec();
32 
33  //! XSecIntegratorI interface implementation
34  double Integrate(const XSecAlgorithmI * model, const Interaction * i) const;
35 
36  //! Overload the Algorithm::Configure() methods to load private data
37  //! members from configuration options
38  void Configure(const Registry & config);
39  void Configure(string config);
40 
41 private:
42  void LoadConfig (void);
43 
44  void CacheFreeNucleonXSec(const XSecAlgorithmI * model, const Interaction * in) const;
45  string CacheBranchName (const XSecAlgorithmI * model, const Interaction * in) const;
46 
47  double fVldEmin;
48  double fVldEmax;
49 };
50 
51 } // genie namespace
52 #endif // _DIS_XSEC_H_
Cross Section Calculation Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
Cross Section Integrator Interface.
Definition: model.py:1
void LoadConfig(void)
Definition: DISXSec.cxx:193
Computes the DIS Cross Section. Is a concrete implementation of the XSecIntegratorI interface...
Definition: DISXSec.h:26
void Configure(const Registry &config)
Definition: DISXSec.cxx:181
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
XSecIntegratorI interface implementation.
Definition: DISXSec.cxx:56
Summary information for an interaction.
Definition: Interaction.h:56
static Config * config
Definition: config.cpp:1054
virtual ~DISXSec()
Definition: DISXSec.cxx:51
double fVldEmax
Definition: DISXSec.h:48
void CacheFreeNucleonXSec(const XSecAlgorithmI *model, const Interaction *in) const
Definition: DISXSec.cxx:212
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double fVldEmin
Definition: DISXSec.h:47
string CacheBranchName(const XSecAlgorithmI *model, const Interaction *in) const
Definition: DISXSec.cxx:316