18 #include <Math/IFunction.h> 19 #include <Math/Integrator.h> 23 #include "Framework/Conventions/GBuild.h" 38 using namespace genie;
67 LOG(
"GLRESXSec",
pDEBUG) <<
"*** Below energy threshold";
75 int NNucl = init_state.
Tgt().
Z();
90 LOG(
"GLRESXSec",
pINFO) <<
"From XSecSplineList: XSec[ve-,free nucleon] (E = " << Ev <<
" GeV) = " << xsec;
93 LOG(
"GLRESXSec",
pINFO) <<
"XSec[ve-] (E = " << Ev <<
" GeV) = " << xsec;
104 LOG(
"GLRESXSec",
pDEBUG) <<
"y = (" << yl.
min <<
", " << yl.
max <<
")";
110 ROOT::Math::IBaseFunctionOneDim *
func =
Cross Section Calculation Interface.
const KPhaseSpace & PhaseSpace(void) const
ROOT::Math::IntegrationOneDim::Type Integration1DimTypeFromString(string type)
string fGSLIntgType
name of GSL numerical integrator
THE MAIN GENIE PROJECT NAMESPACE
Cross Section Integrator Interface.
A simple [min,max] interval for doubles.
bool SplineExists(const XSecAlgorithmI *alg, const Interaction *i) const
A numeric analysis tool class for interpolating 1-D functions.
static XSecSplineList * Instance()
double Evaluate(double x) const
void Configure(const Registry &config)
Range1D_t Limits(KineVar_t kvar) const
Return the kinematical variable limits.
Summary information for an interaction.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
XSecIntegratorI interface implementation.
static constexpr double cm2
A Neutrino Interaction Target. Is a transparent encapsulation of quite different physical systems suc...
virtual void Configure(const Registry &config)
Misc GENIE control constants.
int fGSLMaxEval
GSL max evaluations.
A registry. Provides the container for algorithm configuration parameters.
const UInt_t kIAssumeFreeNucleon
Target * TgtPtr(void) const
bool IsAboveThreshold(void) const
Checks whether the interaction is above the energy threshold.
virtual bool ValidProcess(const Interaction *i) const =0
Can this cross section algorithm handle the input process?
InitialState * InitStatePtr(void) const
const InitialState & InitState(void) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
const Target & Tgt(void) const
const Spline * GetSpline(const XSecAlgorithmI *alg, const Interaction *i) const
List of cross section vs energy splines.
double ProbeE(RefFrame_t rf) const
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
const UInt_t kISkipProcessChk
if set, skip process validity checks
Initial State information.
double fGSLRelTol
required relative tolerance (error)