Public Member Functions | Private Attributes | List of all members
genie::utils::gsl::dXSec_dQ2_E Class Reference

#include "/cvmfs/nova.opensciencegrid.org/externals/genie/v3_00_06_p01a/Linux64bit+3.10-2.17-e19-debug/GENIE-Generator/src/Physics/XSectionIntegration/GSLXSecFunc.h"

Inheritance diagram for genie::utils::gsl::dXSec_dQ2_E:

Public Member Functions

 dXSec_dQ2_E (const XSecAlgorithmI *m, const Interaction *i)
 
 ~dXSec_dQ2_E ()
 
unsigned int NDim (void) const
 
double DoEval (double xin) const
 
ROOT::Math::IBaseFunctionOneDim * Clone (void) const
 

Private Attributes

const XSecAlgorithmIfModel
 
const InteractionfInteraction
 

Detailed Description

Definition at line 38 of file GSLXSecFunc.h.

Constructor & Destructor Documentation

genie::utils::gsl::dXSec_dQ2_E::dXSec_dQ2_E ( const XSecAlgorithmI m,
const Interaction i 
)

Definition at line 35 of file GSLXSecFunc.cxx.

36  :
37 ROOT::Math::IBaseFunctionOneDim(),
38 fModel(m),
39 fInteraction(i)
40 {
41 
42 }
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:50
const Interaction * fInteraction
Definition: GSLXSecFunc.h:51
genie::utils::gsl::dXSec_dQ2_E::~dXSec_dQ2_E ( )

Definition at line 43 of file GSLXSecFunc.cxx.

44 {
45 
46 }

Member Function Documentation

ROOT::Math::IBaseFunctionOneDim * genie::utils::gsl::dXSec_dQ2_E::Clone ( void  ) const

Definition at line 67 of file GSLXSecFunc.cxx.

References fInteraction, and fModel.

Referenced by genie::utils::gsl::dXSec_dElep_AR::dXSec_dElep_AR().

double genie::utils::gsl::dXSec_dQ2_E::DoEval ( double  xin) const

Definition at line 51 of file GSLXSecFunc.cxx.

References genie::units::cm2, E, fInteraction, fModel, genie::Interaction::KinePtr(), genie::kPSQ2fE, LOG, pDEBUG, genie::utils::kinematics::Q2(), genie::Kinematics::SetQ2(), genie::XSecAlgorithmI::XSec(), and xsec.

Referenced by genie::utils::gsl::dXSec_dElep_AR::dXSec_dElep_AR().

52 {
53 // inputs:
54 // Q2 [GeV^2]
55 // outputs:
56 // differential cross section [10^-38 cm^2 / GeV^2]
57 //
58  double Q2 = xin;
59  fInteraction->KinePtr()->SetQ2(Q2);
60  double xsec = fModel->XSec(fInteraction, kPSQ2fE);
61 #ifdef __GENIE_LOW_LEVEL_MESG_ENABLED__
62  LOG("GSLXSecFunc", pDEBUG) << "xsec(Q2 = " << Q2 << ") = " << xsec;
63 #endif
64  return xsec/(1E-38 * units::cm2);
65 }
double Q2(const Interaction *const i)
Definition: KineUtils.cxx:991
void SetQ2(double Q2, bool selected=false)
Definition: Kinematics.cxx:265
Kinematics * KinePtr(void) const
Definition: Interaction.h:76
virtual double XSec(const Interaction *i, KinePhaseSpace_t k=kPSfE) const =0
Compute the cross section for the input interaction.
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:50
static const double cm2
Definition: Units.h:77
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition: Messenger.h:97
Float_t E
Definition: plot.C:20
Double_t xsec[nknots]
Definition: testXsec.C:47
const Interaction * fInteraction
Definition: GSLXSecFunc.h:51
#define pDEBUG
Definition: Messenger.h:64
unsigned int genie::utils::gsl::dXSec_dQ2_E::NDim ( void  ) const

Definition at line 47 of file GSLXSecFunc.cxx.

48 {
49  return 1;
50 }

Member Data Documentation

const Interaction* genie::utils::gsl::dXSec_dQ2_E::fInteraction
private

Definition at line 51 of file GSLXSecFunc.h.

Referenced by Clone(), and DoEval().

const XSecAlgorithmI* genie::utils::gsl::dXSec_dQ2_E::fModel
private

Definition at line 50 of file GSLXSecFunc.h.

Referenced by Clone(), and DoEval().


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