template wrapped class for adapting to FumiliFCNBase signature
Definition at line 43 of file FumiliFCNAdapter.h.
Public Types | |
typedef Function::Type_t | Type_t |
Public Member Functions | |
FumiliFCNAdapter (const Function &f, unsigned int ndim, double up=1.) | |
~FumiliFCNAdapter () override | |
void | EvaluateAll (const std::vector< double > &v) override |
evaluate gradient hessian and function value needed by fumili | |
double | operator() (const double *v) const |
double | operator() (const std::vector< double > &v) const override |
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. | |
void | SetErrorDef (double up) override |
add interface to set dynamically a new error definition Re-implement this function if needed. | |
double | Up () const override |
Error definition of the function. | |
Public Member Functions inherited from ROOT::Minuit2::FumiliFCNBase | |
FumiliFCNBase () | |
Default Constructor. | |
FumiliFCNBase (unsigned int npar) | |
Constructor which initializes the class with the function provided by the user for modeling the data. | |
~FumiliFCNBase () override | |
virtual unsigned int | Dimension () |
return number of function variable (parameters) , i.e. | |
virtual const std::vector< double > & | Gradient () const |
Return cached Value of function Gradient estimated previously using the FumiliFCNBase::EvaluateAll method. | |
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. | |
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. | |
Public Member Functions inherited from ROOT::Minuit2::FCNGradientBase | |
~FCNGradientBase () override | |
virtual bool | CheckGradient () const |
virtual std::vector< double > | G2 (const std::vector< double > &) const |
return second derivatives (diagonal of the Hessian matrix) | |
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 |
Public Member Functions inherited from ROOT::Minuit2::FCNBase | |
~FCNBase () override | |
virtual double | ErrorDef () const |
Error definition of the function. | |
Public Member Functions inherited from ROOT::Minuit2::GenericFunction | |
virtual | ~GenericFunction () |
Private Attributes | |
const Function & | fFunc |
double | fUp |
Additional Inherited Members | |
Protected Member Functions inherited from ROOT::Minuit2::FumiliFCNBase | |
std::vector< double > & | Gradient () |
std::vector< double > & | Hessian () |
virtual void | InitAndReset (unsigned int npar) |
initialize and reset values of gradien and Hessian | |
void | SetFCNValue (double value) |
#include <Minuit2/FumiliFCNAdapter.h>
typedef Function::Type_t ROOT::Minuit2::FumiliFCNAdapter< Function >::Type_t |
Definition at line 47 of file FumiliFCNAdapter.h.
|
inline |
Definition at line 49 of file FumiliFCNAdapter.h.
|
inlineoverride |
Definition at line 51 of file FumiliFCNAdapter.h.
|
overridevirtual |
evaluate gradient hessian and function value needed by fumili
Implements ROOT::Minuit2::FumiliFCNBase.
Definition at line 77 of file FumiliFCNAdapter.h.
|
inline |
Definition at line 54 of file FumiliFCNAdapter.h.
|
inlineoverridevirtual |
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.
The order and the position of these parameters is strictly the one specified by the user when supplying the starting values for minimization. The starting values must be specified by the user, either via an std::vector<double> or the MnUserParameters supplied as input to the MINUIT minimizers such as VariableMetricMinimizer or MnMigrad. Later values are determined by MINUIT as it searches for the Minimum or performs whatever analysis is requested by the user.
v | function parameters as defined by the user. |
Implements ROOT::Minuit2::FCNBase.
Definition at line 53 of file FumiliFCNAdapter.h.
|
inlineoverridevirtual |
add interface to set dynamically a new error definition Re-implement this function if needed.
Reimplemented from ROOT::Minuit2::FCNBase.
Definition at line 57 of file FumiliFCNAdapter.h.
|
inlineoverridevirtual |
Error definition of the function.
MINUIT defines Parameter errors as the change in Parameter Value required to change the function Value by up. Normally, for chisquared fits it is 1, and for negative log likelihood, its Value is 0.5. If the user wants instead the 2-sigma errors for chisquared fits, it becomes 4, as Chi2(x+n*sigma) = Chi2(x) + n*n.
Implements ROOT::Minuit2::FCNBase.
Definition at line 55 of file FumiliFCNAdapter.h.
|
private |
Definition at line 72 of file FumiliFCNAdapter.h.
|
private |
Definition at line 73 of file FumiliFCNAdapter.h.