31 #ifndef ROOT_Math_GSLInterpolator 32 #define ROOT_Math_GSLInterpolator 40 #include "gsl/gsl_interp.h" 41 #include "gsl/gsl_spline.h" 43 #include "gsl/gsl_errno.h" 71 bool Init(
unsigned int ndata,
const double *x,
const double *y);
73 double Eval(
double x)
const 77 static unsigned int nErrors = 0;
88 MATH_WARN_MSG(
"GSLInterpolator::Eval",
"Suppressing additional warnings");
99 static unsigned int nErrors = 0;
100 int ierr = gsl_spline_eval_deriv_e(
fSpline, x,
fAccel, &deriv);
110 MATH_WARN_MSG(
"GSLInterpolator::Deriv",
"Suppressing additional warnings");
120 static unsigned int nErrors = 0;
121 int ierr = gsl_spline_eval_deriv2_e(
fSpline, x,
fAccel, &deriv2);
129 MATH_WARN_MSG(
"GSLInterpolator::Deriv2", gsl_strerror(ierr));
131 MATH_WARN_MSG(
"GSLInterpolator::Deriv2",
"Suppressing additional warnings");
144 static unsigned int nErrors = 0;
145 int ierr = gsl_spline_eval_integ_e(
fSpline, a, b,
fAccel, &result);
155 MATH_WARN_MSG(
"GSLInterpolator::Integ",
"Suppressing additional warnings");
Namespace for new ROOT classes and functions.
#define MATH_WARN_MSG(loc, str)
double Deriv(double x) const
virtual ~GSLInterpolator()
double Integ(double a, double b) const
GSLInterpolator & operator=(const GSLInterpolator &)
bool Init(unsigned int ndata, const double *x, const double *y)
Interpolation class based on GSL interpolation functions.
Type
Enumeration defining the types of interpolation methods availables.
Namespace for new Math classes and functions.
gsl_interp_accel * fAccel
double Eval(double x) const
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
const gsl_interp_type * fInterpType
GSLInterpolator(unsigned int ndata, Interpolation::Type type)
double Deriv2(double x) const