GENIEGenerator
Loading...
Searching...
No Matches
BergerSehgalCOHPiPXSec2015.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::BergerSehgalCOHPiPXSec2015
5
6\brief Computes the double 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 The t-dependence of the triple differential cross (d^3xsec/dxdydt)
11 is integrated out.
12
13 Is a concrete implementation of the XSecAlgorithmI interface.
14
15\ref PRD 79, 053003 (2009) by Berger and Sehgal
16
17\author G. Perdue, H. Gallagher, D. Cherdack
18
19\created 2014
20
21\cpright Copyright (c) 2003-2025, The GENIE Collaboration
22 For the full text of the license visit http://copyright.genie-mc.org
23*/
24//____________________________________________________________________________
25
26#ifndef _BERGER_SEHGAL_COHPI_PXSEC_2015_H_
27#define _BERGER_SEHGAL_COHPI_PXSEC_2015_H_
28
30
31namespace genie {
32
33 class XSecIntegratorI;
34
36
37 public:
39 BergerSehgalCOHPiPXSec2015(string config);
41
42 //-- XSecAlgorithmI interface implementation
43 double XSec (const Interaction * i, KinePhaseSpace_t k) const;
44 double Integral (const Interaction * i) const;
45 bool ValidProcess (const Interaction * i) const;
46
47 //-- overload the Algorithm::Configure() methods to load private data
48 // members from configuration options
49 void Configure(const Registry & config);
50 void Configure(string config);
51
52 private:
53 void LoadConfig(void);
54
55 double ExactKinematicTerm(const Interaction * i) const;
56 double PionCOMAbsMomentum(const Interaction * i) const;
57
58 //-- private data members loaded from config Registry or set to defaults
59 double fMa; ///< axial mass
60 double fRo; ///< nuclear size scale parameter
61 double fCos8c2; ///< cos^2(Cabibbo angle)
62 bool fRSPionXSec; ///< Use Rein-Sehgal "style" pion-nucleon xsecs
63
65 };
66
67} // genie namespace
68
69#endif // _BERGER_SEHGAL_COHPI_PXSEC_2015_H_
double ExactKinematicTerm(const Interaction *i) const
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
double PionCOMAbsMomentum(const Interaction *i) const
double Integral(const Interaction *i) const
double fRo
nuclear size scale parameter
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.
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