AlvarezRusoCOHPiPXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::AlvarezRusoCOHPiPXSec
5 
6 \brief Implementation of the Alvarez-Ruso coherent pion production model
7 
8  Is a concrete implementation of the XSecAlgorithmI interface.
9 
10 \ref
11 
12 \author Steve Dennis
13  University of Warwick, Rutherford Appleton Laboratory
14 
15 \created October 5, 2012
16 
17 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19  or see $GENIE/LICENSE
20 */
21 //____________________________________________________________________________
22 
23 #ifndef _ALVAREZ_RUSO_COH_XSEC_H_
24 #define _ALVAREZ_RUSO_COH_XSEC_H_
25 
28 
29 namespace genie {
30 
31 class XSecIntegratorI;
32 class Interaction;
33 
35 
36 public:
39  virtual ~AlvarezRusoCOHPiPXSec();
40 
41  //-- XSecAlgorithmI interface implementation
42  double XSec (const Interaction * i, KinePhaseSpace_t k) const;
43  double Integral (const Interaction * i) const;
44  bool ValidProcess (const Interaction * i) const;
45 
46  //-- overload the Algorithm::Configure() methods to load private data
47  // members from configuration options
48  void Configure(const Registry & config);
49  void Configure(string config);
50 
51 private:
52  void LoadConfig(void);
53 
54  //-- private data members loaded from config Registry or set to defaults
55 
57 
59  mutable const Interaction * fLastInteraction;
60  //Parameters
61  //bool fUseLookupTable;
62  //double fa4;
63  //double fa5;
64  //double fb4;
65  //double fb5;
66  //double ffPi;
67  //double ffStar;
68  //double fMa;
69  //double fRo;
70 };
71 
72 } // genie namespace
73 
74 #endif // _REIN_SEGHAL_COHPI_PXSEC_H_
Cross Section Calculation Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
Cross Section Integrator Interface.
double Integral(const Interaction *i) const
Definition: config.py:1
enum genie::EKinePhaseSpace KinePhaseSpace_t
void Configure(const Registry &config)
Implementation of the Alvarez-Ruso coherent pion production model.
Summary information for an interaction.
Definition: Interaction.h:56
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:66
const XSecIntegratorI * fXSecIntegrator
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
const Interaction * fLastInteraction
alvarezruso::AlvarezRusoCOHPiPDXSec * fMultidiff