10#ifndef ROOT_Minuit2_FumiliMaximumLikelihoodFCN
11#define ROOT_Minuit2_FumiliMaximumLikelihoodFCN
87 virtual std::vector<double>
Elements(std::span<const double> par)
const = 0;
129 double operator()(std::span<const double> par)
const override
132 double sumoflogs = 0.0;
133 std::vector<double> vecElements =
Elements(par);
134 unsigned int vecElementsSize = vecElements.size();
136 for (
unsigned int i = 0; i < vecElementsSize; ++i) {
137 double tmp = vecElements[i];
153 double Up()
const override {
return 0.5; }
Extension of the FCNBase for the Fumili method.
Extension of the FCNBase for the Fumili method.
void SetModelFunction(const ParametricFunction &modelFCN)
Sets the model function for the data (for example gaussian+linear for a peak)
const ParametricFunction * ModelFunction() const
Returns the model function used for the data.
double Up() const override
!!!!!!!!!!!! to be commented
double operator()(std::span< const double > par) const override
Calculates the function for the maximum likelihood method.
const ParametricFunction * fModelFunction
virtual const std::vector< double > & GetMeasurement(int Index) const =0
Accessor to the parameters of a given measurement.
~FumiliMaximumLikelihoodFCN() override
FumiliMaximumLikelihoodFCN()
virtual int GetNumberOfMeasurements() const =0
Accessor to the number of measurements used for calculating the present figure of merit.
virtual std::vector< double > Elements(std::span< const double > par) const =0
Evaluates the model function for the different measurement points and the Parameter values supplied,...
Function which has parameters.
T EvalLog(T x)
safe evaluation of log(x) with a protections against negative or zero argument to the log smooth line...
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...