GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ReinSehgalSPPPXSec.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::ReinSehgalSPPPXSec
5 
6 \brief Computes the differential cross section for an exclusive 1-pion
7  reaction through resonance neutrinoproduction according to the
8  Rein-Sehgal model.
9 
10  The cross section is computed for an input list of resonances
11  as the sum of the Rein-Sehgal single resonance cross sections
12  weighted:
13 
14  \li With the value of their Breit-Wigner distributions at the given
15  W,Q^2 (The code for BW weighting is included in the single
16  resonance cross section algorithm. The user needs to make sure
17  that he does not run the single resonance cross section code with
18  a configuration that inhibits weighting).
19 
20  \li With the isospin Glebsch-Gordon coefficient determining the
21  contribution of each resonance to the exclusive final state.
22 
23  \li With the BR for the produced resonance to decay into the given
24  exclusive final state.
25 
26  In this algorithm we follow the non-coherent approach: we sum
27  the weighted resonance production cross sections rather than the
28  resonance production amplitudes.
29 
30  Is a concrete implementation of the XSecAlgorithmI interface.
31 
32 \ref D.Rein and L.M.Sehgal, Neutrino Excitation of Baryon Resonances
33  and Single Pion Production, Ann.Phys.133, 79 (1981)
34 
35 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
36  University of Liverpool
37 
38 \created November 22, 2004
39 
40 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
41  For the full text of the license visit http://copyright.genie-mc.org
42 */
43 //____________________________________________________________________________
44 
45 #ifndef _REIN_SEHGAL_EXCLUSIVE_SPP_PXSEC_H_
46 #define _REIN_SEHGAL_EXCLUSIVE_SPP_PXSEC_H_
47 
50 
51 namespace genie {
52 
53 class XSecIntegratorI;
54 
56 
57 public:
59  ReinSehgalSPPPXSec(string config);
60  virtual ~ReinSehgalSPPPXSec();
61 
62  //-- XSecAlgorithmI interface implementation
63  double XSec (const Interaction * i, KinePhaseSpace_t k) const;
64  double Integral (const Interaction * i) const;
65  bool ValidProcess (const Interaction * i) const;
66 
67  //-- overload the Algorithm::Configure() methods to load private data
68  // members from configuration options
69  void Configure(const Registry & config);
70  void Configure(string config);
71 
72 private:
73 
74  //-- load algorithm configuration when Algorithm::Configure()
75  void LoadConfig (void);
76 
77  double XSecNRES(const Interaction * i, KinePhaseSpace_t k) const;
78  double XSec1RES(const Interaction * i, KinePhaseSpace_t k) const;
79 
80  //-- private data members
84 };
85 
86 } // genie namespace
87 #endif // _REIN_SEHGAL_EXCLUSIVE_SPP_PXSEC_H_
Cross Section Calculation Interface.
double Integral(const Interaction *i) const
void Configure(const Registry &config)
Cross Section Integrator Interface.
const XSecIntegratorI * fXSecIntegrator
Encapsulates a list of baryon resonances.
Definition: BaryonResList.h:37
enum genie::EKinePhaseSpace KinePhaseSpace_t
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
Summary information for an interaction.
Definition: Interaction.h:56
double XSec1RES(const Interaction *i, KinePhaseSpace_t k) const
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
double XSecNRES(const Interaction *i, KinePhaseSpace_t k) const
const XSecAlgorithmI * fSingleResXSecModel
Computes the differential cross section for an exclusive 1-pion reaction through resonance neutrinopr...