GENIEGenerator
Loading...
Searching...
No Matches
BBA07ELFormFactorsModel.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::BBA07ELFormFactorsModel
5
6\brief Computes elastic form factors using the BBA2007 parameterization.
7 Concrete implementation of the ELFormFactorsModelI interface.
8
9\ref A.Bodek, R.Bradford, H.Budd and S.Avvakumov,
10 Euro.Phys.J.C53 (2008);[arXiv:0708.1946 [hep-ex]]
11
12
13\author Igor Kakorin <kakorin@jinr.ru>
14 Joint Institute for Nuclear Research \n
15
16 adapted from fortran code provided by:
17 Konstantin Kuzmin <kkuzmin@theor.jinr.ru>, \n
18 Joint Institute for Nuclear Research
19 Institute for Theoretical and Experimental Physics \n
20
21 Vladimir Lyubushkin, \n
22 Joint Institute for Nuclear Research \n
23
24 Vadim Naumov <vnaumov@theor.jinr.ru>, \n
25 Joint Institute for Nuclear Research \n
26
27 based on code of:
28 Costas Andreopoulos <c.andreopoulos \at cern.ch> \n
29 University of Liverpool
30
31\created Dec 01, 2017
32
33\cpright Copyright (c) 2003-2025, The GENIE Collaboration
34 For the full text of the license visit http://copyright.genie-mc.org
35
36*/
37//____________________________________________________________________________
38
39#ifndef _BBA2007_EL_FORM_FACTORS_MODEL_H_
40#define _BBA2007_EL_FORM_FACTORS_MODEL_H_
41
43
44namespace genie {
45
46typedef struct SBBA2007Fit
47{
48 double a1, b1, b2, b3, p1, p2, p3, p4, p5, p6, p7;
49}
51
53
54public:
56 BBA07ELFormFactorsModel(string config);
58
59 // implement the ELFormFactorsModelI interface
60 double Gep (const Interaction * interaction) const;
61 double Gmp (const Interaction * interaction) const;
62 double Gen (const Interaction * interaction) const;
63 double Gmn (const Interaction * interaction) const;
64
65 // overload Algorithm's Configure() to load the BBA2007Fit_t
66 // structs from the configuration Registry
67 void Configure (const Registry & config);
68 void Configure (string param_set);
69
70private:
71
72 // fill data members from the configuration Registry
73 void LoadConfig(void);
74
75
76 double AN (double x,double c1, double c2, double c3,double c4,double c5, double c6, double c7) const;
77
78
79
80 // model parameters.
81 BBA2007Fit_t fGep; ///< BBA2007 fit coefficients for Gep
82 BBA2007Fit_t fGen; ///< BBA2007 fit coefficients for Gen
83 BBA2007Fit_t fGmp; ///< BBA2007 fit coefficients for Gmp
84 BBA2007Fit_t fGmn; ///< BBA2007 fit coefficients for Gmn
85 double fMuP; ///< Anomalous proton magnetic moment
86 double fMuN; ///< Anomalous neutron magnetic moment
87};
88
89} // genie namespace
90
91#endif // _BBA2007_EL_FORM_FACTORS_MODEL_H_
double fMuP
Anomalous proton magnetic moment.
double Gmn(const Interaction *interaction) const
Compute the elastic form factor G_{mn} for the input interaction.
double fMuN
Anomalous neutron magnetic moment.
double AN(double x, double c1, double c2, double c3, double c4, double c5, double c6, double c7) const
BBA2007Fit_t fGen
BBA2007 fit coefficients for Gen.
double Gep(const Interaction *interaction) const
Compute the elastic form factor G_{ep} for the input interaction.
double Gen(const Interaction *interaction) const
Compute the elastic form factor G_{en} for the input interaction.
BBA2007Fit_t fGep
BBA2007 fit coefficients for Gep.
BBA2007Fit_t fGmn
BBA2007 fit coefficients for Gmn.
void Configure(const Registry &config)
BBA2007Fit_t fGmp
BBA2007 fit coefficients for Gmp.
double Gmp(const Interaction *interaction) const
Compute the elastic form factor G_{mp} for the input interaction.
Summary information for an interaction.
Definition Interaction.h:56
A registry. Provides the container for algorithm configuration parameters.
Definition Registry.h:65
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
struct genie::SBBA2007Fit BBA2007Fit_t