40#include "gsl/gsl_deriv.h"
78 if (
this == &rhs)
return *
this;
131 return d.EvalCentral(
x[icoord],
h);
140 return d.EvalCentral(p[ipar],
h);
148 return d.EvalCentral(p[ipar],
h);
void SetFunction(const IGenFunction &f)
Set the function for calculating the derivatives.
GSLDerivator * fDerivator
double Result() const
return the result of the last derivative calculation
virtual ~Derivator()
destructor
double EvalBackward(double x, double h=1E-8) const
Computes the numerical derivative at a point x using an adaptive backward difference algorithm with a...
int Status() const
return the error status of the last derivative calculation
Derivator & operator=(const Derivator &)
double(* GSLFuncPointer)(double, void *)
signature for function pointers used by GSL
Derivator()
Empty Construct for a Derivator class Need to set the function afterwards with Derivator::SetFunction...
double Error() const
return the estimate of the absolute error of the last derivative calculation
double Eval(double x, double h=1E-8) const
Computes the numerical derivative of a function f at a point x.
double EvalCentral(double x, double h=1E-8) const
Computes the numerical derivative at a point x using an adaptive central difference algorithm with a ...
double EvalForward(double x, double h=1E-8) const
Computes the numerical derivative at a point x using an adaptive forward difference algorithm with a ...
Class for computing numerical derivative of a function based on the GSL numerical algorithm This clas...
double EvalForward(double x, double h)
Computes the numerical derivative at a point x using an adaptive forward difference algorithm with a ...
double EvalCentral(double x, double h)
Computes the numerical derivative at a point x using an adaptive central difference algorithm with a ...
double EvalBackward(double x, double h)
Computes the numerical derivative at a point x using an adaptive backward difference algorithm with a...
Class for adapting any C++ functor class to C function pointers used by GSL.
OneDimMultiFunctionAdapter class to wrap a multidimensional function in one dimensional one.
OneDimParamFunctionAdapter class to wrap a multi-dim parametric function in one dimensional one.
IMultiGenFunctionTempl< double > IMultiGenFunction
IParametricFunctionOneDim IParamFunction
IParametricFunctionMultiDim IParamMultiFunction
IBaseFunctionOneDim IGenFunction