35 const MnStrategy &strategy,
unsigned int maxfcn,
double toler)
const
37 MnPrint print(
"FumiliMinimizer::Minimize");
47 maxfcn = 200 + 100 * npar + 5 * npar * npar;
54 print.
Error(
"Wrong FCN type; try to use default minimizer");
60 print.
Debug(
"Using FumiliMinimizer with analytical gradients");
62 print.
Debug(
"Using FumiliMinimizer with numerical gradients");
82 else if (method ==
"ls")
84 else if (method ==
"trs")
Interface (abstract class) defining the function to be minimized, which has to be implemented by the ...
virtual double Up() const =0
Error definition of the function.
virtual bool HasGradient() const
In the case of the Fumili algorithm the Error matrix (or the Hessian matrix containing the (approxima...
virtual MinimumError Update(const MinimumState &fMinimumState, const MinimumParameters &fMinimumParameters, const GradientCalculator &fGradientCalculator, double lambda) const
Member function that calculates the Error matrix (or the Hessian matrix containing the (approximate) ...
Extension of the FCNBase for the Fumili method.
Fumili gradient calculator using external gradient provided by FCN Note that the computed Hessian and...
FunctionMinimum Minimize(const FCNBase &, const MnUserParameterState &, const MnStrategy &, unsigned int maxfcn=0, double toler=0.1) const override
FumiliBuilder fMinBuilder
void SetMethod(const std::string &method)
class holding the full result of the minimization; both internal and external (MnUserParameterState) ...
MinimumError keeps the inv.
MinimumState keeps the information (position, Gradient, 2nd deriv, etc) after one minimization step (...
Wrapper class to FCNBase interface used internally by Minuit.
void Debug(const Ts &... args)
void Error(const Ts &... args)
API class for defining four levels of strategies: low (0), medium (1), high (2), very high (>=3); act...
class which holds the external user and/or internal Minuit representation of the parameters and error...
unsigned int VariableParameters() const
const std::vector< double > & IntParameters() const
const MnUserTransformation & Trafo() const
virtual FunctionMinimum Minimize(const FCNBase &, const MnUserParameterState &, const MnStrategy &=MnStrategy{1}, unsigned int maxfcn=0, double toler=0.1) const
LAVector MnAlgebraicVector