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

#include "/cvmfs/nova.opensciencegrid.org/externals/genie/v3_00_06_p01/Linux64bit+2.6-2.12-e17-debug/GENIE-Generator/src/Physics/XSectionIntegration/GSLXSecFunc.h"

Inheritance diagram for genie::utils::gsl::d2XSec_dQ2dy_E:

Public Member Functions

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

Private Attributes

const XSecAlgorithmIfModel
 
const InteractionfInteraction
 

Detailed Description

Definition at line 101 of file GSLXSecFunc.h.

Constructor & Destructor Documentation

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

Definition at line 150 of file GSLXSecFunc.cxx.

151  :
152 ROOT::Math::IBaseFunctionMultiDim(),
153 fModel(m),
154 fInteraction(i)
155 {
156 
157 }
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:113
const Interaction * fInteraction
Definition: GSLXSecFunc.h:114
genie::utils::gsl::d2XSec_dQ2dy_E::~d2XSec_dQ2dy_E ( )

Definition at line 158 of file GSLXSecFunc.cxx.

159 {
160 
161 }

Member Function Documentation

ROOT::Math::IBaseFunctionMultiDim * genie::utils::gsl::d2XSec_dQ2dy_E::Clone ( void  ) const

Definition at line 183 of file GSLXSecFunc.cxx.

References fInteraction, and fModel.

double genie::utils::gsl::d2XSec_dQ2dy_E::DoEval ( const double *  xin) const

Definition at line 166 of file GSLXSecFunc.cxx.

References genie::units::cm2, E, fInteraction, fModel, genie::Interaction::KinePtr(), genie::kPSQ2yfE, genie::utils::kinematics::Q2(), genie::Kinematics::SetQ2(), genie::Kinematics::Sety(), genie::utils::kinematics::UpdateXFromQ2Y(), genie::XSecAlgorithmI::XSec(), xsec, and submit_syst::y.

167 {
168 // inputs:
169 // Q2 [-]
170 // y [-]
171 // outputs:
172 // differential cross section [10^-38 cm^2]
173 //
174  double Q2 = xin[0];
175  double y = xin[1];
176  fInteraction->KinePtr()->SetQ2(Q2);
177  fInteraction->KinePtr()->Sety(y);
179  double xsec = fModel->XSec(fInteraction, kPSQ2yfE);
180  return xsec/(1E-38 * units::cm2);
181 }
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.
static const double cm2
Definition: Units.h:77
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:113
Float_t E
Definition: plot.C:20
const Interaction * fInteraction
Definition: GSLXSecFunc.h:114
Double_t xsec[nknots]
Definition: testXsec.C:47
void Sety(double y, bool selected=false)
Definition: Kinematics.cxx:253
void UpdateXFromQ2Y(const Interaction *in)
Definition: KineUtils.cxx:1221
unsigned int genie::utils::gsl::d2XSec_dQ2dy_E::NDim ( void  ) const

Definition at line 162 of file GSLXSecFunc.cxx.

163 {
164  return 2;
165 }

Member Data Documentation

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

Definition at line 114 of file GSLXSecFunc.h.

Referenced by Clone(), and DoEval().

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

Definition at line 113 of file GSLXSecFunc.h.

Referenced by Clone(), and DoEval().


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