DMDISXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::DMDISXSec
5 
6 \brief Computes the DMDIS Cross Section. \n
7  Is a concrete implementation of the XSecIntegratorI interface. \n
8 
9 \author Joshua Berger <jberger \at physics.wisc.edu>
10  University of Wisconsin-Madison
11 
12  Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
13  University of Liverpool & STFC Rutherford Appleton Laboratory
14 
15 \created September 4, 2017
16 
17 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19 
20 */
21 //____________________________________________________________________________
22 
23 #ifndef _DMDIS_XSEC_H_
24 #define _DMDIS_XSEC_H_
25 
27 
28 namespace genie {
29 
30 class DMDISXSec : public XSecIntegratorI {
31 
32 public:
33  DMDISXSec();
34  DMDISXSec(string config);
35  virtual ~DMDISXSec();
36 
37  //! XSecIntegratorI interface implementation
38  double Integrate(const XSecAlgorithmI * model, const Interaction * i) const;
39 
40  //! Overload the Algorithm::Configure() methods to load private data
41  //! members from configuration options
42  void Configure(const Registry & config);
43  void Configure(string config);
44 
45 private:
46  void LoadConfig (void);
47 
48  void CacheFreeNucleonXSec(const XSecAlgorithmI * model, const Interaction * in) const;
49  string CacheBranchName (const XSecAlgorithmI * model, const Interaction * in) const;
50 
51  double fVldEmin;
52  double fVldEmax;
53 };
54 
55 } // genie namespace
56 #endif // _DMDIS_XSEC_H_
Cross Section Calculation Interface.
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
XSecIntegratorI interface implementation.
Definition: DMDISXSec.cxx:60
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
Cross Section Integrator Interface.
void Configure(const Registry &config)
Definition: DMDISXSec.cxx:185
Computes the DMDIS Cross Section. Is a concrete implementation of the XSecIntegratorI interface...
Definition: DMDISXSec.h:30
void CacheFreeNucleonXSec(const XSecAlgorithmI *model, const Interaction *in) const
Definition: DMDISXSec.cxx:216
Definition: model.py:1
Summary information for an interaction.
Definition: Interaction.h:56
virtual ~DMDISXSec()
Definition: DMDISXSec.cxx:55
static Config * config
Definition: config.cpp:1054
void LoadConfig(void)
Definition: DMDISXSec.cxx:197
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double fVldEmin
Definition: DMDISXSec.h:51
string CacheBranchName(const XSecAlgorithmI *model, const Interaction *in) const
Definition: DMDISXSec.cxx:324
double fVldEmax
Definition: DMDISXSec.h:52