Namespaces | Classes | Functions
genie::utils::gsl Namespace Reference

Simple utilities for integrating GSL in the GENIE framework. More...

Namespaces

 wrap
 

Classes

class  d2Xsec_dQ2dv
 
class  d2XSec_dQ2dy_E
 
class  d2XSec_dQ2dydt_E
 
class  d2Xsec_dTCosth
 
class  d2XSec_dWdQ2_E
 
class  d2XSec_dWdQ2_EQ2
 
class  d2XSec_dWdQ2_EW
 
class  d2XSec_dxdy_E
 
class  d2XSec_dxdy_Ex
 
class  d2XSec_dxdy_Ey
 
class  d2XSecRESFast_dWQ2_E
 
class  d3Xsec_dOmegaldThetapi
 
class  d3Xsec_dTldTkdCosThetal
 
class  d3XSec_dxdydt_E
 
class  d4Xsec_dEldThetaldOmegapi
 
class  d5Xsec_dEldOmegaldOmegapi
 
class  d5XSecAR
 
class  dXSec_dElep_AR
 
class  dXSec_dQ2_E
 
class  dXSec_dy_E
 
class  dXSec_Log_Wrapper
 
class  FullQELdXSec
 

Functions

ROOT::Math::IntegrationOneDim::Type Integration1DimTypeFromString (string type)
 
ROOT::Math::IntegrationMultiDim::Type IntegrationNDimTypeFromString (string type)
 

Detailed Description

Simple utilities for integrating GSL in the GENIE framework.

GENIE differential cross section function wrappers for GSL integrators.

Author
Costas Andreopoulos <costas.andreopoulos stfc.ac.uk> University of Liverpool & STFC Rutherford Appleton Lab

May 06, 2004

Copyright (c) 2003-2019, The GENIE Collaboration For the full text of the license visit http://copyright.genie-mc.org or see $GENIE/LICENSE

Author
Costas Andreopoulos <costas.andreopoulos stfc.ac.uk> University of Liverpool & STFC Rutherford Appleton Lab

Sep 01, 2009

Copyright (c) 2003-2019, The GENIE Collaboration For the full text of the license visit http://copyright.genie-mc.org or see $GENIE/LICENSE

Function Documentation

ROOT::Math::IntegrationOneDim::Type genie::utils::gsl::Integration1DimTypeFromString ( string  type)

Definition at line 31 of file GSLUtils.cxx.

References LOG, pWARN, confusionMatrixTree::t, and genie::utils::str::ToLower().

Referenced by genie::mueloss::BezrukovBugaevModel::dE_dx(), genie::mueloss::PetrukhinShestakovModel::dE_dx(), genie::KovalenkoQELCharmPXSec::DR(), genie::IMDXSec::Integrate(), genie::QELXSec::Integrate(), genie::DMELXSec::Integrate(), genie::NuElectronXSec::Integrate(), genie::SmithMonizQELCCXSec::Integrate(), genie::BardinIMDRadCorPXSec::Li2(), and genie::NievesQELCCPXSec::vcr().

32 {
33 // Returns the appropriate IntegrationOneDim type based on the input string
34 
36 
37 
38 #ifdef _OLD_GSL_INTEGRATION_ENUM_TYPES_
39 
40  if (t=="adaptive") return ROOT::Math::IntegrationOneDim::ADAPTIVE;
41  else if (t=="adaptive_singular") return ROOT::Math::IntegrationOneDim::ADAPTIVESINGULAR;
42  else if (t=="non_adaptive") return ROOT::Math::IntegrationOneDim::NONADAPTIVE;
43 
44  LOG("GSL", pWARN)
45  << "Unknown 1-dim GSL integration type = " << type
46  << ". Setting it to default [adaptive].";
47 
48  return ROOT::Math::IntegrationOneDim::ADAPTIVE;
49 
50 #else
51 
52  if (t=="gauss") return ROOT::Math::IntegrationOneDim::kGAUSS;
53  else if (t=="adaptive") return ROOT::Math::IntegrationOneDim::kADAPTIVE;
54  else if (t=="adaptive_singular") return ROOT::Math::IntegrationOneDim::kADAPTIVESINGULAR;
55  else if (t=="non_adaptive") return ROOT::Math::IntegrationOneDim::kNONADAPTIVE;
56 
57  LOG("GSL", pWARN)
58  << "Unknown 1-dim GSL integration type = " << type
59  << ". Setting it to default [adaptive].";
60 
61  return ROOT::Math::IntegrationOneDim::kADAPTIVE;
62 
63 #endif
64 }
::xsd::cxx::tree::type type
Definition: Database.h:110
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition: Messenger.h:97
string ToLower(string input)
#define pWARN
Definition: Messenger.h:61
ROOT::Math::IntegrationMultiDim::Type genie::utils::gsl::IntegrationNDimTypeFromString ( string  type)

Definition at line 67 of file GSLUtils.cxx.

References LOG, pWARN, confusionMatrixTree::t, and genie::utils::str::ToLower().

Referenced by genie::DISXSec::CacheFreeNucleonXSec(), genie::DMDISXSec::CacheFreeNucleonXSec(), genie::ReinSehgalRESXSecWithCache::CacheResExcitationXSec(), genie::ReinSehgalRESXSecWithCacheFast::CacheResExcitationXSec(), genie::mueloss::KokoulinPetrukhinModel::dE_dx(), genie::COHXSecAR::Integrate(), genie::RESXSec::Integrate(), genie::DISXSec::Integrate(), genie::COHXSec::Integrate(), genie::DMDISXSec::Integrate(), genie::AlamSimoAtharVacasSKXSec::Integrate(), genie::MECXSec::Integrate(), genie::DFRXSec::Integrate(), genie::SmithMonizQELCCXSec::Integrate(), genie::ReinSehgalRESXSec::Integrate(), genie::ReinSehgalRESXSecFast::Integrate(), and genie::NewQELXSec::Integrate().

68 {
69 // Returns the appropriate IntegrationMultiDim type based on the input string
70 
72 
73 #ifdef _OLD_GSL_INTEGRATION_ENUM_TYPES_
74 
75  if (t=="adaptive") return ROOT::Math::IntegrationMultiDim::ADAPTIVE;
76  else if (t=="plain") return ROOT::Math::IntegrationMultiDim::PLAIN;
77  else if (t=="vegas") return ROOT::Math::IntegrationMultiDim::VEGAS;
78  else if (t=="miser") return ROOT::Math::IntegrationMultiDim::MISER;
79 
80  LOG("GSL", pWARN)
81  << "Unknown N-dim GSL integration type = " << type
82  << ". Setting it to default [adaptive].";
83 
84  return ROOT::Math::IntegrationMultiDim::ADAPTIVE;
85 
86 #else
87 
88  if (t=="adaptive") return ROOT::Math::IntegrationMultiDim::kADAPTIVE;
89  else if (t=="plain") return ROOT::Math::IntegrationMultiDim::kPLAIN;
90  else if (t=="vegas") return ROOT::Math::IntegrationMultiDim::kVEGAS;
91  else if (t=="miser") return ROOT::Math::IntegrationMultiDim::kMISER;
92 
93  LOG("GSL", pWARN)
94  << "Unknown N-dim GSL integration type = " << type
95  << ". Setting it to default [adaptive].";
96 
97  return ROOT::Math::IntegrationMultiDim::kADAPTIVE;
98 
99 #endif
100 
101 }
::xsd::cxx::tree::type type
Definition: Database.h:110
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
Definition: Messenger.h:97
string ToLower(string input)
#define pWARN
Definition: Messenger.h:61