10#ifndef ROOT_Minuit2_ParametricFunction
11#define ROOT_Minuit2_ParametricFunction
90 assert(params.size() ==
par.size());
154 virtual double operator()(
const std::vector<double>&
x,
const std::vector<double>& params)
const {
174 virtual std::vector<double>
GetGradient(
const std::vector<double>&
x)
const;
191 mutable std::vector<double>
par;
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
Function which has parameters.
ParametricFunction(int nparams)
Constructor which initializes the ParametricFunction by setting the number of parameters.
virtual ~ParametricFunction()
ParametricFunction(const std::vector< double > ¶ms)
Constructor which initializes the ParametricFunction with the parameters given as input.
virtual double operator()(const std::vector< double > &x, const std::vector< double > ¶ms) const
Evaluates the function with the given coordinates and Parameter values.
virtual void SetParameters(const std::vector< double > ¶ms) const
Sets the parameters of the ParametricFunction.
virtual unsigned int NumberOfParameters() const
Accessor for the number of parameters.
virtual double operator()(const std::vector< double > &x) const =0
Evaluates the function with the given coordinates.
virtual std::vector< double > GetGradient(const std::vector< double > &x) const
Member function returning the Gradient of the function with respect to its variables (but without inc...
std::vector< double > par
The vector containing the parameters of the function It is mutable for "historical reasons" as in the...
virtual const std::vector< double > & GetParameters() const
Accessor for the state of the parameters.