GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ReinSehgalSPPXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::ReinSehgalSPPXSec
5 
6 \brief Computes the cross section for an exclusive 1pi reaction through
7  resonance neutrinoproduction according to the Rein-Sehgal model.
8 
9  This algorithm produces in principle what you could also get from
10  the genie::RESXSec algorithm (RES cross section integrator) by
11  specifying the genie::ReinSehgalSPPPXSec as the differential
12  cross section model. However, ReinSehgalSPPXSec offers a faster
13  alternative. Before computing any SPP cross section this algorithm
14  computes and caches splines for resonance neutrino-production cross
15  sections. This improves the speed since it is reducing the number of
16  calculations (the generic algorithm needs to recompute resonance
17  production xsec for every exclusive channel).
18 
19  In this algorithm we follow the non-coherent approach: we sum
20  the weighted resonance production cross sections rather than the
21  resonance production amplitudes.
22 
23  Is a concrete implementation of the XSecAlgorithmI interface.\n
24 
25 \ref D.Rein and L.M.Sehgal, Neutrino Excitation of Baryon Resonances
26  and Single Pion Production, Ann.Phys.133, 79 (1981)
27 
28 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
29  University of Liverpool
30 
31 \created March 09, 2006
32 
33 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
34  For the full text of the license visit http://copyright.genie-mc.org
35 */
36 //____________________________________________________________________________
37 
38 #ifndef _REIN_SEHGAL_SPP_XSEC_H_
39 #define _REIN_SEHGAL_SPP_XSEC_H_
40 
42 
43 namespace genie {
44 
46 
47 public:
49  ReinSehgalSPPXSec(string param_set);
50  virtual ~ReinSehgalSPPXSec();
51 
52  // XSecIntegratorI interface implementation
53  double Integrate(const XSecAlgorithmI * model, const Interaction * i) const;
54 
55  // Overload the Algorithm::Configure() methods to load private data
56  // members from configuration options
57  void Configure(const Registry & config);
58  void Configure(string config);
59 
60 private:
61  void LoadConfig(void);
62 };
63 
64 } // genie namespace
65 #endif // _REIN_SEHGAL_SPP_XSEC_H_
Cross Section Calculation Interface.
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
void Configure(const Registry &config)
Computes the cross section for an exclusive 1pi reaction through resonance neutrinoproduction accordi...
Summary information for an interaction.
Definition: Interaction.h:56
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
An ABC that caches resonance neutrinoproduction cross sections on free nucleons according to the Rein...