Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooAbsMinimizerFcn Class Referenceabstract

Definition at line 32 of file RooAbsMinimizerFcn.h.

Public Member Functions

 RooAbsMinimizerFcn (RooArgList paramList, RooMinimizer *context)
 
virtual ~RooAbsMinimizerFcn ()=default
 
RooArgList const & allParams () const
 
void ApplyCovarianceMatrix (TMatrixDSym &V)
 Set different external covariance matrix.
 
void BackProp ()
 Put Minuit results back into RooFit objects.
 
RooMinimizer::Config const & cfg () const
 
RooArgList constParams () const
 
Int_t evalCounter () const
 
RooRealVarfloatableParam (std::size_t i) const
 
RooArgList floatParams () const
 
virtual std::string getFunctionName () const =0
 RooMinimizer sometimes needs the name of the minimized function. Implement this in the derived class.
 
virtual std::string getFunctionTitle () const =0
 RooMinimizer sometimes needs the title of the minimized function. Implement this in the derived class.
 
std::ofstream * GetLogFile ()
 
doubleGetMaxFCN ()
 
virtual ROOT::Math::IMultiGenFunctiongetMultiGenFcn ()=0
 
unsigned int getNDim () const
 
Int_t GetNumInvalidNLL () const
 
doublegetOffset () const
 Return a possible offset that's applied to the function to separate invalid function values from valid ones.
 
RooArgList initFloatParams () const
 
bool SetLogFile (const char *inLogfile)
 Change the file name for logging of a RooMinimizer of all MINUIT steppings through the parameter space.
 
virtual void setOffsetting (bool flag)=0
 Enable or disable offsetting on the function to be minimized, which enhances numerical precision.
 
void setOptimizeConst (Int_t flag)
 
bool SetPdfParamVal (int index, double value) const
 Set value of parameter i.
 
virtual bool Synchronize (std::vector< ROOT::Fit::ParameterSettings > &parameters)
 Like synchronizeParameterSettings, Synchronize informs Minuit through its parameter_settings vector of RooFit parameter properties, but Synchronize can be overridden to e.g.
 
bool synchronizeParameterSettings (std::vector< ROOT::Fit::ParameterSettings > &parameters, bool optConst)
 Informs Minuit through its parameter_settings vector of RooFit parameter properties.
 
void zeroEvalCount ()
 

Protected Member Functions

double applyEvalErrorHandling (double fvalue) const
 Apply corrections on the fvalue if errors were signaled.
 
void finishDoEval () const
 
void optimizeConstantTerms (bool constStatChange, bool constValChange)
 
void printEvalErrors () const
 Print information about why evaluation failed.
 
virtual void setOptimizeConstOnFunction (RooAbsArg::ConstOpCode opcode, bool doAlsoTrackingOpt)=0
 This function must be overridden in the derived class to pass on constant term optimization configuration to the function to be minimized.
 

Static Protected Member Functions

static bool canBeFloating (RooAbsArg const &arg)
 
static bool treatAsConstant (RooAbsArg const &arg)
 

Protected Attributes

RooArgList _allParams
 
RooArgList _allParamsInit
 
RooMinimizer_context = nullptr
 
int _evalCounter {0}
 
std::vector< std::size_t > _floatableParamIndices
 
double _funcOffset {0.}
 
std::ofstream * _logfile = nullptr
 
double _maxFCN = -std::numeric_limits<double>::infinity()
 
int _numBadNLL = 0
 
bool _optConst = false
 

#include </home/sftnight/build/workspace/root-makedoc-master/rootspi/rdoc/src/master/roofit/roofitcore/src/RooAbsMinimizerFcn.h>

Inheritance diagram for RooAbsMinimizerFcn:
[legend]

Constructor & Destructor Documentation

◆ RooAbsMinimizerFcn()

RooAbsMinimizerFcn::RooAbsMinimizerFcn ( RooArgList  paramList,
RooMinimizer context 
)

Definition at line 39 of file RooAbsMinimizerFcn.cxx.

◆ ~RooAbsMinimizerFcn()

virtual RooAbsMinimizerFcn::~RooAbsMinimizerFcn ( )
virtualdefault

Member Function Documentation

◆ allParams()

RooArgList const & RooAbsMinimizerFcn::allParams ( ) const
inline

Definition at line 46 of file RooAbsMinimizerFcn.h.

◆ ApplyCovarianceMatrix()

void RooAbsMinimizerFcn::ApplyCovarianceMatrix ( TMatrixDSym V)

Set different external covariance matrix.

Apply results of given external covariance matrix.

i.e. propagate its errors to all RRV parameter representations and give this matrix instead of the HESSE matrix at the next save() call

Definition at line 219 of file RooAbsMinimizerFcn.cxx.

