AlamSimoAtharVacasSKXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::AlamSimoAtharVacasSKXSec
5 
6 \brief A cross-section integrator and GSL interface for the
7  M. Rafi Alam, I. Ruiz Simo, M. Sajjad Athar and M.J. Vicente Vacas
8  single-Kaon production model.
9  Is a concrete implementation of the XSecIntegratorI interface.
10 
11 \author Chris Marshall and Martti Nirkko
12 
13 \created March 20, 2014
14 
15 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
16  For the full text of the license visit http://copyright.genie-mc.org
17  or see $GENIE/LICENSE
18 */
19 //____________________________________________________________________________
20 
21 #ifndef _ALAM_SIMO_ATHAR_VACAS_SINGLE_KAON_XSEC_H_
22 #define _ALAM_SIMO_ATHAR_VACAS_SINGLE_KAON_XSEC_H_
23 
24 #include <Math/Integrator.h>
25 #include <Math/IFunction.h>
26 #include <Math/IntegratorMultiDim.h>
27 
29 
30 namespace genie {
31 
32 class XSecAlgorithmI;
33 class Interaction;
34 
36 public:
39  virtual ~AlamSimoAtharVacasSKXSec();
40 
41  // XSecIntegratorI interface implementation
42  double Integrate(const XSecAlgorithmI * model, const Interaction * i) const;
43 
44  // Overload the Algorithm::Configure() methods to load private data
45  // members from configuration options
46  void Configure(const Registry & config);
47  void Configure(string config);
48 
49 protected:
51 
52 private:
53  void LoadConfig (void);
54 };
55 
56 //_____________________________________________________________________________________
57 //
58 // GSL wrappers
59 //
60 //_____________________________________________________________________________________
61 
62  namespace utils {
63  namespace gsl {
64 
65  class d3Xsec_dTldTkdCosThetal: public ROOT::Math::IBaseFunctionMultiDim
66  {
67  public:
70  // ROOT::Math::IBaseFunctionMultiDim interface
71  unsigned int NDim (void) const;
72  double DoEval (const double * xin) const;
73  ROOT::Math::IBaseFunctionMultiDim * Clone (void) const;
74  private:
77  };
78 
79  } // gsl namespace
80  } // utils namespace
81 
82 } // genie namespace
83 
84 #endif // _ALAM_SIMO_ATHAR_VACAS_SINGLE_KAON_XSEC_H_
Cross Section Calculation Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
Cross Section Integrator Interface.
Definition: config.py:1
Summary information for an interaction.
Definition: Interaction.h:56
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
void Configure(const Registry &config)
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:66
A cross-section integrator and GSL interface for the M. Rafi Alam, I. Ruiz Simo, M. Sajjad Athar and M.J. Vicente Vacas single-Kaon production model. Is a concrete implementation of the XSecIntegratorI interface.
const XML_Char XML_Content * model
Definition: expat.h:151