GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
EmpiricalMECPXSec2015.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::EmpiricalMECPXSec2015
5 
6 \brief Computes the MEC differential cross section.
7  Is a concrete implementation of the XSecAlgorithmI interface. \n
8 
9 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
10  University of Liverpool
11 
12  Steve Dytman <dytman+ \at pitt.edu>
13  Pittsburgh University
14 
15 \created May 05, 2009
16 
17 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19 */
20 //____________________________________________________________________________
21 
22 #ifndef _MEC_PXSEC_H_
23 #define _MEC_PXSEC_H_
24 
27 
28 namespace genie {
29 
31 
32 public:
34  EmpiricalMECPXSec2015(string config);
35  virtual ~EmpiricalMECPXSec2015();
36 
37  // XSecAlgorithmI interface implementation
38  double XSec (const Interaction * i, KinePhaseSpace_t k) const;
39  double Integral (const Interaction * i) const;
40  bool ValidProcess (const Interaction * i) const;
41 
42  // override the Algorithm::Configure methods to load configuration
43  // data to private data members
44  void Configure (const Registry & config);
45  void Configure (string param_set);
46 
47 private:
48 
49  void LoadConfig (void);
50 
51  double fMq2d; ///< toy model param: `mass' in dipole (Q2 - dependence) form factor (GeV)
52  double fMass; ///< toy model param: peak of W distribution (GeV)
53  double fWidth; ///< toy model param: width of W distribution (GeV)
54  double fMECAPower; ///< power of A relative to carbon
55 
56  double fFracPN_NC; ///< toy model param: fraction of nucleon pairs that are pn, not nn or pp
57  double fFracPN_CC; ///< toy model param: fraction of nucleon pairs that are pn, not nn or pp
58  double fFracPN_EM; ///< toy model param: fraction of nucleon pairs that are pn, not nn or pp
59 
60  double fFracCCQE; ///< empirical model param: MEC cross section is taken to be this fraction of CCQE cross section
61  double fFracNCQE; ///< empirical model param: MEC cross section is taken to be this fraction of NCQE cross section
62  double fFracEMQE; ///< empirical model param: MEC cross section is taken to be this fraction of Rosenbluth xs
63 
64  const XSecAlgorithmI * fXSecAlgCCQE; ///< cross section algorithm for CCQE
65  const XSecAlgorithmI * fXSecAlgNCQE; ///< cross section algorithm for NCQE
66  const XSecAlgorithmI * fXSecAlgEMQE; ///< cross section algorithm for EMQE
67 
68  /// Integrator used for reweighting
70 
71  /// Whether to integrate in the usual way (false) or in "reweighting mode"
72  /// (true)
74 };
75 
76 } // genie namespace
77 #endif // _MEC_PARTIAL_XSEC_H_
Cross Section Calculation Interface.
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
Cross Section Integrator Interface.
void Configure(const Registry &config)
double fFracPN_NC
toy model param: fraction of nucleon pairs that are pn, not nn or pp
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
const XSecAlgorithmI * fXSecAlgCCQE
cross section algorithm for CCQE
const XSecAlgorithmI * fXSecAlgNCQE
cross section algorithm for NCQE
enum genie::EKinePhaseSpace KinePhaseSpace_t
const XSecIntegratorI * fXSecIntegrator
Integrator used for reweighting.
double fMass
toy model param: peak of W distribution (GeV)
Summary information for an interaction.
Definition: Interaction.h:56
double fFracPN_CC
toy model param: fraction of nucleon pairs that are pn, not nn or pp
double fWidth
toy model param: width of W distribution (GeV)
double fMq2d
toy model param: `mass&#39; in dipole (Q2 - dependence) form factor (GeV)
double fFracPN_EM
toy model param: fraction of nucleon pairs that are pn, not nn or pp
const XSecAlgorithmI * fXSecAlgEMQE
cross section algorithm for EMQE
double Integral(const Interaction *i) const
double fFracEMQE
empirical model param: MEC cross section is taken to be this fraction of Rosenbluth xs ...
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
double fFracNCQE
empirical model param: MEC cross section is taken to be this fraction of NCQE cross section ...
Computes the MEC differential cross section. Is a concrete implementation of the XSecAlgorithmI inter...
double fFracCCQE
empirical model param: MEC cross section is taken to be this fraction of CCQE cross section ...
double fMECAPower
power of A relative to carbon