GENIEGenerator
Loading...
Searching...
No Matches
BergerSehgalFMCOHPiPXSec2015.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::BergerSehgalFMCOHPiPXSec2015
5
6\brief Computes the triple differential cross section for CC & NC coherent
7 pion production according to the \b Berger-Sehgal model.
8 v(vbar)A->v(vbar)Api0, vA->l-Api+, vbarA->l+Api-
9
10 Is a concrete implementation of the XSecAlgorithmI interface.
11
12\ref PRD 79, 053003 (2009) by Berger and Sehgal
13
14\author G. Perdue, H. Gallagher, D. Cherdack
15
16\created 2014
17
18\cpright Copyright (c) 2003-2025, The GENIE Collaboration
19 For the full text of the license visit http://copyright.genie-mc.org
20*/
21//____________________________________________________________________________
22
23#ifndef _BERGER_SEHGAL_FM_COHPI_PXSEC_2015_H_
24#define _BERGER_SEHGAL_FM_COHPI_PXSEC_2015_H_
25
27
28namespace genie {
29
30 class XSecIntegratorI;
31
32 // this class should probably inherit from the infinite mass target version
34
35 public:
37 BergerSehgalFMCOHPiPXSec2015(string config);
39
40 //-- XSecAlgorithmI interface implementation
41 double XSec (const Interaction * i, KinePhaseSpace_t k) const;
42 double Integral (const Interaction * i) const;
43 bool ValidProcess (const Interaction * i) const;
44
45 //-- overload the Algorithm::Configure() methods to load private data
46 // members from configuration options
47 void Configure(const Registry & config);
48 void Configure(string config);
49
50 private:
51 void LoadConfig(void);
52
53 double ExactKinematicTerm(const Interaction * i) const;
54 double PionCOMAbsMomentum(const Interaction * i) const;
55
56 //-- private data members loaded from config Registry or set to defaults
57 double fMa; ///< axial mass
58 double fRo; ///< nuclear size scale parameter
59 double fCos8c2; ///< cos^2(Cabibbo angle)
60 bool fRSPionXSec; ///< Use Rein-Sehgal "style" pion-nucleon xsecs
61
63 };
64
65} // genie namespace
66
67#endif // _BERGER_SEHGAL_FM_COHPI_PXSEC_2015_H_
double ExactKinematicTerm(const Interaction *i) const
double Integral(const Interaction *i) const
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
bool fRSPionXSec
Use Rein-Sehgal "style" pion-nucleon xsecs.
double PionCOMAbsMomentum(const Interaction *i) const
double fRo
nuclear size scale parameter
Summary information for an interaction.
Definition Interaction.h:56
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
Cross Section Integrator Interface.
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EKinePhaseSpace KinePhaseSpace_t