GENIEGenerator
Loading...
Searching...
No Matches
KLVOxygenIBDPXSec.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::KLVOxygenIBDPXSec
5
6\brief An implementation of the neutrino - Oxygen16 cross section.
7
8\ref E. Kolbe, K. Langanke, P. Vogel ; Phys. Rev. D66, 013007, 2002
9
10\author Corey Reed <cjreed \at nikhef.nl>
11 Nikhef
12
13\created January 27, 2010
14
15\cpright Copyright (c) 2003-2025, The GENIE Collaboration
16 For the full text of the license visit http://copyright.genie-mc.org
17*/
18//____________________________________________________________________________
19
20#ifndef _KLV_QUASIELASTIC_NU_OXYGEN_XSEC_H_
21#define _KLV_QUASIELASTIC_NU_OXYGEN_XSEC_H_
22
24
25class TSpline3;
26
27namespace genie {
28
30
31public:
32 static const double kO16NubarThr; // energy threshold for 16O + nu_e_bar
33 static const double kO16NuMinE; // minimum energy for 16O + nu_e
34 static const double kMaxE; // maximum neutrino energy for this xsec model
35
37 KLVOxygenIBDPXSec(string config);
38 virtual ~KLVOxygenIBDPXSec();
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 bool ValidKinematics (const Interaction * i) const;
45
46 //-- overload the Algorithm::Configure() methods to load private data
47 // members from configuration options
48 void Configure(const Registry & config);
49 void Configure(string config);
50
51private:
52 void LoadConfig (void);
53
54 void MakeAntiNuESpline(void);
55 void MakeNuESpline(void);
56
57 TSpline3* fXsplNue; //! a spline around the 16O+nu_e xsec points listed in the reference paper
58 TSpline3* fXsplNuebar; //! a spline around the 16O+nu_e_bar xsec points listed in the reference paper
59
60public:
61 ClassDef(KLVOxygenIBDPXSec, 1) // Oxygen16 - (anti)neutrino cross section estimator based on a Kolbe/Langanke/Vogel paper
62};
63} // genie namespace
64#endif // _KLV_QUASIELASTIC_NU_OXYGEN_XSEC_H_
Summary information for an interaction.
Definition Interaction.h:56
double Integral(const Interaction *i) const
TSpline3 * fXsplNuebar
a spline around the 16O+nu_e xsec points listed in the reference paper
static const double kO16NubarThr
bool ValidKinematics(const Interaction *i) const
Is the input kinematical point a physically allowed one?
void Configure(const Registry &config)
bool ValidProcess(const Interaction *i) const
Can this cross section algorithm handle the input process?
static const double kMaxE
static const double kO16NuMinE
double XSec(const Interaction *i, KinePhaseSpace_t k) const
Compute the cross section for the input interaction.
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::EKinePhaseSpace KinePhaseSpace_t