GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
genie::utils::gsl::d2XSec_dWdQ2_EQ2 Class Reference

#include <GSLXSecFunc.h>

Inheritance diagram for genie::utils::gsl::d2XSec_dWdQ2_EQ2:
Inheritance graph
[legend]
Collaboration diagram for genie::utils::gsl::d2XSec_dWdQ2_EQ2:
Collaboration graph
[legend]

Public Member Functions

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

Private Attributes

const XSecAlgorithmIfModel
 
const InteractionfInteraction
 
double fQ2
 

Detailed Description

Definition at line 302 of file GSLXSecFunc.h.

Constructor & Destructor Documentation

genie::utils::gsl::d2XSec_dWdQ2_EQ2::d2XSec_dWdQ2_EQ2 ( const XSecAlgorithmI m,
const Interaction i,
double  Q2 
)

Definition at line 558 of file GSLXSecFunc.cxx.

559  :
560 ROOT::Math::IBaseFunctionOneDim(),
561 fModel(m),
562 fInteraction(i),
563 fQ2(Q2)
564 {
565 
566 }
double Q2(const Interaction *const i)
Definition: KineUtils.cxx:1077
const Interaction * fInteraction
Definition: GSLXSecFunc.h:315
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:314
genie::utils::gsl::d2XSec_dWdQ2_EQ2::~d2XSec_dWdQ2_EQ2 ( )

Definition at line 567 of file GSLXSecFunc.cxx.

568 {
569 
570 }

Member Function Documentation

ROOT::Math::IBaseFunctionOneDim * genie::utils::gsl::d2XSec_dWdQ2_EQ2::Clone ( void  ) const
double genie::utils::gsl::d2XSec_dWdQ2_EQ2::DoEval ( double  xin) const

Definition at line 575 of file GSLXSecFunc.cxx.

References genie::units::cm2, genie::kPSWQ2fE, and genie::utils::kinematics::W().

576 {
577 // inputs:
578 // W [GeV]
579 // outputs:
580 // differential cross section [10^-38 cm^2/GeV^3]
581 //
582  double W = xin;
583  fInteraction->KinePtr()->SetW(W);
585  double xsec = fModel->XSec(fInteraction,kPSWQ2fE);
586  return xsec/(1E-38 * units::cm2);
587 }
void SetQ2(double Q2, bool selected=false)
Definition: Kinematics.cxx:255
Kinematics * KinePtr(void) const
Definition: Interaction.h:76
const Interaction * fInteraction
Definition: GSLXSecFunc.h:315
double W(const Interaction *const i)
Definition: KineUtils.cxx:1101
static constexpr double cm2
Definition: Units.h:69
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:314
virtual double XSec(const Interaction *i, KinePhaseSpace_t k=kPSfE) const =0
Compute the cross section for the input interaction.
void SetW(double W, bool selected=false)
Definition: Kinematics.cxx:279
unsigned int genie::utils::gsl::d2XSec_dWdQ2_EQ2::NDim ( void  ) const

Definition at line 571 of file GSLXSecFunc.cxx.

572 {
573  return 1;
574 }

Member Data Documentation

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

Definition at line 315 of file GSLXSecFunc.h.

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

Definition at line 314 of file GSLXSecFunc.h.

double genie::utils::gsl::d2XSec_dWdQ2_EQ2::fQ2
private

Definition at line 316 of file GSLXSecFunc.h.


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