10#ifndef ROOT_Minuit2_FCNBase
11#define ROOT_Minuit2_FCNBase
77 double operator()(std::vector<double>
const &
v)
const override = 0;
105 virtual double Up()
const = 0;
115 virtual std::vector<double>
Gradient(std::vector<double>
const&)
const {
return {}; }
117 double * ,
double * )
const
127 virtual std::vector<double>
G2(std::vector<double>
const&)
const {
return {};}
130 virtual std::vector<double>
Hessian(std::vector<double>
const&)
const {
return {};}
134 virtual bool HasG2()
const {
return false; }
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
virtual double Up() const =0
Error definition of the function.
double operator()(std::vector< double > const &v) const override=0
The meaning of the vector of parameters is of course defined by the user, who uses the values of thos...
virtual bool HasHessian() const
virtual std::vector< double > GradientWithPrevResult(std::vector< double > const ¶meters, double *, double *, double *) const
virtual std::vector< double > G2(std::vector< double > const &) const
return second derivatives (diagonal of the Hessian matrix)
virtual std::vector< double > Hessian(std::vector< double > const &) const
return Hessian
virtual void SetErrorDef(double)
add interface to set dynamically a new error definition Re-implement this function if needed.
virtual GradientParameterSpace gradParameterSpace() const
virtual double ErrorDef() const
Error definition of the function.
virtual std::vector< double > Gradient(std::vector< double > const &) const
virtual bool HasG2() const
virtual bool HasGradient() const
Class from which all the other classes, representing functions, inherit.
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...