Extension of the FCNBase for the Fumili method.
Fumili applies only to minimization problems used for fitting. The method is based on a linearization of the model function negleting second derivatives. User needs to provide the model function. In this cased the function to be minimized is the sum of the logarithms of the model function for the different measurements times -1.
- Author
- Andras Zsenei and Lorenzo Moneta, Creation date: 3 Sep 2004
- See also
- MINUIT Tutorial on function minimization, section 5
-
FumiliStandardMaximumLikelihoodFCN
Definition at line 46 of file FumiliMaximumLikelihoodFCN.h.
|
| FumiliMaximumLikelihoodFCN () |
|
| ~FumiliMaximumLikelihoodFCN () override |
|
virtual std::vector< double > | Elements (const std::vector< double > &par) const =0 |
| Evaluates the model function for the different measurement points and the Parameter values supplied, calculates a figure-of-merit for each measurement and returns a vector containing the result of this evaluation. More...
|
|
virtual const std::vector< double > & | GetMeasurement (int Index) const =0 |
| Accessor to the parameters of a given measurement. More...
|
|
virtual int | GetNumberOfMeasurements () const =0 |
| Accessor to the number of measurements used for calculating the present figure of merit. More...
|
|
const ParametricFunction * | ModelFunction () const |
| Returns the model function used for the data. More...
|
|
double | operator() (const std::vector< double > &par) const override |
| Calculates the function for the maximum likelihood method. More...
|
|
void | SetModelFunction (const ParametricFunction &modelFCN) |
| Sets the model function for the data (for example gaussian+linear for a peak) More...
|
|
double | Up () const override |
| !!!!!!!!!!!! to be commented More...
|
|
| FumiliFCNBase () |
| Default Constructor. More...
|
|
| FumiliFCNBase (unsigned int npar) |
| Constructor which initializes the class with the function provided by the user for modeling the data. More...
|
|
| ~FumiliFCNBase () override |
|
virtual unsigned int | Dimension () |
| return number of function variable (parameters) , i.e. More...
|
|
virtual void | EvaluateAll (const std::vector< double > &par)=0 |
| Evaluate function Value, Gradient and Hessian using Fumili approximation, for values of parameters p The resul is cached inside and is return from the FumiliFCNBase::Value , FumiliFCNBase::Gradient and FumiliFCNBase::Hessian methods. More...
|
|
virtual const std::vector< double > & | Gradient () const |
| Return cached Value of function Gradient estimated previously using the FumiliFCNBase::EvaluateAll method. More...
|
|
std::vector< double > | Gradient (const std::vector< double > &) const override |
|
std::vector< double > | Hessian (const std::vector< double > &) const override |
| Return Value of the i-th j-th element of the Hessian matrix estimated previously using the FumiliFCNBase::EvaluateAll method. More...
|
|
virtual double | Hessian (unsigned int row, unsigned int col) const |
|
virtual double | Value () const |
| Return cached Value of objective function estimated previously using the FumiliFCNBase::EvaluateAll method. More...
|
|
| ~FCNGradientBase () override |
|
virtual bool | CheckGradient () const |
|
virtual std::vector< double > | G2 (const std::vector< double > &) const |
| return second derivatives (diagonal of the Hessian matrix) More...
|
|
virtual std::vector< double > | Gradient (const std::vector< double > &) const =0 |
|
virtual std::vector< double > | GradientWithPrevResult (const std::vector< double > ¶meters, double *, double *, double *) const |
|
virtual GradientParameterSpace | gradParameterSpace () const |
|
virtual bool | HasG2 () const |
|
virtual bool | HasHessian () const |
|
virtual std::vector< double > | Hessian (const std::vector< double > &) const |
| return Hessian More...
|
|
| ~FCNBase () override |
|
virtual double | ErrorDef () const |
| Error definition of the function. More...
|
|
double | operator() (const std::vector< double > &v) const override=0 |
| The meaning of the vector of parameters is of course defined by the user, who uses the values of those parameters to calculate their function Value. More...
|
|
virtual void | SetErrorDef (double) |
| add interface to set dynamically a new error definition Re-implement this function if needed. More...
|
|
virtual double | Up () const =0 |
| Error definition of the function. More...
|
|
virtual | ~GenericFunction () |
|
virtual double | operator() (const std::vector< double > &x) const =0 |
| Evaluates the function using the vector containing the input values. More...
|
|