GENIEGenerator
Loading...
Searching...
No Matches
ReinSehgalRESPXSec.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::ReinSehgalRESPXSec
5
6\brief Computes the double differential cross section for resonance
7 electro- or neutrino-production according to the Rein-Sehgal model.
8
9 The computed cross section is the d^2 xsec/ dQ^2 dW \n
10
11 where \n
12 \li \c Q^2 : momentum transfer ^ 2
13 \li \c W : invariant mass of the final state hadronic system
14
15 Is a concrete implementation of the XSecAlgorithmI interface.
16
17\ref D.Rein and L.M.Sehgal, Neutrino Excitation of Baryon Resonances
18 and Single Pion Production, Ann.Phys.133, 79 (1981)
19
20\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
21 University of Liverpool
22
23\created May 05, 2004
24
25\cpright Copyright (c) 2003-2025, The GENIE Collaboration
26 For the full text of the license visit http://copyright.genie-mc.org
27*/
28//____________________________________________________________________________
29
30#ifndef _REIN_SEHGAL_RES_PXSEC_H_
31#define _REIN_SEHGAL_RES_PXSEC_H_
32
36
37namespace genie {
38
40class Spline;
41class XSecIntegratorI;
42
44
45public:
47 ReinSehgalRESPXSec(string config);
48 virtual ~ReinSehgalRESPXSec();
49
50 // implement the XSecAlgorithmI interface
51 double XSec (const Interaction * i, KinePhaseSpace_t k) const;
52 double Integral (const Interaction * i) const;
53 bool ValidProcess (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
60private:
61
62 void LoadConfig (void);
63
64 mutable FKR fFKR;
65
71
72 // configuration data
73 bool fWghtBW; ///< weight with resonance breit-wigner?
74 bool fNormBW; ///< normalize resonance breit-wigner to 1?
75 double fZeta; ///< FKR parameter Zeta
76 double fOmega; ///< FKR parameter Omega
77 double fMa2; ///< (axial mass)^2
78 double fMv2; ///< (vector mass)^2
79 double fSin48w; ///< sin^4(Weingberg angle)
80 double fVud2; ///< |Vud|^2(square of magnitude ud-element of CKM-matrix)
81 bool fUsingDisResJoin; ///< use a DIS/RES joining scheme?
82 bool fUsingNuTauScaling; ///< use NeuGEN nutau xsec reduction factors?
83 double fWcut; ///< apply DIS/RES joining scheme < Wcut
84 double fN2ResMaxNWidths; ///< limits allowed phase space for n=2 res
85 double fN0ResMaxNWidths; ///< limits allowed phase space for n=0 res
86 double fGnResMaxNWidths; ///< limits allowed phase space for other res
87 string fKFTable; ///< table of Fermi momentum (kF) constants for various nuclei
88 bool fUseRFGParametrization; ///< use parametrization for fermi momentum insted of table?
89 bool fUsePauliBlocking; ///< account for Pauli blocking?
90 Spline * fNuTauRdSpl; ///< xsec reduction spline for nu_tau
91 Spline * fNuTauBarRdSpl; ///< xsec reduction spline for nu_tau_bar
92 double fXSecScaleCC; ///< external CC xsec scaling factor
93 double fXSecScaleNC; ///< external NC xsec scaling factor
94 double fXSecScaleEM; ///< external EM xsec scaling factor
95
97};
98
99} // genie namespace
100
101#endif // _REIN_SEHGAL_RES_PXSEC_H_
Simple struct-like class holding the Feynmann-Kislinger-Ravndall (FKR) baryon excitation model parame...
Definition FKR.h:31
Summary information for an interaction.
Definition Interaction.h:56
Pure abstract base class. Defines the RSHelicityAmplModelI interface.
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
bool fUsingNuTauScaling
use NeuGEN nutau xsec reduction factors?
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double fXSecScaleCC
external CC xsec scaling factor
Spline * fNuTauRdSpl
xsec reduction spline for nu_tau
bool fUseRFGParametrization
use parametrization for fermi momentum insted of table?
const RSHelicityAmplModelI * fHAmplModelEMp
Spline * fNuTauBarRdSpl
xsec reduction spline for nu_tau_bar
double fWcut
apply DIS/RES joining scheme < Wcut
double fSin48w
sin^4(Weingberg angle)
bool fUsingDisResJoin
use a DIS/RES joining scheme?
bool fUsePauliBlocking
account for Pauli blocking?
double fMa2
(axial mass)^2
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
double fVud2
|Vud|^2(square of magnitude ud-element of CKM-matrix)
const RSHelicityAmplModelI * fHAmplModelNCn
double fN0ResMaxNWidths
limits allowed phase space for n=0 res
const RSHelicityAmplModelI * fHAmplModelEMn
const RSHelicityAmplModelI * fHAmplModelNCp
double fOmega
FKR parameter Omega.
string fKFTable
table of Fermi momentum (kF) constants for various nuclei
bool fNormBW
normalize resonance breit-wigner to 1?
double Integral(const Interaction *i) const
double fN2ResMaxNWidths
limits allowed phase space for n=2 res
double fGnResMaxNWidths
limits allowed phase space for other res
void Configure(const Registry &config)
const XSecIntegratorI * fXSecIntegrator
const RSHelicityAmplModelI * fHAmplModelCC
bool fWghtBW
weight with resonance breit-wigner?
double fMv2
(vector mass)^2
double fXSecScaleNC
external NC xsec scaling factor
double fZeta
FKR parameter Zeta.
double fXSecScaleEM
external EM xsec scaling factor
A numeric analysis tool class for interpolating 1-D functions.
Definition Spline.h:58
Cross Section Integrator Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EKinePhaseSpace KinePhaseSpace_t