17 #include <Math/IFunction.h>
18 #include <Math/Integrator.h>
27 using namespace genie;
28 using namespace genie::constants;
29 using namespace genie::utils;
59 ROOT::Math::IntegrationOneDim::Type ig_type =
66 double xsec = ig.Integral(DNuEnergy.
min, DNuEnergy.
max) * (1E-38 *
units::cm2);
71 <<
"XSec[COHDNu] (E = " << Ev <<
" GeV) = " << xsec/(
units::cm2) <<
" cm^2";
99 this->
GetParamDef(
"gsl-max-subintervals", max_subint, 500);
Cross Section Calculation Interface.
const KPhaseSpace & PhaseSpace(void) const
ROOT::Math::IntegrationOneDim::Type Integration1DimTypeFromString(string type)
Range1D_t IntegrationRange(void) const
string fGSLIntgType
name of GSL numerical integrator
Cross Section Integrator Interface.
A simple [min,max] interval for doubles.
void Configure(const Registry &config)
Summary information for an interaction.
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
static constexpr double cm2
virtual void Configure(const Registry &config)
double func(double x, double y)
const UInt_t kISkipKinematicChk
if set, skip kinematic validity checks
virtual bool ValidProcess(const Interaction *i) const =0
Can this cross section algorithm handle the input process?
double Integrate(const XSecAlgorithmI *model, const Interaction *i) const
int fGSLMaxEval
GSL max evaluations.
unsigned int fGSLMaxSizeOfSubintervals
GSL maximum number of sub-intervals for 1D integrator.
A registry. Provides the container for algorithm configuration parameters.
bool IsAboveThreshold(void) const
Checks whether the interaction is above the energy threshold.
const InitialState & InitState(void) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
bool GetParam(const RgKey &name, T &p, bool is_top_call=true) const
double ProbeE(RefFrame_t rf) const
int fGSLMinEval
GSL min evaluations. Ignored by some integrators.
const UInt_t kISkipProcessChk
if set, skip process validity checks
Initial State information.
double fGSLRelTol
required relative tolerance (error)