GENIEGenerator
Loading...
Searching...
No Matches
genie::LwlynSmithFFNC Class Reference

Concrete implementation of the QELFormFactorsModelI : Form Factors for Quasi Elastic NC vN scattering according to Llewellyn-Smith model. More...

#include <LwlynSmithFFNC.h>

Inheritance diagram for genie::LwlynSmithFFNC:
[legend]
Collaboration diagram for genie::LwlynSmithFFNC:
[legend]

Public Member Functions

 LwlynSmithFFNC ()
 LwlynSmithFFNC (string config)
virtual ~LwlynSmithFFNC ()
double F1V (const Interaction *interaction) const
 Compute the form factor F1V for the input interaction.
double xiF2V (const Interaction *interaction) const
 Compute the form factor xi*F2V for the input interaction.
double FA (const Interaction *interaction) const
 Compute the form factor FA for the input interaction.
double Fp (const Interaction *interaction) const
 Compute the form factor Fp for the input interaction.
Public Member Functions inherited from genie::LwlynSmithFF
virtual ~LwlynSmithFF ()
virtual void Configure (const Registry &config)
virtual void Configure (string config)
Public Member Functions inherited from genie::QELFormFactorsModelI
virtual ~QELFormFactorsModelI ()
Public Member Functions inherited from genie::Algorithm
virtual ~Algorithm ()
virtual void FindConfig (void)
virtual const RegistryGetConfig (void) const
RegistryGetOwnedConfig (void)
virtual const AlgIdId (void) const
 Get algorithm ID.
virtual AlgStatus_t GetStatus (void) const
 Get algorithm status.
virtual bool AllowReconfig (void) const
virtual AlgCmp_t Compare (const Algorithm *alg) const
 Compare with input algorithm.
virtual void SetId (const AlgId &id)
 Set algorithm ID.
virtual void SetId (string name, string config)
const AlgorithmSubAlg (const RgKey &registry_key) const
void AdoptConfig (void)
void AdoptSubstructure (void)
virtual void Print (ostream &stream) const
 Print algorithm info.

Additional Inherited Members

Static Public Member Functions inherited from genie::Algorithm
static string BuildParamVectKey (const std::string &comm_name, unsigned int i)
static string BuildParamVectSizeKey (const std::string &comm_name)
static string BuildParamMatKey (const std::string &comm_name, unsigned int i, unsigned int j)
static string BuildParamMatRowSizeKey (const std::string &comm_name)
static string BuildParamMatColSizeKey (const std::string &comm_name)
Protected Member Functions inherited from genie::LwlynSmithFF
 LwlynSmithFF ()
 LwlynSmithFF (string name)
 LwlynSmithFF (string name, string config)
virtual void LoadConfig (void)
virtual double tau (const Interaction *interaction) const
virtual double GVE (const Interaction *interaction) const
virtual double GVM (const Interaction *interaction) const
virtual double F1P (const Interaction *interaction) const
virtual double F2P (const Interaction *interaction) const
virtual double F1N (const Interaction *interaction) const
virtual double F2N (const Interaction *interaction) const
virtual double StrangeF1V (const Interaction *interaction) const
virtual double StrangexiF2V (const Interaction *interaction) const
virtual double StrangeFA (const Interaction *interaction) const
Protected Member Functions inherited from genie::QELFormFactorsModelI
 QELFormFactorsModelI ()
 QELFormFactorsModelI (string name)
 QELFormFactorsModelI (string name, string config)
Protected Member Functions inherited from genie::Algorithm
 Algorithm ()
 Algorithm (string name)
 Algorithm (string name, string config)
void Initialize (void)
void DeleteConfig (void)
void DeleteSubstructure (void)
RegistryExtractLocalConfig (const Registry &in) const
RegistryExtractLowerConfig (const Registry &in, const string &alg_key) const
 Split an incoming configuration Registry into a block valid for the sub-algo identified by alg_key.
