Logo ROOT   6.07/09
Reference Guide
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
ROOT::Fit::FitResult Class Reference

class containg the result of the fit and all the related information (fitted parameter values, error, covariance matrix and minimizer result information) Contains a pointer also to the fitted (model) function, modified with the fit parameter values.

When the fit is valid, it is constructed from a Minimizer and a model function pointer

Definition at line 52 of file FitResult.h.

Public Types

typedef ROOT::Math::IParamMultiFunction IModelFunction
 

Public Member Functions

 FitResult ()
 Default constructor for an empty (non valid) fit result. More...
 
 FitResult (const FitConfig &fconfig)
 Constructor from a fit-config for a dummy fit (e.g. More...
 
 FitResult (const FitResult &rhs)
 Copy constructor. More...
 
virtual ~FitResult ()
 Destructor. More...
 
double Chi2 () const
 Chi2 fit value in case of likelihood must be computed ? More...
 
double Correlation (unsigned int i, unsigned int j) const
 retrieve correlation elements More...
 
double CovMatrix (unsigned int i, unsigned int j) const
 retrieve covariance matrix element More...
 
int CovMatrixStatus () const
 covariance matrix status code using Minuit convention : =0 not calculated, =1 approximated, =2 made pos def , =3 accurate More...
 
double Edm () const
 Expected distance from minimum. More...
 
double Error (unsigned int i) const
 parameter error by index More...
 
const std::vector< double > & Errors () const
 parameter errors (return st::vector) More...
 
void FillResult (const std::shared_ptr< ROOT::Math::Minimizer > &min, const FitConfig &fconfig, const std::shared_ptr< IModelFunction > &f, bool isValid, unsigned int sizeOfData=0, bool binFit=true, const ROOT::Math::IMultiGenFunction *chi2func=0, unsigned int ncalls=0)
 Fill the fit result from a Minimizer instance after fitting Run also Minos if requested from the configuration. More...
 
const BinDataFittedBinData () const
 return BinData used in the fit (return a nullptr in case a different fit is done or the data are not available Pointer is managed internally, it must not be deleted More...
 
const IModelFunctionFittedFunction () const
 fitting quantities More...
 
void GetConfidenceIntervals (unsigned int n, unsigned int stride1, unsigned int stride2, const double *x, double *ci, double cl=0.95, bool norm=true) const
 get confidence intervals for an array of n points x. More...
 
void GetConfidenceIntervals (const BinData &data, double *ci, double cl=0.95, bool norm=true) const
 evaluate confidence interval for the point specified in the passed data sets the confidence interval are returned in the array ci cl is the desired confidence interval value. More...
 
std::vector< double > GetConfidenceIntervals (double cl=0.95, bool norm=true) const
 evaluate confidence interval for the data set used in the last fit the confidence interval are returned as a vector of data points More...
 
template<class Matrix >
void GetCorrelationMatrix (Matrix &mat) const
 fill a correlation matrix elements using a generic symmetric matrix class implementing operator(i,j) the matrix must be previously allocates with right size (npar * npar) More...
 
template<class Matrix >
void GetCovarianceMatrix (Matrix &mat) const
 fill covariance matrix elements using a generic matrix class implementing operator(i,j) the matrix must be previously allocates with right size (npar * npar) More...
 
const double * GetErrors () const
 parameter errors (return const pointer) More...
 
std::string GetParameterName (unsigned int ipar) const
 get name of parameter (deprecated) More...
 
const double * GetParams () const
 parameter values (return const pointer) More...
 
double GlobalCC (unsigned int i) const
 parameter global correlation coefficient More...
 
bool HasMinosError (unsigned int i) const
 query if parameter i has the Minos error More...
 
int Index (const std::string &name) const
 get index for parameter name (return -1 if not found) More...
 
bool IsEmpty () const
 True if a fit result does not exist (even invalid) with parameter values. More...
 
bool IsParameterBound (unsigned int ipar) const
 query if a parameter is bound More...
 
bool IsParameterFixed (unsigned int ipar) const
 query if a parameter is fixed More...
 
bool IsValid () const
 True if fit successful, otherwise false. More...
 
double LowerError (unsigned int i) const
 lower Minos error. If Minos has not run for parameter i return the parabolic error More...
 
double MinFcnValue () const
 Return value of the objective function (chi2 or likelihood) used in the fit. More...
 
const std::string & MinimizerType () const
 minimization quantities More...
 
unsigned int NCalls () const
 Number of function calls to find minimum. More...
 
unsigned int Ndf () const
 Number of degree of freedom. More...
 
unsigned int NFreeParameters () const
 get total number of free parameters More...
 
bool NormalizedErrors () const
 flag to chek if errors are normalized More...
 
void NormalizeErrors ()
 normalize errors using chi2/ndf for chi2 fits More...
 
unsigned int NPar () const
 total number of parameters (abbreviation) More...
 
unsigned int NTotalParameters () const
 get total number of parameters More...
 
FitResultoperator= (const FitResult &rhs)
 Assignment operator. More...
 
double Parameter (unsigned int i) const
 parameter value by index More...
 
bool ParameterBounds (unsigned int ipar, double &lower, double &upper) const
 retrieve parameter bounds - return false if parameter is not bound More...
 
const std::vector< double > & Parameters () const
 parameter values (return std::vector) More...
 
double ParError (unsigned int i) const
 parameter error by index More...
 
std::string ParName (unsigned int i) const
 name of the parameter More...
 
void Print (std::ostream &os, bool covmat=false) const
 print the result and optionaly covariance matrix and correlations More...
 
void PrintCovMatrix (std::ostream &os) const
 print error matrix and correlations More...
 
double Prob () const
 p value of the fit (chi2 probability) More...
 
void SetMinosError (unsigned int i, double elow, double eup)
 set the Minos errors for parameter i (called by the Fitter class when running Minos) More...
 
int Status () const
 minimizer status code More...
 
bool Update (const std::shared_ptr< ROOT::Math::Minimizer > &min, bool isValid, unsigned int ncalls=0)
 Update the fit result with a new minimization status To be run only if same fit is performed with same configuration Note that in this case MINOS is not re-run. More...
 
double UpperError (unsigned int i) const
 upper Minos error. If Minos has not run for parameter i return the parabolic error More...
 
double Value (unsigned int i) const
 parameter value by index More...
 

Protected Member Functions

std::shared_ptr< IModelFunctionModelFunction ()
 Return pointer non const pointer to model (fit) function with fitted parameter values. More...
 
void SetModelFunction (const std::shared_ptr< IModelFunction > &func)
 

Protected Attributes

std::map< unsigned int, unsigned int > fBoundParams
 
double fChi2
 
std::vector< double > fCovMatrix
 
int fCovStatus
 
double fEdm
 
std::vector< double > fErrors
 
std::shared_ptr< FitDatafFitData
 model function resulting from the fit. More...
 
std::shared_ptr< IModelFunctionfFitFunc
 objective function used for fitting More...
 
std::map< unsigned int, bool > fFixedParams
 data set used in the fit More...
 
std::vector< double > fGlobalCC
 
std::shared_ptr< ROOT::Math::MinimizerfMinimizer
 
std::string fMinimType
 
std::map< unsigned int, std::pair< double, double > > fMinosErrors
 
unsigned int fNCalls
 
unsigned int fNdf
 
unsigned int fNFree
 
bool fNormalized
 
std::shared_ptr< ROOT::Math::IMultiGenFunctionfObjFunc
 minimizer object used for fitting More...
 
std::vector< std::pair< double, double > > fParamBounds
 
std::vector< double > fParams
 
std::vector< std::string > fParNames
 
int fStatus
 
double fVal
 
bool fValid
 

Friends

class Fitter
 

#include <Fit/FitResult.h>

Inheritance diagram for ROOT::Fit::FitResult:
[legend]

Member Typedef Documentation

Definition at line 56 of file FitResult.h.

Constructor & Destructor Documentation

ROOT::Fit::FitResult::FitResult ( )

Default constructor for an empty (non valid) fit result.

Definition at line 45 of file FitResult.cxx.

ROOT::Fit::FitResult::FitResult ( const FitConfig fconfig)

Constructor from a fit-config for a dummy fit (e.g.

when only one fcn evaluation is done)

Definition at line 52 of file FitResult.cxx.

ROOT::Fit::FitResult::FitResult ( const FitResult rhs)

Copy constructor.

Definition at line 241 of file FitResult.cxx.

ROOT::Fit::FitResult::~FitResult ( )
virtual

Destructor.

Definition at line 236 of file FitResult.cxx.

Member Function Documentation

double ROOT::Fit::FitResult::Chi2 ( ) const
inline

Chi2 fit value in case of likelihood must be computed ?

Definition at line 165 of file FitResult.h.

double ROOT::Fit::FitResult::Correlation ( unsigned int  i,
unsigned int  j 
) const
inline

retrieve correlation elements

Definition at line 231 of file FitResult.h.

double ROOT::Fit::FitResult::CovMatrix ( unsigned int  i,
unsigned int  j 
) const
inline

retrieve covariance matrix element

Definition at line 221 of file FitResult.h.

int ROOT::Fit::FitResult::CovMatrixStatus ( ) const
inline

covariance matrix status code using Minuit convention : =0 not calculated, =1 approximated, =2 made pos def , =3 accurate

Definition at line 147 of file FitResult.h.

double ROOT::Fit::FitResult::Edm ( ) const
inline

Expected distance from minimum.

Definition at line 131 of file FitResult.h.

double ROOT::Fit::FitResult::Error ( unsigned int  i) const
inline

parameter error by index

Definition at line 191 of file FitResult.h.

const std::vector<double>& ROOT::Fit::FitResult::Errors ( ) const
inline

parameter errors (return st::vector)

Definition at line 174 of file FitResult.h.

void ROOT::Fit::FitResult::FillResult ( const std::shared_ptr< ROOT::Math::Minimizer > &  min,
const FitConfig fconfig,
const std::shared_ptr< IModelFunction > &  f,
bool  isValid,
unsigned int  sizeOfData = 0,
bool  binFit = true,
const ROOT::Math::IMultiGenFunction chi2func = 0,
unsigned int  ncalls = 0 
)

Fill the fit result from a Minimizer instance after fitting Run also Minos if requested from the configuration.

Definition at line 100 of file FitResult.cxx.

const BinData * ROOT::Fit::FitResult::FittedBinData ( ) const

return BinData used in the fit (return a nullptr in case a different fit is done or the data are not available Pointer is managed internally, it must not be deleted

Definition at line 679 of file FitResult.cxx.

const IModelFunction* ROOT::Fit::FitResult::FittedFunction ( ) const
inline

fitting quantities

Return pointer to model (fit) function with fitted parameter values. Pointer is managed internally. I must not be deleted

Definition at line 153 of file FitResult.h.

void ROOT::Fit::FitResult::GetConfidenceIntervals ( unsigned int  n,
unsigned int  stride1,
unsigned int  stride2,
const double *  x,
double *  ci,
double  cl = 0.95,
bool  norm = true 
) const

get confidence intervals for an array of n points x.

stride1 indicates the stride in the coordinate space while stride2 the stride in dimension space. For 1-dim points : stride1=1, stride2=1 for multi-dim points arranged as (x0,x1,...,xN,y0,....yN) stride1=1 stride2=n for multi-dim points arraged as (x0,y0,..,x1,y1,...,xN,yN,..) stride1=ndim, stride2=1

the confidence interval are returned in the array ci cl is the desired confidedence interval value norm is a flag to control if the intervals need to be normalized to the chi2/ndf value By default the intervals are corrected using the chi2/ndf value of the fit if a chi2 fit is performed

Definition at line 560 of file FitResult.cxx.

void ROOT::Fit::FitResult::GetConfidenceIntervals ( const BinData data,
double *  ci,
double  cl = 0.95,
bool  norm = true 
) const

evaluate confidence interval for the point specified in the passed data sets the confidence interval are returned in the array ci cl is the desired confidence interval value.

This method is mantained for backward compatibility and will be deprecated

Definition at line 631 of file FitResult.cxx.

std::vector< double > ROOT::Fit::FitResult::GetConfidenceIntervals ( double  cl = 0.95,
bool  norm = true 
) const

evaluate confidence interval for the data set used in the last fit the confidence interval are returned as a vector of data points

Definition at line 647 of file FitResult.cxx.

template<class Matrix >
void ROOT::Fit::FitResult::GetCorrelationMatrix ( Matrix &  mat) const
inline

fill a correlation matrix elements using a generic symmetric matrix class implementing operator(i,j) the matrix must be previously allocates with right size (npar * npar)

Definition at line 255 of file FitResult.h.

template<class Matrix >
void ROOT::Fit::FitResult::GetCovarianceMatrix ( Matrix &  mat) const
inline

fill covariance matrix elements using a generic matrix class implementing operator(i,j) the matrix must be previously allocates with right size (npar * npar)

Definition at line 241 of file FitResult.h.

const double* ROOT::Fit::FitResult::GetErrors ( ) const
inline

parameter errors (return const pointer)

Definition at line 176 of file FitResult.h.

std::string ROOT::Fit::FitResult::GetParameterName ( unsigned int  ipar) const
inline

get name of parameter (deprecated)

Definition at line 323 of file FitResult.h.

const double* ROOT::Fit::FitResult::GetParams ( ) const
inline

parameter values (return const pointer)

Definition at line 181 of file FitResult.h.

double ROOT::Fit::FitResult::GlobalCC ( unsigned int  i) const
inline

parameter global correlation coefficient

Definition at line 215 of file FitResult.h.

bool ROOT::Fit::FitResult::HasMinosError ( unsigned int  i) const

query if parameter i has the Minos error

Definition at line 382 of file FitResult.cxx.

int ROOT::Fit::FitResult::Index ( const std::string &  name) const

get index for parameter name (return -1 if not found)

Definition at line 408 of file FitResult.cxx.

bool ROOT::Fit::FitResult::IsEmpty ( ) const
inline

True if a fit result does not exist (even invalid) with parameter values.

Definition at line 122 of file FitResult.h.

bool ROOT::Fit::FitResult::IsParameterBound ( unsigned int  ipar) const

query if a parameter is bound

Definition at line 418 of file FitResult.cxx.

bool ROOT::Fit::FitResult::IsParameterFixed ( unsigned int  ipar) const

query if a parameter is fixed

Definition at line 422 of file FitResult.cxx.

bool ROOT::Fit::FitResult::IsValid ( ) const
inline

True if fit successful, otherwise false.

A fit is considered successful if the minimizer succeded in finding the minimum. It could happen that subsequent operations like error analysis (e.g. Minos) failed. In that case the status can be still true if the original minimization algorithm succeeded in finding the minimum. One can query in that case the minimizer return status using Status(). It is responability to the Minimizer class to tag a found minimum as valid or not and to produce also a status code.

Definition at line 119 of file FitResult.h.

double ROOT::Fit::FitResult::LowerError ( unsigned int  i) const

lower Minos error. If Minos has not run for parameter i return the parabolic error

Definition at line 389 of file FitResult.cxx.

double ROOT::Fit::FitResult::MinFcnValue ( ) const
inline

Return value of the objective function (chi2 or likelihood) used in the fit.

Definition at line 125 of file FitResult.h.

const std::string& ROOT::Fit::FitResult::MinimizerType ( ) const
inline

minimization quantities

minimizer type

Definition at line 107 of file FitResult.h.

std::shared_ptr<IModelFunction> ROOT::Fit::FitResult::ModelFunction ( )
inlineprotected

Return pointer non const pointer to model (fit) function with fitted parameter values.

used by Fitter class

Definition at line 333 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::NCalls ( ) const
inline

Number of function calls to find minimum.

Definition at line 128 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::Ndf ( ) const
inline

Number of degree of freedom.

Definition at line 168 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::NFreeParameters ( ) const
inline

get total number of free parameters

Definition at line 139 of file FitResult.h.

bool ROOT::Fit::FitResult::NormalizedErrors ( ) const
inline

flag to chek if errors are normalized

Definition at line 304 of file FitResult.h.

void ROOT::Fit::FitResult::NormalizeErrors ( )

normalize errors using chi2/ndf for chi2 fits

Definition at line 363 of file FitResult.cxx.

unsigned int ROOT::Fit::FitResult::NPar ( ) const
inline

total number of parameters (abbreviation)

Definition at line 136 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::NTotalParameters ( ) const
inline

get total number of parameters

Definition at line 134 of file FitResult.h.

FitResult & ROOT::Fit::FitResult::operator= ( const FitResult rhs)

Assignment operator.

Definition at line 248 of file FitResult.cxx.

double ROOT::Fit::FitResult::Parameter ( unsigned int  i) const
inline

parameter value by index

Definition at line 186 of file FitResult.h.

bool ROOT::Fit::FitResult::ParameterBounds ( unsigned int  ipar,
double &  lower,
double &  upper 
) const

retrieve parameter bounds - return false if parameter is not bound

Definition at line 426 of file FitResult.cxx.

const std::vector<double>& ROOT::Fit::FitResult::Parameters ( ) const
inline

parameter values (return std::vector)

Definition at line 179 of file FitResult.h.

double ROOT::Fit::FitResult::ParError ( unsigned int  i) const
inline

parameter error by index

Definition at line 195 of file FitResult.h.

std::string ROOT::Fit::FitResult::ParName ( unsigned int  i) const

name of the parameter

Definition at line 439 of file FitResult.cxx.

void ROOT::Fit::FitResult::Print ( std::ostream &  os,
bool  covmat = false 
) const

print the result and optionaly covariance matrix and correlations

Definition at line 446 of file FitResult.cxx.

void ROOT::Fit::FitResult::PrintCovMatrix ( std::ostream &  os) const

print error matrix and correlations

Definition at line 501 of file FitResult.cxx.

double ROOT::Fit::FitResult::Prob ( ) const

p value of the fit (chi2 probability)

Definition at line 377 of file FitResult.cxx.

void ROOT::Fit::FitResult::SetMinosError ( unsigned int  i,
double  elow,
double  eup 
)

set the Minos errors for parameter i (called by the Fitter class when running Minos)

Definition at line 403 of file FitResult.cxx.

void ROOT::Fit::FitResult::SetModelFunction ( const std::shared_ptr< IModelFunction > &  func)
inlineprotected

Definition at line 334 of file FitResult.h.

int ROOT::Fit::FitResult::Status ( ) const
inline

minimizer status code

Definition at line 142 of file FitResult.h.

bool ROOT::Fit::FitResult::Update ( const std::shared_ptr< ROOT::Math::Minimizer > &  min,
bool  isValid,
unsigned int  ncalls = 0 
)

Update the fit result with a new minimization status To be run only if same fit is performed with same configuration Note that in this case MINOS is not re-run.

If one wants to run also MINOS a new result must be created

Definition at line 291 of file FitResult.cxx.

double ROOT::Fit::FitResult::UpperError ( unsigned int  i) const

upper Minos error. If Minos has not run for parameter i return the parabolic error

Definition at line 396 of file FitResult.cxx.

double ROOT::Fit::FitResult::Value ( unsigned int  i) const
inline

parameter value by index

Definition at line 184 of file FitResult.h.

Friends And Related Function Documentation

friend class Fitter
friend

Definition at line 337 of file FitResult.h.

Member Data Documentation

std::map<unsigned int, unsigned int> ROOT::Fit::FitResult::fBoundParams
protected

Definition at line 355 of file FitResult.h.

double ROOT::Fit::FitResult::fChi2
protected

Definition at line 349 of file FitResult.h.

std::vector<double> ROOT::Fit::FitResult::fCovMatrix
protected

Definition at line 359 of file FitResult.h.

int ROOT::Fit::FitResult::fCovStatus
protected

Definition at line 346 of file FitResult.h.

double ROOT::Fit::FitResult::fEdm
protected

Definition at line 348 of file FitResult.h.

std::vector<double> ROOT::Fit::FitResult::fErrors
protected

Definition at line 358 of file FitResult.h.

std::shared_ptr<FitData> ROOT::Fit::FitResult::fFitData
protected

model function resulting from the fit.

Definition at line 353 of file FitResult.h.

std::shared_ptr<IModelFunction> ROOT::Fit::FitResult::fFitFunc
protected

objective function used for fitting

Definition at line 352 of file FitResult.h.

std::map<unsigned int, bool> ROOT::Fit::FitResult::fFixedParams
protected

data set used in the fit

Definition at line 354 of file FitResult.h.

std::vector<double> ROOT::Fit::FitResult::fGlobalCC
protected

Definition at line 360 of file FitResult.h.

std::shared_ptr<ROOT::Math::Minimizer> ROOT::Fit::FitResult::fMinimizer
protected

Definition at line 350 of file FitResult.h.

std::string ROOT::Fit::FitResult::fMinimType
protected

Definition at line 362 of file FitResult.h.

std::map<unsigned int, std::pair<double,double> > ROOT::Fit::FitResult::fMinosErrors
protected

Definition at line 361 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::fNCalls
protected

Definition at line 344 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::fNdf
protected

Definition at line 343 of file FitResult.h.

unsigned int ROOT::Fit::FitResult::fNFree
protected

Definition at line 342 of file FitResult.h.

bool ROOT::Fit::FitResult::fNormalized
protected

Definition at line 341 of file FitResult.h.

std::shared_ptr<ROOT::Math::IMultiGenFunction> ROOT::Fit::FitResult::fObjFunc
protected

minimizer object used for fitting

Definition at line 351 of file FitResult.h.

std::vector<std::pair<double,double> > ROOT::Fit::FitResult::fParamBounds
protected

Definition at line 356 of file FitResult.h.

std::vector<double> ROOT::Fit::FitResult::fParams
protected

Definition at line 357 of file FitResult.h.

std::vector<std::string> ROOT::Fit::FitResult::fParNames
protected

Definition at line 363 of file FitResult.h.

int ROOT::Fit::FitResult::fStatus
protected

Definition at line 345 of file FitResult.h.

double ROOT::Fit::FitResult::fVal
protected

Definition at line 347 of file FitResult.h.

bool ROOT::Fit::FitResult::fValid
protected

Definition at line 340 of file FitResult.h.


The documentation for this class was generated from the following files: