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

#include <MECUtils.h>

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

Public Member Functions

 d2Xsec_dTCosth (const XSecAlgorithmI *m, const Interaction &i, const double Enu, const double LepMass, const double Factor=1.)
 
 ~d2Xsec_dTCosth ()
 
unsigned int NDim (void) const
 
double DoEval (const double *xin) const
 
ROOT::Math::IBaseFunctionMultiDim * Clone (void) const
 

Private Attributes

const XSecAlgorithmIfModel
 
const Interaction fInteraction
 
const double fEnu
 
const double fLepMass
 
const double fFactor
 

Detailed Description

Definition at line 95 of file MECUtils.h.

Constructor & Destructor Documentation

genie::utils::mec::gsl::d2Xsec_dTCosth::d2Xsec_dTCosth ( const XSecAlgorithmI m,
const Interaction i,
const double  Enu,
const double  LepMass,
const double  Factor = 1. 
)

Definition at line 470 of file MECUtils.cxx.

471  :
472 ROOT::Math::IBaseFunctionMultiDim(),
473 fModel(m),
474 fInteraction(i),
475 fEnu(Enu),
476 fLepMass(LepMass),
477 fFactor(Factor)
478 {
479 
480 }
const XSecAlgorithmI * fModel
Definition: MECUtils.h:107
genie::utils::mec::gsl::d2Xsec_dTCosth::~d2Xsec_dTCosth ( )

Definition at line 482 of file MECUtils.cxx.

483 {
484 
485 }

Member Function Documentation

ROOT::Math::IBaseFunctionMultiDim * genie::utils::mec::gsl::d2Xsec_dTCosth::Clone ( void  ) const
double genie::utils::mec::gsl::d2Xsec_dTCosth::DoEval ( const double *  xin) const

Definition at line 492 of file MECUtils.cxx.

References genie::utils::mec::Getq0q3FromTlCostl(), genie::kKVctl, genie::kKVQ0, genie::kKVQ3, genie::kKVTl, genie::kPSTlctl, and genie::Kinematics::SetKV().

493 {
494 // inputs:
495 // T [GeV]
496 // cos(theta)
497 // outputs:
498 // differential cross section (hbar=c=1 units)
499 //
500 
501  double T = xin[0];
502  double costh = xin[1];
503 
504  Kinematics * kinematics = fInteraction.KinePtr();
505  kinematics->SetKV(kKVTl, T);
506  kinematics->SetKV(kKVctl, costh);
507 
508  double Q0 = 0 ;
509  double Q3 = 0 ;
511 
512  kinematics ->SetKV(kKVQ0, Q0) ;
513  kinematics ->SetKV(kKVQ3, Q3) ;
514 
515  double xsec = fModel->XSec( &fInteraction, kPSTlctl);
516  return fFactor * xsec;
517 
518 }
Kinematics * KinePtr(void) const
Definition: Interaction.h:76
Generated/set kinematical variables for an event.
Definition: Kinematics.h:39
bool Getq0q3FromTlCostl(double Tl, double costl, double Enu, double ml, double &q0, double &q3)
Definition: MECUtils.cxx:121
virtual double XSec(const Interaction *i, KinePhaseSpace_t k=kPSfE) const =0
Compute the cross section for the input interaction.
void SetKV(KineVar_t kv, double value)
Definition: Kinematics.cxx:335
const XSecAlgorithmI * fModel
Definition: MECUtils.h:107
unsigned int genie::utils::mec::gsl::d2Xsec_dTCosth::NDim ( void  ) const

Definition at line 487 of file MECUtils.cxx.

488 {
489  return 2;
490 }

Member Data Documentation

const double genie::utils::mec::gsl::d2Xsec_dTCosth::fEnu
private

Definition at line 109 of file MECUtils.h.

const double genie::utils::mec::gsl::d2Xsec_dTCosth::fFactor
private

Definition at line 111 of file MECUtils.h.

const Interaction genie::utils::mec::gsl::d2Xsec_dTCosth::fInteraction
private

Definition at line 108 of file MECUtils.h.

const double genie::utils::mec::gsl::d2Xsec_dTCosth::fLepMass
private

Definition at line 110 of file MECUtils.h.

const XSecAlgorithmI* genie::utils::mec::gsl::d2Xsec_dTCosth::fModel
private

Definition at line 107 of file MECUtils.h.


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