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.) | |
| virtual unsigned int | Dimension () |
| return number of function variable (parameters) , i.e. | |
| virtual double | ErrorDef () const |
| Error definition of the function. | |
| void | EvaluateAll (std::vector< double > const &v) override |
| evaluate gradient hessian and function value needed by Fumili | |
| virtual std::vector< double > | G2 (std::vector< double > const &) const |
| Return the diagonal elements of the Hessian (second derivatives). | |
| virtual const std::vector< double > & | Gradient () const |
| Return cached Value of function Gradient estimated previously using the FumiliFCNBase::EvaluateAll method. | |
| std::vector< double > | Gradient (std::vector< double > const &) const override |
| Return the gradient vector of the function at the given parameter point. | |
| virtual std::vector< double > | GradientWithPrevResult (std::vector< double > const ¶meters, double *, double *, double *) const |
| virtual GradientParameterSpace | gradParameterSpace () const |
| virtual bool | HasG2 () const |
| bool | HasGradient () const override |
| virtual bool | HasHessian () const |
| std::vector< double > | Hessian (std::vector< double > const &) 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 |
| double | operator() (const double *v) const |
| double | operator() (std::vector< double > const &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. | |
| virtual double | Value () const |
| Return cached Value of objective function estimated previously using the FumiliFCNBase::EvaluateAll method. | |
Protected Member Functions | |
| 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) |
Private Attributes | |
| const Function & | fFunc |
| std::vector< double > | fGradient |
| std::vector< double > | fHessian |
| unsigned int | fNumberOfParameters |
| double | fUp |
| double | fValue |
#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.
return number of function variable (parameters) , i.e.
function dimension
Definition at line 121 of file FumiliFCNBase.h.
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.
Comment a little bit better with links!!!!!!!!!!!!!!!!!
|
overridevirtual |
evaluate gradient hessian and function value needed by Fumili
Implements ROOT::Minuit2::FumiliFCNBase.
Definition at line 69 of file FumiliFCNAdapter.h.
|
inlinevirtualinherited |
Return the diagonal elements of the Hessian (second derivatives).
By default, returns an empty vector. Override this method if analytic second derivatives (per-parameter curvature) are available.
| v | Parameter vector. |
Reimplemented in ROOT::Minuit2::FCNAdapter.
|
inlineprotectedinherited |
Definition at line 138 of file FumiliFCNBase.h.
|
inlinevirtualinherited |
Return cached Value of function Gradient estimated previously using the FumiliFCNBase::EvaluateAll method.
Definition at line 97 of file FumiliFCNBase.h.
|
inlineoverridevirtualinherited |
Return the gradient vector of the function at the given parameter point.
By default, returns an empty vector (no analytic gradient provided). Override this method if an analytic gradient is available.
| v | Parameter vector. |
Reimplemented from ROOT::Minuit2::FCNBase.
Definition at line 98 of file FumiliFCNBase.h.
|
inlinevirtualinherited |
Reimplemented in ROOT::Minuit2::FCNAdapter.
|
inlineoverridevirtualinherited |
Reimplemented from ROOT::Minuit2::FCNBase.
Definition at line 56 of file FumiliFCNBase.h.
Reimplemented in ROOT::Minuit2::FCNAdapter.
|
inlineprotectedinherited |
Definition at line 140 of file FumiliFCNBase.h.
|
inlineoverridevirtualinherited |
Return Value of the i-th j-th element of the Hessian matrix estimated previously using the FumiliFCNBase::EvaluateAll method.
| row | row Index of the matrix |
| col | col Index of the matrix |
Reimplemented from ROOT::Minuit2::FCNBase.
Definition at line 107 of file FumiliFCNBase.h.
|
inlinevirtualinherited |
Definition at line 108 of file FumiliFCNBase.h.
|
inlineprotectedvirtualinherited |
initialize and reset values of gradien and Hessian
Definition at line 128 of file FumiliFCNBase.h.
|
inline |
Definition at line 52 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 51 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 55 of file FumiliFCNAdapter.h.
|
inlineprotectedinherited |
Definition at line 136 of file FumiliFCNBase.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 53 of file FumiliFCNAdapter.h.
Return cached Value of objective function estimated previously using the FumiliFCNBase::EvaluateAll method.
Definition at line 91 of file FumiliFCNBase.h.
|
private |
Definition at line 64 of file FumiliFCNAdapter.h.
|
privateinherited |
Definition at line 145 of file FumiliFCNBase.h.
|
privateinherited |
Definition at line 146 of file FumiliFCNBase.h.
|
privateinherited |
Definition at line 143 of file FumiliFCNBase.h.
|
private |
Definition at line 65 of file FumiliFCNAdapter.h.
|
privateinherited |
Definition at line 144 of file FumiliFCNBase.h.