BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
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 48 of file FitResult.h.
Public Types | |
typedef ROOT::Math::IParamMultiFunction | IModelFunction |
Public Member Functions | |
FitResult () | |
FitResult (const FitConfig &fconfig) | |
FitResult (const FitResult &rhs) | |
virtual | ~FitResult () |
double | Chi2 () const |
Chi2 fit value in case of likelihood must be computed ? More... | |
bool | Contour (unsigned int ipar, unsigned int jpar, unsigned int &npoints, double *pntsx, double *pntsy, double confLevel=0.683) |
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) |
const BinData * | 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 More... | |
const IModelFunction * | FittedFunction () const |
Return pointer to model (fit) function with fitted parameter values. Pointer is managed internally. I must not be deleted. More... | |
void | GetConfidenceIntervals (const BinData &data, double *ci, double cl=0.95, bool norm=false) const |
std::vector< double > | GetConfidenceIntervals (double cl=0.95, bool norm=false) const |
void | GetConfidenceIntervals (unsigned int n, unsigned int stride1, unsigned int stride2, const double *x, double *ci, double cl=0.95, bool norm=false) const |
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 |
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 |
minimizer type 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... | |
FitResult & | operator= (const FitResult &rhs) |
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... | |
bool | Scan (unsigned int ipar, unsigned int &npoints, double *pntsx, double *pntsy, double xmin=0, double xmax=0) |
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) |
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< IModelFunction > | ModelFunction () |
Return pointer non const pointer to model (fit) function with fitted parameter values. used by Fitter class. 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< FitData > | fFitData |
model function resulting from the fit. More... | |
std::shared_ptr< IModelFunction > | fFitFunc |
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::Minimizer > | fMinimizer |
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::IMultiGenFunction > | fObjFunc |
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 |
Definition at line 52 of file FitResult.h.
ROOT::Fit::FitResult::FitResult | ( | ) |
Default constructor for an empty (non valid) fit result
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)
ROOT::Fit::FitResult::FitResult | ( | const FitResult & | rhs | ) |
Copy constructor.
|
virtual |
Destructor
|
inline |
Chi2 fit value in case of likelihood must be computed ?
Definition at line 161 of file FitResult.h.
References fChi2.
bool ROOT::Fit::FitResult::Contour | ( | unsigned int | ipar, |
unsigned int | jpar, | ||
unsigned int & | npoints, | ||
double * | pntsx, | ||
double * | pntsy, | ||
double | confLevel = 0.683 |
||
) |
create contour of two parameters around the minimum pass as option confidence level: default is a value of 0.683
|
inline |
retrieve correlation elements
Definition at line 227 of file FitResult.h.
References CovMatrix(), fCovMatrix, and fErrors.
|
inline |
retrieve covariance matrix element
Definition at line 217 of file FitResult.h.
References fCovMatrix, and fErrors.
Referenced by Correlation().
|
inline |
covariance matrix status code using Minuit convention : =0 not calculated, =1 approximated, =2 made pos def , =3 accurate
Definition at line 143 of file FitResult.h.
References fCovStatus.
|
inline |
|
inline |
|
inline |
parameter errors (return st::vector)
Definition at line 170 of file FitResult.h.
References fErrors.
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
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
|
inline |
Return pointer to model (fit) function with fitted parameter values. Pointer is managed internally. I must not be deleted.
fitting quantities
Definition at line 149 of file FitResult.h.
References fFitFunc.
void ROOT::Fit::FitResult::GetConfidenceIntervals | ( | const BinData & | data, |
double * | ci, | ||
double | cl = 0.95 , |
||
bool | norm = false |
||
) | 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
std::vector<double> ROOT::Fit::FitResult::GetConfidenceIntervals | ( | double | cl = 0.95 , |
bool | norm = false |
||
) | const |
evaluate confidence interval for the data set used in the last fit the confidence interval are returned as a vector of data points
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 = false |
||
) | 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 The intervals can be corrected optionally using the chi2/ndf value of the fit if a chi2 fit is performed. This has changed since ROOT 6.14, before the interval were corrected by default.
|
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 251 of file FitResult.h.
References fCovMatrix, and fErrors.
|
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 237 of file FitResult.h.
References fCovMatrix, and fErrors.
|
inline |
parameter errors (return const pointer)
Definition at line 172 of file FitResult.h.
References fErrors.
|
inline |
get name of parameter (deprecated)
Definition at line 329 of file FitResult.h.
References ParName().
|
inline |
parameter values (return const pointer)
Definition at line 177 of file FitResult.h.
References fParams.
|
inline |
parameter global correlation coefficient
Definition at line 211 of file FitResult.h.
References fGlobalCC.
bool ROOT::Fit::FitResult::HasMinosError | ( | unsigned int | i | ) | const |
query if parameter i has the Minos error
int ROOT::Fit::FitResult::Index | ( | const std::string & | name | ) | const |
get index for parameter name (return -1 if not found)
|
inline |
True if a fit result does not exist (even invalid) with parameter values.
Definition at line 118 of file FitResult.h.
References fParams.
bool ROOT::Fit::FitResult::IsParameterBound | ( | unsigned int | ipar | ) | const |
query if a parameter is bound
bool ROOT::Fit::FitResult::IsParameterFixed | ( | unsigned int | ipar | ) | const |
query if a parameter is fixed
|
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 115 of file FitResult.h.
References fValid.
double ROOT::Fit::FitResult::LowerError | ( | unsigned int | i | ) | const |
lower Minos error. If Minos has not run for parameter i return the parabolic error
|
inline |
Return value of the objective function (chi2 or likelihood) used in the fit.
Definition at line 121 of file FitResult.h.
References fVal.
|
inline |
minimizer type
minimization quantities
Definition at line 103 of file FitResult.h.
References fMinimType.
|
inlineprotected |
Return pointer non const pointer to model (fit) function with fitted parameter values. used by Fitter class.
Definition at line 339 of file FitResult.h.
References fFitFunc.
|
inline |
Number of function calls to find minimum.
Definition at line 124 of file FitResult.h.
References fNCalls.
|
inline |
|
inline |
|
inline |
flag to chek if errors are normalized
Definition at line 310 of file FitResult.h.
References fNormalized.
void ROOT::Fit::FitResult::NormalizeErrors | ( | ) |
normalize errors using chi2/ndf for chi2 fits
|
inline |
total number of parameters (abbreviation)
Definition at line 132 of file FitResult.h.
References NTotalParameters().
|
inline |
get total number of parameters
Definition at line 130 of file FitResult.h.
References fParams.
Referenced by NPar().
|
inline |
bool ROOT::Fit::FitResult::ParameterBounds | ( | unsigned int | ipar, |
double & | lower, | ||
double & | upper | ||
) | const |
retrieve parameter bounds - return false if parameter is not bound
|
inline |
parameter values (return std::vector)
Definition at line 175 of file FitResult.h.
References fParams.
|
inline |
std::string ROOT::Fit::FitResult::ParName | ( | unsigned int | i | ) | const |
name of the parameter
Referenced by GetParameterName().
void ROOT::Fit::FitResult::Print | ( | std::ostream & | os, |
bool | covmat = false |
||
) | const |
print the result and optionaly covariance matrix and correlations
void ROOT::Fit::FitResult::PrintCovMatrix | ( | std::ostream & | os | ) | const |
print error matrix and correlations
double ROOT::Fit::FitResult::Prob | ( | ) | const |
p value of the fit (chi2 probability)
bool ROOT::Fit::FitResult::Scan | ( | unsigned int | ipar, |
unsigned int & | npoints, | ||
double * | pntsx, | ||
double * | pntsy, | ||
double | xmin = 0 , |
||
double | xmax = 0 |
||
) |
scan likelihood value of parameter and fill the given graph.
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)
|
inlineprotected |
|
inline |
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
double ROOT::Fit::FitResult::UpperError | ( | unsigned int | i | ) | const |
upper Minos error. If Minos has not run for parameter i return the parabolic error
|
inline |
|
friend |
Definition at line 343 of file FitResult.h.
|
protected |
Definition at line 361 of file FitResult.h.
|
protected |
Definition at line 355 of file FitResult.h.
Referenced by Chi2().
|
protected |
Definition at line 365 of file FitResult.h.
Referenced by Correlation(), CovMatrix(), GetCorrelationMatrix(), and GetCovarianceMatrix().
|
protected |
Definition at line 352 of file FitResult.h.
Referenced by CovMatrixStatus().
|
protected |
Definition at line 354 of file FitResult.h.
Referenced by Edm().
|
protected |
Definition at line 364 of file FitResult.h.
Referenced by Correlation(), CovMatrix(), Error(), Errors(), GetCorrelationMatrix(), GetCovarianceMatrix(), GetErrors(), and ParError().
|
protected |
model function resulting from the fit.
Definition at line 359 of file FitResult.h.
|
protected |
objective function used for fitting
Definition at line 358 of file FitResult.h.
Referenced by FittedFunction(), ModelFunction(), and SetModelFunction().
|
protected |
data set used in the fit
Definition at line 360 of file FitResult.h.
|
protected |
Definition at line 366 of file FitResult.h.
Referenced by GlobalCC().
|
protected |
Definition at line 356 of file FitResult.h.
|
protected |
Definition at line 368 of file FitResult.h.
Referenced by MinimizerType().
|
protected |
Definition at line 367 of file FitResult.h.
|
protected |
Definition at line 350 of file FitResult.h.
Referenced by NCalls().
|
protected |
Definition at line 349 of file FitResult.h.
Referenced by Ndf().
|
protected |
Definition at line 348 of file FitResult.h.
Referenced by NFreeParameters().
|
protected |
Definition at line 347 of file FitResult.h.
Referenced by NormalizedErrors().
|
protected |
minimizer object used for fitting
Definition at line 357 of file FitResult.h.
|
protected |
Definition at line 362 of file FitResult.h.
|
protected |
Definition at line 363 of file FitResult.h.
Referenced by GetParams(), IsEmpty(), NTotalParameters(), Parameter(), Parameters(), and Value().
|
protected |
Definition at line 369 of file FitResult.h.
|
protected |
Definition at line 351 of file FitResult.h.
Referenced by Status().
|
protected |
Definition at line 353 of file FitResult.h.
Referenced by MinFcnValue().
|
protected |
Definition at line 346 of file FitResult.h.
Referenced by IsValid().