GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MKFFCC.cxx
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*
3  Copyright (c) 2003-2024, The GENIE Collaboration
4  For the full text of the license visit http://copyright.genie-mc.org
5  or see $GENIE/LICENSE
6 
7 Author: Igor Kakorin <kakorin@jinr.ru>, Joint Institute for Nuclear Research
8  based on code of Costas Andreopoulos <c.andreopoulos \at cern.ch>
9  University of Liverpool
10 
11  For the class documentation see the corresponding header file.
12 
13 */
14 //____________________________________________________________________________
15 
21 
22 using namespace genie;
23 using namespace genie::constants;
24 
25 //____________________________________________________________________________
27 LwlynSmithFF("genie::MKFFCC")
28 {
29 
30 }
31 //____________________________________________________________________________
32 MKFFCC::MKFFCC(string config) :
33 LwlynSmithFF("genie::MKFFCC", config)
34 {
35 
36 }
37 //____________________________________________________________________________
39 {
40 
41 }
42 //____________________________________________________________________________
43 double MKFFCC::F1V(const Interaction * interaction) const
44 {
45  return LwlynSmithFF::F1V(interaction);
46 }
47 //____________________________________________________________________________
48 double MKFFCC::xiF2V(const Interaction * interaction) const
49 {
50  return LwlynSmithFF::xiF2V(interaction);
51 }
52 //____________________________________________________________________________
53 double MKFFCC::FA(const Interaction * interaction) const
54 {
55  return LwlynSmithFF::FA(interaction);
56 }
57 //____________________________________________________________________________
58 double MKFFCC::Fp(const Interaction * interaction) const
59 {
60  return LwlynSmithFF::Fp(interaction);
61 }
62 //____________________________________________________________________________
63 double MKFFCC::tau(const Interaction * interaction) const
64 {
65 // computes q^2 / (4 * Misoscalar^2)
66 
67  //-- get kinematics & initial state parameters
68  const Kinematics & kinematics = interaction->Kine();
69  //const InitialState & init_state = interaction->InitState();
70  double q2 = kinematics.q2();
71 
72  PDGLibrary * pdglib = PDGLibrary::Instance();
73  double M = (pdglib->Find(kPdgProton)->Mass() + pdglib->Find(kPdgNeutron)->Mass())/2;
74 
75  //-- calculate q^2 / (4*Mnuc^2)
76  return q2/(4*M*M);
77 }
78 
79 
80 
double FA(const Interaction *interaction) const
Compute the form factor FA for the input interaction.
Definition: MKFFCC.cxx:53
Generated/set kinematical variables for an event.
Definition: Kinematics.h:39
Summary information for an interaction.
Definition: Interaction.h:56
double q2(bool selected=false) const
Definition: Kinematics.cxx:141
const Kinematics & Kine(void) const
Definition: Interaction.h:71
double xiF2V(const Interaction *interaction) const
Compute the form factor xi*F2V for the input interaction.
Definition: MKFFCC.cxx:48
virtual double xiF2V(const Interaction *interaction) const
Compute the form factor xi*F2V for the input interaction.
virtual double FA(const Interaction *interaction) const
Compute the form factor FA for the input interaction.
double tau(const Interaction *interaction) const
Definition: MKFFCC.cxx:63
double Fp(const Interaction *interaction) const
Compute the form factor Fp for the input interaction.
Definition: MKFFCC.cxx:58
static PDGLibrary * Instance(void)
Definition: PDGLibrary.cxx:68
Singleton class to load &amp; serve a TDatabasePDG.
Definition: PDGLibrary.h:35
Abstract Base Class: implements the QELFormFactorsModelI interface but can not be instantiated...
Definition: LwlynSmithFF.h:36
const int kPdgProton
Definition: PDGCodes.h:81
TParticlePDG * Find(int pdgc, bool must_exist=true)
Definition: PDGLibrary.cxx:86
double F1V(const Interaction *interaction) const
Compute the form factor F1V for the input interaction.
Definition: MKFFCC.cxx:43
virtual ~MKFFCC()
Definition: MKFFCC.cxx:38
const int kPdgNeutron
Definition: PDGCodes.h:83
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
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.