GENIEGenerator
Loading...
Searching...
No Matches
BertuzzoDNuCOHPXSec.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3 \class genie::BertuzzoDNuCOHPXSec
4
5 \brief Differential cross section for v+As coherent elastic scattering.Coherent DNu. \n
6 Is a concrete implementation of the XSecAlgorithmI interface. \n
7
8 \ref E.Bertuzzo, S.Jana, P.A.N.Machado, R. Zukanovich Funcal
9 PhysRevLett.121.241801 (2018)
10
11 \author Author: Iker de Icaza <i.de-icaza-astiz \at sussex.ac.uk>
12 University of Sussex
13
14 Costas Andreopoulos <c.andreopoulos \at cern.ch>
15 University of Liverpool
16
17 \created June 12, 2020
18
19 \cpright Copyright (c) 2003-2025, The GENIE Collaboration
20 For the full text of the license visit http://copyright.genie-mc.org
21
22*/
23//____________________________________________________________________________
24
25#ifndef _BERTUZZO_DNu_COH_CROSS_SECTION_H_
26#define _BERTUZZO_DNu_COH_CROSS_SECTION_H_
27
30
31namespace genie {
32
33class XSecIntegratorI;
34
36
37public:
39 BertuzzoDNuCOHPXSec(string config);
40 virtual ~BertuzzoDNuCOHPXSec();
41
42 // XSecAlgorithmI interface implementation
43 double XSec (const Interaction * i, KinePhaseSpace_t k) const override;
44 double Integral (const Interaction * i) const override;
45 bool ValidProcess (const Interaction * i) const override;
46 bool ValidKinematics (const Interaction * i) const override;
47
48 // Override the Algorithm::Configure methods to load configuration
49 // data to private data members
50 void Configure (const Registry & config) override;
51 void Configure (string param_set) override;
52
53private:
54
55 void LoadConfig(void);
56
57 const XSecIntegratorI * fXSecIntegrator; ///< cross section integrator
58 const EngelFormFactor * fFF; ///< Engel Form Factor algorithm
59
60 double fEps2;
61
62 std::array<double, 4> fMixing2s;
63 // mixing angles between the neutrinos (including a 4rth sterile one)
64 // to the dark neutrino
65
66 double fAlpha_D;
67
70
71};
72
73} // genie namespace
74
75
76#endif // _BERTUZZO_DNu_COH_CROSS_SECTION_H_
bool ValidProcess(const Interaction *i) const override
Can this cross section algorithm handle the input process?
const EngelFormFactor * fFF
Engel Form Factor algorithm.
double XSec(const Interaction *i, KinePhaseSpace_t k) const override
Compute the cross section for the input interaction.
void Configure(const Registry &config) override
const XSecIntegratorI * fXSecIntegrator
cross section integrator
double Integral(const Interaction *i) const override
std::array< double, 4 > fMixing2s
bool ValidKinematics(const Interaction *i) const override
Is the input kinematical point a physically allowed one?
Form Factor for BertuzzoDNuCOHXSec...
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