#include <TFumiliMinimizer.h>
Inheritance diagram for TFumiliMinimizer:
Public Member Functions | |
TFumiliMinimizer (int dummy=0) | |
~TFumiliMinimizer () | |
virtual void | SetFunction (const ROOT::Math::IMultiGenFunction &func) |
set the function to minimize | |
virtual void | SetFunction (const ROOT::Math::IMultiGradFunction &func) |
set the function to minimize | |
virtual bool | SetVariable (unsigned int ivar, const std::string &name, double val, double step) |
set free variable | |
virtual bool | SetLimitedVariable (unsigned int ivar, const std::string &name, double val, double step, double, double) |
set upper/lower limited variable (override if minimizer supports them ) | |
virtual bool | SetFixedVariable (unsigned int, const std::string &, double) |
set fixed variable (override if minimizer supports them ) | |
virtual bool | SetVariableValue (unsigned int ivar, double val) |
set the value of an existing variable | |
virtual bool | Minimize () |
method to perform the minimization | |
virtual double | MinValue () const |
return minimum function value | |
virtual double | Edm () const |
return expected distance reached from the minimum | |
virtual const double * | X () const |
return pointer to X values at the minimum | |
virtual const double * | MinGradient () const |
return pointer to gradient values at the minimum | |
virtual unsigned int | NCalls () const |
number of function calls to reach the minimum | |
virtual unsigned int | NDim () const |
virtual unsigned int | NFree () const |
virtual bool | ProvidesError () const |
minimizer provides error and error matrix | |
virtual const double * | Errors () const |
return errors at the minimum | |
virtual double | CovMatrix (unsigned int i, unsigned int j) const |
virtual int | CovMatrixStatus () const |
TFumiliMinimizer (int dummy=0) | |
~TFumiliMinimizer () | |
virtual void | SetFunction (const ROOT::Math::IMultiGenFunction &func) |
set the function to minimize | |
virtual void | SetFunction (const ROOT::Math::IMultiGradFunction &func) |
set the function to minimize | |
virtual bool | SetVariable (unsigned int ivar, const std::string &name, double val, double step) |
set free variable | |
virtual bool | SetLimitedVariable (unsigned int ivar, const std::string &name, double val, double step, double, double) |
set upper/lower limited variable (override if minimizer supports them ) | |
virtual bool | SetFixedVariable (unsigned int, const std::string &, double) |
set fixed variable (override if minimizer supports them ) | |
virtual bool | SetVariableValue (unsigned int ivar, double val) |
set the value of an existing variable | |
virtual bool | Minimize () |
method to perform the minimization | |
virtual double | MinValue () const |
return minimum function value | |
virtual double | Edm () const |
return expected distance reached from the minimum | |
virtual const double * | X () const |
return pointer to X values at the minimum | |
virtual const double * | MinGradient () const |
return pointer to gradient values at the minimum | |
virtual unsigned int | NCalls () const |
number of function calls to reach the minimum | |
virtual unsigned int | NDim () const |
virtual unsigned int | NFree () const |
virtual bool | ProvidesError () const |
minimizer provides error and error matrix | |
virtual const double * | Errors () const |
return errors at the minimum | |
virtual double | CovMatrix (unsigned int i, unsigned int j) const |
virtual int | CovMatrixStatus () const |
Static Protected Member Functions | |
static void | Fcn (int &, double *, double &f, double *, int) |
implementation of FCN for Fumili | |
static double | EvaluateFCN (const double *x, double *g) |
static function implementing the evaluation of the FCN (it uses static instance fgFumili) | |
static void | Fcn (int &, double *, double &f, double *, int) |
implementation of FCN for Fumili | |
static double | EvaluateFCN (const double *x, double *g) |
static function implementing the evaluation of the FCN (it uses static instance fgFumili) | |
Private Member Functions | |
TFumiliMinimizer (const TFumiliMinimizer &) | |
TFumiliMinimizer & | operator= (const TFumiliMinimizer &rhs) |
TFumiliMinimizer (const TFumiliMinimizer &) | |
TFumiliMinimizer & | operator= (const TFumiliMinimizer &rhs) |
Private Attributes | |
unsigned int | fDim |
unsigned int | fNFree |
double | fMinVal |
double | fEdm |
std::vector< double > | fParams |
std::vector< double > | fErrors |
std::vector< double > | fCovar |
TFumili * | fFumili |
std::vector< double > | fParams |
std::vector< double > | fErrors |
std::vector< double > | fCovar |
TFumili * | fFumili |
Static Private Attributes | |
static ROOT::Math::FitMethodFunction * | fgFunc |
static ROOT::Math::FitMethodGradFunction * | fgGradFunc |
static TFumili * | fgFumili |
static ROOT::Math::FitMethodFunction * | fgFunc |
static ROOT::Math::FitMethodGradFunction * | fgGradFunc |
static TFumili * | fgFumili |
Definition at line 47 of file TFumiliMinimizer.h.
TFumiliMinimizer::TFumiliMinimizer | ( | int | dummy = 0 |
) |
Default constructor (an argument is needed by plug-in manager)
TFumiliMinimizer::~TFumiliMinimizer | ( | ) |
TFumiliMinimizer::TFumiliMinimizer | ( | const TFumiliMinimizer & | ) | [private] |
Copy constructor
Definition at line 171 of file TFumiliMinimizer.cxx.
TFumiliMinimizer::TFumiliMinimizer | ( | int | dummy = 0 |
) |
Default constructor (an argument is needed by plug-in manager)
TFumiliMinimizer::~TFumiliMinimizer | ( | ) |
Destructor (no operations)
TFumiliMinimizer::TFumiliMinimizer | ( | const TFumiliMinimizer & | ) | [private] |
Copy constructor
TFumiliMinimizer & TFumiliMinimizer::operator= | ( | const TFumiliMinimizer & | rhs | ) | [private] |
Assignment operator
Definition at line 177 of file TFumiliMinimizer.cxx.
void TFumiliMinimizer::SetFunction | ( | const ROOT::Math::IMultiGenFunction & | func | ) | [virtual] |
set the function to minimize
Implements ROOT::Math::Minimizer.
Definition at line 186 of file TFumiliMinimizer.cxx.
References Error, Fcn(), fDim, fFumili, fgFunc, fgGradFunc, func(), ROOT::Math::BasicFitMethodFunction< FunctionType >::kLeastSquare, ROOT::Math::BasicFitMethodFunction< FunctionType >::kLogLikelihood, TVirtualFitter::SetFCN(), TFumili::SetParNumber(), and ROOT::Math::BasicFitMethodFunction< FunctionType >::Type().
void TFumiliMinimizer::SetFunction | ( | const ROOT::Math::IMultiGradFunction & | func | ) | [virtual] |
set the function to minimize
Reimplemented from ROOT::Math::Minimizer.
Definition at line 218 of file TFumiliMinimizer.cxx.
References Error, Fcn(), fDim, fFumili, fgFunc, fgGradFunc, func(), TVirtualFitter::SetFCN(), and TFumili::SetParNumber().
bool TFumiliMinimizer::SetVariable | ( | unsigned int | ivar, | |
const std::string & | name, | |||
double | val, | |||
double | step | |||
) | [virtual] |
set free variable
Implements ROOT::Math::Minimizer.
Definition at line 412 of file TFumiliMinimizer.cxx.
References Error, fFumili, and TFumili::SetParameter().
bool TFumiliMinimizer::SetLimitedVariable | ( | unsigned int | ivar, | |
const std::string & | name, | |||
double | val, | |||
double | step, | |||
double | , | |||
double | ||||
) | [virtual] |
set upper/lower limited variable (override if minimizer supports them )
Reimplemented from ROOT::Math::Minimizer.
Definition at line 430 of file TFumiliMinimizer.cxx.
References Error, fFumili, and TFumili::SetParameter().
bool TFumiliMinimizer::SetFixedVariable | ( | unsigned | int, | |
const std::string & | , | |||
double | ||||
) | [virtual] |
set fixed variable (override if minimizer supports them )
Reimplemented from ROOT::Math::Minimizer.
Definition at line 457 of file TFumiliMinimizer.cxx.
References Error, fFumili, TFumili::FixParameter(), and TFumili::SetParameter().
bool TFumiliMinimizer::SetVariableValue | ( | unsigned int | ivar, | |
double | val | |||
) | [virtual] |
set the value of an existing variable
Reimplemented from ROOT::Math::Minimizer.
Definition at line 479 of file TFumiliMinimizer.cxx.
References Error, fFumili, TFumili::GetParameter(), TFumili::GetParName(), name, and TFumili::SetParameter().
bool TFumiliMinimizer::Minimize | ( | ) | [virtual] |
method to perform the minimization
Implements ROOT::Math::Minimizer.
Definition at line 505 of file TFumiliMinimizer.cxx.
References Error, TFumili::ExecuteCommand(), fCovar, fDim, fEdm, fErrors, fFumili, fgFumili, fMinVal, fNFree, fParams, ROOT::Math::Minimizer::fStatus, TFumili::GetCovarianceMatrix(), TFumili::GetNumberFreeParameters(), TFumili::GetParameter(), TFumili::GetParError(), TFumili::GetStats(), TFumili::IsFixed(), j, l, ROOT::Math::Minimizer::MaxFunctionCalls(), ROOT::Math::Minimizer::PrintLevel(), TFumili::PrintResults(), and ROOT::Math::Minimizer::Tolerance().
virtual double TFumiliMinimizer::MinValue | ( | ) | const [inline, virtual] |
return minimum function value
Implements ROOT::Math::Minimizer.
Definition at line 106 of file TFumiliMinimizer.h.
References fMinVal.
virtual double TFumiliMinimizer::Edm | ( | ) | const [inline, virtual] |
return expected distance reached from the minimum
Implements ROOT::Math::Minimizer.
Definition at line 109 of file TFumiliMinimizer.h.
References fEdm.
virtual const double* TFumiliMinimizer::X | ( | ) | const [inline, virtual] |
return pointer to X values at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 112 of file TFumiliMinimizer.h.
References fParams.
virtual const double* TFumiliMinimizer::MinGradient | ( | ) | const [inline, virtual] |
return pointer to gradient values at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 115 of file TFumiliMinimizer.h.
virtual unsigned int TFumiliMinimizer::NCalls | ( | ) | const [inline, virtual] |
number of function calls to reach the minimum
Implements ROOT::Math::Minimizer.
Definition at line 118 of file TFumiliMinimizer.h.
virtual unsigned int TFumiliMinimizer::NDim | ( | ) | const [inline, virtual] |
this is <= Function().NDim() which is the total number of variables (free+ constrained ones)
Implements ROOT::Math::Minimizer.
Definition at line 122 of file TFumiliMinimizer.h.
References fDim.
virtual unsigned int TFumiliMinimizer::NFree | ( | ) | const [inline, virtual] |
number of free variables (real dimension of the problem) this is <= Function().NDim() which is the total
Implements ROOT::Math::Minimizer.
Definition at line 126 of file TFumiliMinimizer.h.
References fNFree.
virtual bool TFumiliMinimizer::ProvidesError | ( | ) | const [inline, virtual] |
minimizer provides error and error matrix
Implements ROOT::Math::Minimizer.
Definition at line 129 of file TFumiliMinimizer.h.
virtual const double* TFumiliMinimizer::Errors | ( | ) | const [inline, virtual] |
return errors at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 132 of file TFumiliMinimizer.h.
References fErrors.
virtual double TFumiliMinimizer::CovMatrix | ( | unsigned int | i, | |
unsigned int | j | |||
) | const [inline, virtual] |
return covariance matrices elements if the variable is fixed the matrix is zero The ordering of the variables is the same as in errors
Implements ROOT::Math::Minimizer.
Definition at line 138 of file TFumiliMinimizer.h.
virtual int TFumiliMinimizer::CovMatrixStatus | ( | ) | const [inline, virtual] |
return status of covariance matrix using Minuit convention {0 not calculated 1 approximated 2 made pos def , 3 accurate} Minimizer who implements covariance matrix calculation will re-implement the method
Reimplemented from ROOT::Math::Minimizer.
Definition at line 145 of file TFumiliMinimizer.h.
References fCovar, and ROOT::Math::Minimizer::fStatus.
implementation of FCN for Fumili
Definition at line 239 of file TFumiliMinimizer.cxx.
References EvaluateFCN().
Referenced by SetFunction().
static function implementing the evaluation of the FCN (it uses static instance fgFumili)
Definition at line 258 of file TFumiliMinimizer.cxx.
References ROOT::Math::BasicFitMethodFunction< FunctionType >::DataElement(), Error, fgFumili, fgFunc, fgGradFunc, TFumili::GetPL0(), TFumili::GetZ(), j, k, ROOT::Math::BasicFitMethodFunction< FunctionType >::kLeastSquare, ROOT::Math::BasicFitMethodFunction< FunctionType >::kLogLikelihood, l, ndata, ROOT::Math::BasicFitMethodFunction< FunctionType >::NDim(), ROOT::Math::BasicFitMethodFunction< FunctionType >::NPoints(), ROOT::Math::BasicFitMethodFunction< FunctionType >::Type(), and ROOT::Math::BasicFitMethodFunction< FunctionType >::UpdateNCalls().
Referenced by Fcn().
TFumiliMinimizer& TFumiliMinimizer::operator= | ( | const TFumiliMinimizer & | rhs | ) | [private] |
Assignment operator
virtual void TFumiliMinimizer::SetFunction | ( | const ROOT::Math::IMultiGenFunction & | func | ) | [virtual] |
virtual void TFumiliMinimizer::SetFunction | ( | const ROOT::Math::IMultiGradFunction & | func | ) | [virtual] |
virtual bool TFumiliMinimizer::SetVariable | ( | unsigned int | ivar, | |
const std::string & | name, | |||
double | val, | |||
double | step | |||
) | [virtual] |
virtual bool TFumiliMinimizer::SetLimitedVariable | ( | unsigned int | ivar, | |
const std::string & | name, | |||
double | val, | |||
double | step, | |||
double | , | |||
double | ||||
) | [virtual] |
set upper/lower limited variable (override if minimizer supports them )
Reimplemented from ROOT::Math::Minimizer.
virtual bool TFumiliMinimizer::SetFixedVariable | ( | unsigned | int, | |
const std::string & | , | |||
double | ||||
) | [virtual] |
virtual bool TFumiliMinimizer::SetVariableValue | ( | unsigned int | ivar, | |
double | val | |||
) | [virtual] |
virtual bool TFumiliMinimizer::Minimize | ( | ) | [virtual] |
virtual double TFumiliMinimizer::MinValue | ( | ) | const [inline, virtual] |
return minimum function value
Implements ROOT::Math::Minimizer.
Definition at line 106 of file TFumiliMinimizer.h.
References fMinVal.
virtual double TFumiliMinimizer::Edm | ( | ) | const [inline, virtual] |
return expected distance reached from the minimum
Implements ROOT::Math::Minimizer.
Definition at line 109 of file TFumiliMinimizer.h.
References fEdm.
virtual const double* TFumiliMinimizer::X | ( | ) | const [inline, virtual] |
return pointer to X values at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 112 of file TFumiliMinimizer.h.
References fParams.
virtual const double* TFumiliMinimizer::MinGradient | ( | ) | const [inline, virtual] |
return pointer to gradient values at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 115 of file TFumiliMinimizer.h.
virtual unsigned int TFumiliMinimizer::NCalls | ( | ) | const [inline, virtual] |
number of function calls to reach the minimum
Implements ROOT::Math::Minimizer.
Definition at line 118 of file TFumiliMinimizer.h.
virtual unsigned int TFumiliMinimizer::NDim | ( | ) | const [inline, virtual] |
this is <= Function().NDim() which is the total number of variables (free+ constrained ones)
Implements ROOT::Math::Minimizer.
Definition at line 122 of file TFumiliMinimizer.h.
References fDim.
virtual unsigned int TFumiliMinimizer::NFree | ( | ) | const [inline, virtual] |
number of free variables (real dimension of the problem) this is <= Function().NDim() which is the total
Implements ROOT::Math::Minimizer.
Definition at line 126 of file TFumiliMinimizer.h.
References fNFree.
virtual bool TFumiliMinimizer::ProvidesError | ( | ) | const [inline, virtual] |
minimizer provides error and error matrix
Implements ROOT::Math::Minimizer.
Definition at line 129 of file TFumiliMinimizer.h.
virtual const double* TFumiliMinimizer::Errors | ( | ) | const [inline, virtual] |
return errors at the minimum
Implements ROOT::Math::Minimizer.
Definition at line 132 of file TFumiliMinimizer.h.
References fErrors.
virtual double TFumiliMinimizer::CovMatrix | ( | unsigned int | i, | |
unsigned int | j | |||
) | const [inline, virtual] |
return covariance matrices elements if the variable is fixed the matrix is zero The ordering of the variables is the same as in errors
Implements ROOT::Math::Minimizer.
Definition at line 138 of file TFumiliMinimizer.h.
virtual int TFumiliMinimizer::CovMatrixStatus | ( | ) | const [inline, virtual] |
return status of covariance matrix using Minuit convention {0 not calculated 1 approximated 2 made pos def , 3 accurate} Minimizer who implements covariance matrix calculation will re-implement the method
Reimplemented from ROOT::Math::Minimizer.
Definition at line 145 of file TFumiliMinimizer.h.
References fCovar, and ROOT::Math::Minimizer::fStatus.
static void TFumiliMinimizer::Fcn | ( | int & | , | |
double * | , | |||
double & | f, | |||
double * | , | |||
int | ||||
) | [static, protected] |
implementation of FCN for Fumili
static function implementing the evaluation of the FCN (it uses static instance fgFumili)
unsigned int TFumiliMinimizer::fDim [private] |
Definition at line 167 of file TFumiliMinimizer.h.
Referenced by CovMatrix(), Minimize(), NDim(), and SetFunction().
unsigned int TFumiliMinimizer::fNFree [private] |
double TFumiliMinimizer::fMinVal [private] |
double TFumiliMinimizer::fEdm [private] |
std::vector<double> TFumiliMinimizer::fParams [private] |
std::vector<double> TFumiliMinimizer::fErrors [private] |
std::vector<double> TFumiliMinimizer::fCovar [private] |
Definition at line 173 of file TFumiliMinimizer.h.
Referenced by CovMatrix(), CovMatrixStatus(), and Minimize().
TFumili* TFumiliMinimizer::fFumili [private] |
Definition at line 175 of file TFumiliMinimizer.h.
Referenced by Minimize(), SetFixedVariable(), SetFunction(), SetLimitedVariable(), SetVariable(), SetVariableValue(), and ~TFumiliMinimizer().
ROOT::Math::FitMethodFunction * TFumiliMinimizer::fgFunc [static, private] |
ROOT::Math::FitMethodGradFunction * TFumiliMinimizer::fgGradFunc [static, private] |
TFumili * TFumiliMinimizer::fgFumili [static, private] |
std::vector<double> TFumiliMinimizer::fParams [private] |
Definition at line 171 of file TFumiliMinimizer.h.
std::vector<double> TFumiliMinimizer::fErrors [private] |
Definition at line 172 of file TFumiliMinimizer.h.
std::vector<double> TFumiliMinimizer::fCovar [private] |
Definition at line 173 of file TFumiliMinimizer.h.
TFumili* TFumiliMinimizer::fFumili [private] |
Definition at line 175 of file TFumiliMinimizer.h.
ROOT::Math::FitMethodFunction* TFumiliMinimizer::fgFunc [static, private] |
Definition at line 179 of file TFumiliMinimizer.h.
ROOT::Math::FitMethodGradFunction* TFumiliMinimizer::fgGradFunc [static, private] |
Definition at line 180 of file TFumiliMinimizer.h.
TFumili* TFumiliMinimizer::fgFumili [static, private] |
Definition at line 182 of file TFumiliMinimizer.h.