◆ applyEvalErrorHandling()

double RooAbsMinimizerFcn::applyEvalErrorHandling ( double  fvalue) const
protected

Apply corrections on the fvalue if errors were signaled.

Two kinds of errors are possible: 1. infinite or nan values (the latter can be a signaling nan, using RooNaNPacker) or 2. logEvalError-type errors. Both are caught here and fvalue is updated so that Minuit in turn is nudged to move the search outside of the problematic parameter space area.

Definition at line 276 of file RooAbsMinimizerFcn.cxx.

◆ BackProp()

void RooAbsMinimizerFcn::BackProp ( )

Put Minuit results back into RooFit objects.

Transfer MINUIT fit results back into RooFit objects.

Definition at line 166 of file RooAbsMinimizerFcn.cxx.

◆ canBeFloating()

static bool RooAbsMinimizerFcn::canBeFloating ( RooAbsArg const &  arg)
inlinestaticprotected

Definition at line 100 of file RooAbsMinimizerFcn.h.

◆ cfg()

RooMinimizer::Config const & RooAbsMinimizerFcn::cfg ( ) const
inline

Definition at line 82 of file RooAbsMinimizerFcn.h.

◆ constParams()

RooArgList RooAbsMinimizerFcn::constParams ( ) const

Definition at line 364 of file RooAbsMinimizerFcn.cxx.

◆ evalCounter()

Int_t RooAbsMinimizerFcn::evalCounter ( ) const
inline

Definition at line 53 of file RooAbsMinimizerFcn.h.

◆ finishDoEval()

void RooAbsMinimizerFcn::finishDoEval ( ) const
protected

Definition at line 300 of file RooAbsMinimizerFcn.cxx.

◆ floatableParam()

RooRealVar & RooAbsMinimizerFcn::floatableParam ( std::size_t  i) const
inline

Definition at line 84 of file RooAbsMinimizerFcn.h.

◆ floatParams()

RooArgList RooAbsMinimizerFcn::floatParams ( ) const

Definition at line 354 of file RooAbsMinimizerFcn.cxx.

◆ getFunctionName()

virtual std::string RooAbsMinimizerFcn::getFunctionName ( ) const
pure virtual

RooMinimizer sometimes needs the name of the minimized function. Implement this in the derived class.

Implemented in RooMinimizerFcn, and RooFit::TestStatistics::MinuitFcnGrad.

◆ getFunctionTitle()

virtual std::string RooAbsMinimizerFcn::getFunctionTitle ( ) const
pure virtual

RooMinimizer sometimes needs the title of the minimized function. Implement this in the derived class.

Implemented in RooMinimizerFcn, and RooFit::TestStatistics::MinuitFcnGrad.

◆ GetLogFile()

std::ofstream * RooAbsMinimizerFcn::GetLogFile ( )
inline

Definition at line 70 of file RooAbsMinimizerFcn.h.

◆ GetMaxFCN()

double & RooAbsMinimizerFcn::GetMaxFCN ( )
inline

Definition at line 52 of file RooAbsMinimizerFcn.h.

◆ getMultiGenFcn()

virtual ROOT::Math::IMultiGenFunction * RooAbsMinimizerFcn::getMultiGenFcn ( )
pure virtual

◆ getNDim()

unsigned int RooAbsMinimizerFcn::getNDim ( ) const
inline

Definition at line 72 of file RooAbsMinimizerFcn.h.

◆ GetNumInvalidNLL()

Int_t RooAbsMinimizerFcn::GetNumInvalidNLL ( ) const
inline

Definition at line 50 of file RooAbsMinimizerFcn.h.

◆ getOffset()

double & RooAbsMinimizerFcn::getOffset ( ) const
inline

Return a possible offset that's applied to the function to separate invalid function values from valid ones.

Definition at line 56 of file RooAbsMinimizerFcn.h.

◆ initFloatParams()

RooArgList RooAbsMinimizerFcn::initFloatParams ( ) const

Definition at line 374 of file RooAbsMinimizerFcn.cxx.

◆ optimizeConstantTerms()

void RooAbsMinimizerFcn::optimizeConstantTerms ( bool  constStatChange,
bool  constValChange 
)
protected

Definition at line 336 of file RooAbsMinimizerFcn.cxx.

◆ printEvalErrors()

void RooAbsMinimizerFcn::printEvalErrors ( ) const
protected

Print information about why evaluation failed.

Using _printEvalErrors, the number of errors printed can be steered. Negative values disable printing.

Definition at line 245 of file RooAbsMinimizerFcn.cxx.

◆ SetLogFile()

bool RooAbsMinimizerFcn::SetLogFile ( const char *  inLogfile)

Change the file name for logging of a RooMinimizer of all MINUIT steppings through the parameter space.

If inLogfile is null, the current log file is closed and logging is stopped.

Definition at line 197 of file RooAbsMinimizerFcn.cxx.

◆ setOffsetting()

virtual void RooAbsMinimizerFcn::setOffsetting ( bool  flag)
pure virtual

Enable or disable offsetting on the function to be minimized, which enhances numerical precision.

Implemented in RooMinimizerFcn, and RooFit::TestStatistics::MinuitFcnGrad.

◆ setOptimizeConst()

void RooAbsMinimizerFcn::setOptimizeConst ( Int_t  flag)

Definition at line 305 of file RooAbsMinimizerFcn.cxx.

◆ setOptimizeConstOnFunction()

virtual void RooAbsMinimizerFcn::setOptimizeConstOnFunction ( RooAbsArg::ConstOpCode  opcode,
bool  doAlsoTrackingOpt 
)
protectedpure virtual

This function must be overridden in the derived class to pass on constant term optimization configuration to the function to be minimized.

For a RooAbsArg, this would be RooAbsArg::constOptimizeTestStatistic.

Implemented in RooMinimizerFcn, and RooFit::TestStatistics::MinuitFcnGrad.

◆ SetPdfParamVal()

bool RooAbsMinimizerFcn::SetPdfParamVal ( int  index,
double  value 
) const

Set value of parameter i.

Definition at line 227 of file RooAbsMinimizerFcn.cxx.

◆ Synchronize()

bool RooAbsMinimizerFcn::Synchronize ( std::vector< ROOT::Fit::ParameterSettings > &  parameters)
virtual

Like synchronizeParameterSettings, Synchronize informs Minuit through its parameter_settings vector of RooFit parameter properties, but Synchronize can be overridden to e.g.

also include gradient strategy synchronization in subclasses.

Reimplemented in RooFit::TestStatistics::MinuitFcnGrad.

Definition at line 160 of file RooAbsMinimizerFcn.cxx.

◆ synchronizeParameterSettings()

bool RooAbsMinimizerFcn::synchronizeParameterSettings ( std::vector< ROOT::Fit::ParameterSettings > &  parameters,
bool  optConst 
)

Informs Minuit through its parameter_settings vector of RooFit parameter properties.

Internal function to synchronize TMinimizer with current information in RooAbsReal function parameters.

Definition at line 69 of file RooAbsMinimizerFcn.cxx.

◆ treatAsConstant()

static bool RooAbsMinimizerFcn::treatAsConstant ( RooAbsArg const &  arg)
inlinestaticprotected

Definition at line 103 of file RooAbsMinimizerFcn.h.

◆ zeroEvalCount()

void RooAbsMinimizerFcn::zeroEvalCount ( )
inline

Definition at line 54 of file RooAbsMinimizerFcn.h.

Member Data Documentation

◆ _allParams

RooArgList RooAbsMinimizerFcn::_allParams
protected

Definition at line 121 of file RooAbsMinimizerFcn.h.

◆ _allParamsInit

RooArgList RooAbsMinimizerFcn::_allParamsInit
protected

Definition at line 122 of file RooAbsMinimizerFcn.h.

◆ _context

RooMinimizer* RooAbsMinimizerFcn::_context = nullptr
protected

Definition at line 106 of file RooAbsMinimizerFcn.h.

◆ _evalCounter

int RooAbsMinimizerFcn::_evalCounter {0}
mutableprotected

Definition at line 113 of file RooAbsMinimizerFcn.h.

◆ _floatableParamIndices

std::vector<std::size_t> RooAbsMinimizerFcn::_floatableParamIndices
protected

Definition at line 124 of file RooAbsMinimizerFcn.h.

◆ _funcOffset

double RooAbsMinimizerFcn::_funcOffset {0.}
mutableprotected

Definition at line 111 of file RooAbsMinimizerFcn.h.

◆ _logfile

std::ofstream* RooAbsMinimizerFcn::_logfile = nullptr
protected

Definition at line 126 of file RooAbsMinimizerFcn.h.

◆ _maxFCN

double RooAbsMinimizerFcn::_maxFCN = -std::numeric_limits<double>::infinity()
mutableprotected

Definition at line 110 of file RooAbsMinimizerFcn.h.

◆ _numBadNLL

int RooAbsMinimizerFcn::_numBadNLL = 0
mutableprotected

Definition at line 112 of file RooAbsMinimizerFcn.h.

◆ _optConst

bool RooAbsMinimizerFcn::_optConst = false
protected

Definition at line 119 of file RooAbsMinimizerFcn.h.

  • roofit/roofitcore/src/RooAbsMinimizerFcn.h
  • roofit/roofitcore/src/RooAbsMinimizerFcn.cxx