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::dXSec_dElep_AR Class Reference

#include <GSLXSecFunc.h>

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

Public Member Functions

 dXSec_dElep_AR (const XSecAlgorithmI *m, const Interaction *i, string gsl_nd_integrator_type, double gsl_relative_tolerance, unsigned int max_n_calls)
 
 dXSec_dElep_AR ()
 
 ~dXSec_dElep_AR ()
 
dXSec_dElep_ARClone (void) const
 
double DoEval (double xin) const
 

Private Attributes

const XSecAlgorithmIfModel
 
const InteractionfInteraction
 
const
genie::utils::gsl::d3Xsec_dOmegaldThetapi
func
 
ROOT::Math::IntegratorMultiDim integrator
 
double kine_min [3]
 
double kine_max [3]
 
string fGSLIntegratorType
 
double fGSLRelTol
 
unsigned int fGSLMaxCalls
 

Detailed Description

.....................................................................................

genie::utils::gsl::dXSec_dElep_AR A 1-D cross section function: dxsec/dElep Used for Alvarez-Ruso coherent.

Definition at line 422 of file GSLXSecFunc.h.

Constructor & Destructor Documentation

genie::utils::gsl::dXSec_dElep_AR::dXSec_dElep_AR ( const XSecAlgorithmI m,
const Interaction i,
string  gsl_nd_integrator_type,
double  gsl_relative_tolerance,
unsigned int  max_n_calls 
)

Definition at line 1001 of file GSLXSecFunc.cxx.

References fInteraction, fModel, func, integrator, genie::controls::kASmallNum, kine_max, kine_min, and genie::constants::kPi.

1004  :
1005 ROOT::Math::IBaseFunctionOneDim(),
1006 fModel(m),
1007 fInteraction(i),
1008 integrator(utils::gsl::IntegrationNDimTypeFromString(gsl_nd_integrator_type),1, gsl_relative_tolerance, max_n_calls),
1009 fGSLIntegratorType(gsl_nd_integrator_type),
1010 fGSLRelTol(gsl_relative_tolerance),
1011 fGSLMaxCalls(max_n_calls)
1012 {
1014 
1015  integrator.SetRelTolerance(gsl_relative_tolerance);
1016  integrator.SetFunction(*func);
1017 
1019 
1022 }
ROOT::Math::IntegrationMultiDim::Type IntegrationNDimTypeFromString(string type)
Definition: GSLUtils.cxx:59
static const double kASmallNum
Definition: Controls.h:40
const Interaction * fInteraction
Definition: GSLXSecFunc.h:437
const genie::utils::gsl::d3Xsec_dOmegaldThetapi * func
Definition: GSLXSecFunc.h:439
ROOT::Math::IntegratorMultiDim integrator
Definition: GSLXSecFunc.h:441
const XSecAlgorithmI * fModel
Definition: GSLXSecFunc.h:436
genie::utils::gsl::dXSec_dElep_AR::dXSec_dElep_AR ( )
inline

Definition at line 428 of file GSLXSecFunc.h.

428 {};
genie::utils::gsl::dXSec_dElep_AR::~dXSec_dElep_AR ( )

Definition at line 1023 of file GSLXSecFunc.cxx.

References func().

1024 {
1025  delete func;
1026 }
const genie::utils::gsl::d3Xsec_dOmegaldThetapi * func
Definition: GSLXSecFunc.h:439

Member Function Documentation

genie::utils::gsl::dXSec_dElep_AR * genie::utils::gsl::dXSec_dElep_AR::Clone ( void  ) const
double genie::utils::gsl::dXSec_dElep_AR::DoEval ( double  xin) const

Definition at line 1027 of file GSLXSecFunc.cxx.

References func(), LOG, and pINFO.

1028 {
1029  double Elep = xin;
1030  func->SetE_lep(Elep);
1031  double xsec = integrator.Integral(&kine_min[0], &kine_max[0]) ;
1032  LOG("GSLXSecFunc",pINFO) << "dXSec_dElep_AR >> "<<func->NDim()<<"d integral done. (Elep = " <<Elep<< " , dxsec/dElep = "<<xsec << ")";
1033  return xsec;
1034 }
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition: Messenger.h:96
void SetE_lep(double E_lepton) const
#define pINFO
Definition: Messenger.h:62
const genie::utils::gsl::d3Xsec_dOmegaldThetapi * func
Definition: GSLXSecFunc.h:439
ROOT::Math::IntegratorMultiDim integrator
Definition: GSLXSecFunc.h:441

Member Data Documentation

string genie::utils::gsl::dXSec_dElep_AR::fGSLIntegratorType
private

Definition at line 446 of file GSLXSecFunc.h.

unsigned int genie::utils::gsl::dXSec_dElep_AR::fGSLMaxCalls
private

Definition at line 448 of file GSLXSecFunc.h.

double genie::utils::gsl::dXSec_dElep_AR::fGSLRelTol
private

Definition at line 447 of file GSLXSecFunc.h.

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

Definition at line 437 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().

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

Definition at line 436 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().

const genie::utils::gsl::d3Xsec_dOmegaldThetapi* genie::utils::gsl::dXSec_dElep_AR::func
private

Definition at line 439 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().

ROOT::Math::IntegratorMultiDim genie::utils::gsl::dXSec_dElep_AR::integrator
mutableprivate

Definition at line 441 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().

double genie::utils::gsl::dXSec_dElep_AR::kine_max[3]
private

Definition at line 444 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().

double genie::utils::gsl::dXSec_dElep_AR::kine_min[3]
private

Definition at line 443 of file GSLXSecFunc.h.

Referenced by dXSec_dElep_AR().


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