template<class T>
bool GetParam (const RgKey &name, T &p, bool is_top_call=true) const
template<class T>
bool GetParamDef (const RgKey &name, T &p, const T &def) const
template<class T>
int GetParamVect (const std::string &comm_name, std::vector< T > &v, bool is_top_call=true) const
 Handle to load vectors of parameters.
int GetParamVectKeys (const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const
template<class T>
int GetParamMat (const std::string &comm_name, TMatrixT< T > &mat, bool is_top_call=true) const
 Handle to load matrix of parameters.
template<class T>
int GetParamMatSym (const std::string &comm_name, TMatrixTSym< T > &mat, bool is_top_call=true) const
int GetParamMatKeys (const std::string &comm_name, std::vector< RgKey > &k, bool is_top_call=true) const
int AddTopRegistry (Registry *rp, bool owns=true)
 add registry with top priority, also update ownership
int AddLowRegistry (Registry *rp, bool owns=true)
 add registry with lowest priority, also update ownership
int MergeTopRegistry (const Registry &r)
int AddTopRegisties (const vector< Registry * > &rs, bool owns=false)
 Add registries with top priority, also udated Ownerships.
Protected Attributes inherited from genie::LwlynSmithFF
const ELFormFactorsModelIfElFFModel
const AxialFormFactorModelIfAxFFModel
ELFormFactors fELFF
AxialFormFactor fAxFF
double fMuP
double fMuN
double fSin28w
double fFDratio
bool fCleanUpfElFFModel
Protected Attributes inherited from genie::Algorithm
bool fAllowReconfig
bool fOwnsSubstruc
 true if it owns its substructure (sub-algs,...)
AlgId fID
 algorithm name and configuration set
vector< Registry * > fConfVect
vector< bool > fOwnerships
 ownership for every registry in fConfVect
AlgStatus_t fStatus
 algorithm execution status
AlgMapfOwnedSubAlgMp
 local pool for owned sub-algs (taken out of the factory pool)

Detailed Description

Concrete implementation of the QELFormFactorsModelI : Form Factors for Quasi Elastic NC vN scattering according to Llewellyn-Smith model.

References:\n E.A.Paschos and J.Y.Yu, hep-ph/0107261
Author
Costas Andreopoulos <c.andreopoulos \at cern.ch> University of Liverpool
Created:\n May 03, 2004
License:\n Copyright (c) 2003-2025, The GENIE Collaboration
For the full text of the license visit http://copyright.genie-mc.org

Definition at line 29 of file LwlynSmithFFNC.h.

Constructor & Destructor Documentation

◆ LwlynSmithFFNC() [1/2]

LwlynSmithFFNC::LwlynSmithFFNC ( )

Definition at line 22 of file LwlynSmithFFNC.cxx.

22 :
23LwlynSmithFF("genie::LwlynSmithFFNC")
24{
25
26}

References genie::LwlynSmithFF::LwlynSmithFF().

◆ LwlynSmithFFNC() [2/2]

LwlynSmithFFNC::LwlynSmithFFNC ( string config)

Definition at line 28 of file LwlynSmithFFNC.cxx.

28 :
29LwlynSmithFF("genie::LwlynSmithFFNC", config)
30{
31
32}

References genie::LwlynSmithFF::LwlynSmithFF().

◆ ~LwlynSmithFFNC()

LwlynSmithFFNC::~LwlynSmithFFNC ( )
virtual

Definition at line 34 of file LwlynSmithFFNC.cxx.

35{
36
37}

Member Function Documentation

◆ F1V()

double LwlynSmithFFNC::F1V ( const Interaction * interaction) const
virtual

Compute the form factor F1V for the input interaction.

Reimplemented from genie::LwlynSmithFF.

Definition at line 39 of file LwlynSmithFFNC.cxx.

40{
41 //-- calculate F1V-CC
42 double F1V_CC = LwlynSmithFF::F1V(interaction);
43
44 //-- calculate F1p (see hep-ph/0107261)
45 fELFF.Calculate(interaction);
46 double t = LwlynSmithFF::tau(interaction);
47 double F1p = fELFF.Gep() - t * fELFF.Gmp();
48
49 //-- calculate F1V-NC
50 double F1V_NC = 0.5*F1V_CC - 2*fSin28w*F1p;
51 return F1V_NC;
52}
virtual double tau(const Interaction *interaction) const
ELFormFactors fELFF
virtual double F1V(const Interaction *interaction) const
Compute the form factor F1V for the input interaction.

References genie::LwlynSmithFF::F1V(), genie::LwlynSmithFF::fELFF, genie::LwlynSmithFF::fSin28w, and genie::LwlynSmithFF::tau().

◆ FA()

double LwlynSmithFFNC::FA ( const Interaction * interaction) const
virtual

Compute the form factor FA for the input interaction.

Reimplemented from genie::LwlynSmithFF.

Definition at line 68 of file LwlynSmithFFNC.cxx.

69{
70 //-- calculate FA_CC(q2)
71 double FA_CC = LwlynSmithFF::FA(interaction);
72
73 //-- calculate & return FA_NC(q2)
74 double FA_NC = 0.5 * FA_CC;
75 return FA_NC;
76}
virtual double FA(const Interaction *interaction) const
Compute the form factor FA for the input interaction.

References genie::LwlynSmithFF::FA().

Referenced by Fp().

◆ Fp()

double LwlynSmithFFNC::Fp ( const Interaction * interaction) const
virtual

Compute the form factor Fp for the input interaction.

Reimplemented from genie::LwlynSmithFF.

Definition at line 78 of file LwlynSmithFFNC.cxx.

79{
80 //-- get the momentum transfer
81 const Kinematics & kine = interaction->Kine();
82 double q2 = kine.q2();
83
84 //-- get struck nucleon mass & pion pass
85 const InitialState & init_state = interaction->InitState();
86 double MN = init_state.Tgt().HitNucMass();
87 double MN2 = TMath::Power(MN, 2);
88 double Mpi2 = TMath::Power(kPionMass, 2);
89
90 //-- calculate FA
91 double fa = this->FA(interaction);
92
93 //-- calculate and return Fp
94 double Fp_NC = 2*MN2*fa/(Mpi2-q2);
95 return Fp_NC;
96}
const Target & Tgt(void) const
const Kinematics & Kine(void) const
Definition Interaction.h:71
const InitialState & InitState(void) const
Definition Interaction.h:69
double q2(bool selected=false) const
double FA(const Interaction *interaction) const
Compute the form factor FA for the input interaction.
double HitNucMass(void) const
Definition Target.cxx:233

References FA(), genie::Target::HitNucMass(), genie::Interaction::InitState(), genie::Interaction::Kine(), genie::constants::kPionMass, genie::Kinematics::q2(), and genie::InitialState::Tgt().

◆ xiF2V()

double LwlynSmithFFNC::xiF2V ( const Interaction * interaction) const
virtual

Compute the form factor xi*F2V for the input interaction.

Reimplemented from genie::LwlynSmithFF.

Definition at line 54 of file LwlynSmithFFNC.cxx.

55{
56 //-- calculate xiF2V_CC
57 double xiF2V_CC = LwlynSmithFF::xiF2V(interaction);
58
59 //-- calculate F2p (see hep-ph/0107261)
60 fELFF.Calculate(interaction);
61 double F2p = (fELFF.Gmp() - fELFF.Gep()) / fMuP;
62
63 //-- calculate xiF2-NC
64 double xiF2V_NC = 0.5*xiF2V_CC - 2*fSin28w*(fMuP-1)*F2p;
65 return xiF2V_NC;
66}
virtual double xiF2V(const Interaction *interaction) const
Compute the form factor xi*F2V for the input interaction.

References genie::LwlynSmithFF::fELFF, genie::LwlynSmithFF::fMuP, genie::LwlynSmithFF::fSin28w, and genie::LwlynSmithFF::xiF2V().


The documentation for this class was generated from the following files: