13#ifndef ROOT_TLinearMinimizer
14#define ROOT_TLinearMinimizer
71 virtual bool SetVariable(
unsigned int ,
const std::string & ,
double ,
double ) {
return false; }
83 virtual double Edm()
const {
return 0; }
86 virtual const double *
X()
const {
return &
fParams.front(); }
92 virtual unsigned int NCalls()
const {
return 0; }
96 virtual unsigned int NDim()
const {
return fDim; }
112 virtual double CovMatrix(
unsigned int i,
unsigned int j)
const {
118 if (
fCovar.size() == 0)
return 0;
#define ClassDef(name, id)
Documentation for the abstract class IBaseFunctionMultiDim.
Interface (abstract class) for multi-dimensional functions providing a gradient calculation.
Abstract Minimizer class, defining the interface for the various minimizer (like Minuit2,...
The Linear Fitter - For fitting functions that are LINEAR IN PARAMETERS.
TLinearMinimizer class: minimizer implementation based on TMinuit.
virtual ~TLinearMinimizer()
Destructor (no operations)
virtual bool ProvidesError() const
minimizer provides error and error matrix
virtual bool SetFixedVariable(unsigned int, const std::string &, double)
set fixed variable (override if minimizer supports them )
virtual bool SetVariable(unsigned int, const std::string &, double, double)
set free variable (dummy impl. )
virtual unsigned int NDim() const
this is <= Function().NDim() which is the total number of variables (free+ constrained ones)
virtual double Edm() const
return expected distance reached from the minimum
virtual void SetFunction(const ROOT::Math::IMultiGenFunction &func)
set the fit model function
TLinearMinimizer & operator=(const TLinearMinimizer &rhs)
Assignment operator.
virtual double CovMatrix(unsigned int i, unsigned int j) const
return covariance matrices elements if the variable is fixed the matrix is zero The ordering of the v...
virtual unsigned int NCalls() const
number of function calls to reach the minimum
bool fRobust
return reference to the objective function virtual const ROOT::Math::IGenFunction & Function() const;
virtual bool Minimize()
method to perform the minimization
virtual const double * MinGradient() const
return pointer to gradient values at the minimum
virtual const double * Errors() const
return errors at the minimum
virtual const double * X() const
return pointer to X values at the minimum
const ROOT::Math::IMultiGradFunction * fObjFunc
virtual double MinValue() const
return minimum function value
virtual int CovMatrixStatus() const
return covariance matrix status
std::vector< double > fParams
TLinearMinimizer(int type=0)
Default constructor.
std::vector< double > fCovar
std::vector< double > fErrors
virtual unsigned int NFree() const
number of free variables (real dimension of the problem) this is <= Function().NDim() which is the to...