LwlynSmithFF.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::LwlynSmithFF
5 
6 \brief Abstract Base Class:
7  implements the QELFormFactorsModelI interface but can not be
8  instantiated.
9 
10  Its sole purpose of existence is to transmit common implementation
11  (related to the Llewellyn-Smith model for QEL vN scattering) to its
12  concrete subclasses: LwlynSmithFFCC, LwlynSmithFFNC.
13 
14 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
15  University of Liverpool & STFC Rutherford Appleton Laboratory
16 
17 \created May 03, 2004
18 
19 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
20  For the full text of the license visit http://copyright.genie-mc.org
21 */
22 //____________________________________________________________________________
23 
24 #ifndef _LLEWELLYN_SMITH_FORM_FACTOR_MODEL_H_
25 #define _LLEWELLYN_SMITH_FORM_FACTOR_MODEL_H_
26 
30 
31 namespace genie {
32 
33 class ELFormFactorsModelI;
34 class AxialFormFactorModelI;
35 
37 
38 public:
39 
40  virtual ~LwlynSmithFF();
41 
42  // QELFormFactorModelI interface implementation
43  virtual double F1V (const Interaction * interaction) const;
44  virtual double xiF2V (const Interaction * interaction) const;
45  virtual double FA (const Interaction * interaction) const;
46  virtual double Fp (const Interaction * interaction) const;
47 
48  // Overload the Algorithm::Configure() methods to load private data
49  // members from configuration options
50  virtual void Configure(const Registry & config);
51  virtual void Configure(string config);
52 
53 protected:
54 
55  LwlynSmithFF();
56  LwlynSmithFF(string name);
57  LwlynSmithFF(string name, string config);
58 
59  virtual void LoadConfig (void);
60 
61  virtual double tau (const Interaction * interaction) const;
62  virtual double GVE (const Interaction * interaction) const;
63  virtual double GVM (const Interaction * interaction) const;
64 
65  virtual double F1P (const Interaction * interaction) const;
66  virtual double F2P (const Interaction * interaction) const;
67  virtual double F1N (const Interaction * interaction) const;
68  virtual double F2N (const Interaction * interaction) const;
69 
70  virtual double StrangeF1V (const Interaction * interaction) const;
71  virtual double StrangexiF2V (const Interaction * interaction) const;
72  virtual double StrangeFA (const Interaction * interaction) const;
73 
76 
79 
80  double fMuP;
81  double fMuN;
82  double fSin28w;
83  double fFDratio;
85 };
86 
87 } // genie namespace
88 
89 #endif
static QCString name
Definition: declinfo.cpp:673
virtual double StrangeF1V(const Interaction *interaction) const
ELFormFactors fELFF
Definition: LwlynSmithFF.h:77
AxialFormFactor fAxFF
Definition: LwlynSmithFF.h:78
virtual double StrangeFA(const Interaction *interaction) const
virtual double tau(const Interaction *interaction) const
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
Pure abstract base class. Defines the AxialFormFactorModelI interface to be implemented by LlewellynS...
virtual double GVM(const Interaction *interaction) const
virtual double StrangexiF2V(const Interaction *interaction) const
virtual double GVE(const Interaction *interaction) const
A class holding the Axial Form Factor.
Summary information for an interaction.
Definition: Interaction.h:56
Pure abstract base class. Defines the QELFormFactorsModelI interface to be implemented by any algorit...
virtual void Configure(const Registry &config)
Pure abstract base class. Defines the ELFormFactorsModelI interface to be implemented by any algorith...
static Config * config
Definition: config.cpp:1054
virtual double F1N(const Interaction *interaction) const
virtual double F2N(const Interaction *interaction) const
virtual double xiF2V(const Interaction *interaction) const
Compute the form factor xi*F2V for the input interaction.
const AxialFormFactorModelI * fAxFFModel
Definition: LwlynSmithFF.h:75
A class holding the Elastic Form Factors Ge,Gm.
Definition: ELFormFactors.h:36
virtual double FA(const Interaction *interaction) const
Compute the form factor FA for the input interaction.
virtual void LoadConfig(void)
virtual double F1P(const Interaction *interaction) const
A registry. Provides the container for algorithm configuration parameters.
Definition: Registry.h:65
virtual double F2P(const Interaction *interaction) const
Abstract Base Class: implements the QELFormFactorsModelI interface but can not be instantiated...
Definition: LwlynSmithFF.h:36
const ELFormFactorsModelI * fElFFModel
Definition: LwlynSmithFF.h:74
virtual double F1V(const Interaction *interaction) const
Compute the form factor F1V for the input interaction.
virtual double Fp(const Interaction *interaction) const
Compute the form factor Fp for the input interaction.