Logo ROOT  
Reference Guide
RooMinimizerFcn Class Reference

RooMinimizerFcn is an interface to the ROOT::Math::IBaseFunctionMultiDim, a function that ROOT's minimisers use to carry out minimisations.

Definition at line 36 of file RooMinimizerFcn.h.

Public Member Functions

 RooMinimizerFcn (const RooMinimizerFcn &other)
 
 RooMinimizerFcn (RooAbsReal *funct, RooMinimizer *context, bool verbose=false)
 
 ~RooMinimizerFcn () override
 
ROOT::Math::IBaseFunctionMultiDimClone () const override
 Clone a function. More...
 
bool fit (ROOT::Fit::Fitter &fitter) const override
 
std::string getFunctionName () const override
 RooMinimizer sometimes needs the name of the minimized function. Implement this in the derived class. More...
 
std::string getFunctionTitle () const override
 RooMinimizer sometimes needs the title of the minimized function. Implement this in the derived class. More...
 
ROOT::Math::IMultiGenFunctiongetMultiGenFcn () override
 
unsigned int NDim () const override
 Retrieve the dimension of the function. More...
 
void setOffsetting (bool flag) override
 Enable or disable offsetting on the function to be minimized, which enhances numerical precision. More...
 
void setOptimizeConstOnFunction (RooAbsArg::ConstOpCode opcode, bool doAlsoTrackingOpt) override
 This function must be overridden in the derived class to pass on constant term optimization configuration to the function to be minimized. More...
 
- Public Member Functions inherited from RooAbsMinimizerFcn
 RooAbsMinimizerFcn (const RooAbsMinimizerFcn &other)
 
 RooAbsMinimizerFcn (RooArgList paramList, RooMinimizer *context, bool verbose=false)
 
virtual ~RooAbsMinimizerFcn ()=default
 
void ApplyCovarianceMatrix (TMatrixDSym &V)
 Set different external covariance matrix. More...
 
void BackProp (const ROOT::Fit::FitResult &results)
 Put Minuit results back into RooFit objects. More...
 
Int_t evalCounter () const
 
virtual bool fit (ROOT::Fit::Fitter &) const =0
 
RooArgListGetConstParamList ()
 
RooArgListGetFloatParamList ()
 
virtual std::string getFunctionName () const =0
 RooMinimizer sometimes needs the name of the minimized function. Implement this in the derived class. More...
 
virtual std::string getFunctionTitle () const =0
 RooMinimizer sometimes needs the title of the minimized function. Implement this in the derived class. More...
 
RooArgListGetInitConstParamList ()
 
RooArgListGetInitFloatParamList ()
 
std::ofstream * GetLogFile ()
 
doubleGetMaxFCN ()
 
virtual ROOT::Math::IMultiGenFunctiongetMultiGenFcn ()=0
 
unsigned int getNDim () const
 
Int_t GetNumInvalidNLL () const
 
double getOffset () const
 Return a possible offset that's applied to the function to separate invalid function values from valid ones. More...
 
bool getOptConst ()
 
std::vector< doublegetParameterValues () const
 
unsigned int NDim () const
 
void SetEvalErrorWall (bool flag)
 
bool SetLogFile (const char *inLogfile)
 Change the file name for logging of a RooMinimizer of all MINUIT steppings through the parameter space. More...
 
virtual void setOffsetting (bool flag)=0
 Enable or disable offsetting on the function to be minimized, which enhances numerical precision. More...
 
void setOptimizeConst (Int_t flag)
 
bool SetPdfParamVal (int index, double value) const
 Set value of parameter i. More...
 
void SetPrintEvalErrors (Int_t numEvalErrors)
 
void SetRecoverFromNaNStrength (double strength)
 Try to recover from invalid function values. More...
 
void SetVerbose (bool flag=true)
 
virtual bool Synchronize (std::vector< ROOT::Fit::ParameterSettings > &parameters, bool optConst, bool verbose)
 Like synchronizeParameterSettings, Synchronize informs Minuit through its parameter_settings vector of RooFit parameter properties, but Synchronize can be overridden to e.g. More...
 
bool synchronizeParameterSettings (std::vector< ROOT::Fit::ParameterSettings > &parameters, bool optConst, bool verbose)
 Informs Minuit through its parameter_settings vector of RooFit parameter properties. More...
 
void zeroEvalCount ()
 
- Public Member Functions inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double >
 IBaseFunctionMultiDimTempl ()
 
virtual ~IBaseFunctionMultiDimTempl ()
 virtual destructor More...
 
virtual IBaseFunctionMultiDimTempl< double > * Clone () const=0
 Clone a function. More...
 
virtual unsigned int NDim () const=0
 Retrieve the dimension of the function. More...
 
double operator() (const double *x) const
 Evaluate the function at a point x[]. More...
 

Private Member Functions

double DoEval (const double *x) const override
 Evaluate function given the parameters in x. More...
 

Private Attributes

RooAbsReal_funct
 

Additional Inherited Members

- Public Types inherited from ROOT::Math::IBaseFunctionMultiDimTempl< double >
typedef double BackendType
 
typedef IBaseFunctionMultiDimTempl< doubleBaseFunc
 
- Protected Member Functions inherited from RooAbsMinimizerFcn
void ClearPdfParamAsymErr (Int_t index)
 Modify PDF parameter error by ordinal index (needed by MINUIT) More...
 
void finishDoEval () const
 
void optimizeConstantTerms (bool constStatChange, bool constValChange)
 
void printEvalErrors () const
 Print information about why evaluation failed. More...
 
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. More...
 
void SetPdfParamErr (Int_t index, double loVal, double hiVal)
 Modify PDF parameter error by ordinal index (needed by MINUIT) More...
 
void SetPdfParamErr (Int_t index, double value)
 Modify PDF parameter error by ordinal index (needed by MINUIT) More...
 
- Protected Attributes inherited from RooAbsMinimizerFcn
std::unique_ptr< RooArgList_constParamList
 
RooMinimizer_context
 
bool _doEvalErrorWall {true}
 
int _evalCounter {0}
 
std::unique_ptr< RooArgList_floatParamList
 
double _funcOffset {0.}
 
std::unique_ptr< RooArgList_initConstParamList
 
std::unique_ptr< RooArgList_initFloatParamList
 
std::ofstream * _logfile = nullptr
 
double _maxFCN = -std::numeric_limits<double>::infinity()
 
unsigned int _nDim = 0
 
int _numBadNLL = 0
 
bool _optConst = false
 
int _printEvalErrors = 10
 
double _recoverFromNaNStrength {10.}
 
bool _verbose
 

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

Inheritance diagram for RooMinimizerFcn:
[legend]

Constructor & Destructor Documentation

◆ RooMinimizerFcn() [1/2]

RooMinimizerFcn::RooMinimizerFcn ( RooAbsReal funct,
RooMinimizer context,
bool  verbose = false 
)

Definition at line 55 of file RooMinimizerFcn.cxx.

◆ RooMinimizerFcn() [2/2]

RooMinimizerFcn::RooMinimizerFcn ( const RooMinimizerFcn other)

Definition at line 62 of file RooMinimizerFcn.cxx.

◆ ~RooMinimizerFcn()

RooMinimizerFcn::~RooMinimizerFcn ( )
override

Definition at line 67 of file RooMinimizerFcn.cxx.

Member Function Documentation

◆ Clone()

ROOT::Math::IBaseFunctionMultiDim * RooMinimizerFcn::Clone ( ) const
overridevirtual

Clone a function.

Each derived class must implement their version of the Clone method

Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.

Definition at line 71 of file RooMinimizerFcn.cxx.

◆ DoEval()

double RooMinimizerFcn::DoEval ( const double x) const
overrideprivatevirtual

Evaluate function given the parameters in x.

Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.

Definition at line 82 of file RooMinimizerFcn.cxx.

◆ fit()

bool RooMinimizerFcn::fit ( ROOT::Fit::Fitter fitter) const
inlineoverridevirtual

Implements RooAbsMinimizerFcn.

Definition at line 52 of file RooMinimizerFcn.h.

◆ getFunctionName()

std::string RooMinimizerFcn::getFunctionName ( ) const
overridevirtual

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

Implements RooAbsMinimizerFcn.

Definition at line 129 of file RooMinimizerFcn.cxx.

◆ getFunctionTitle()

std::string RooMinimizerFcn::getFunctionTitle ( ) const
overridevirtual

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

Implements RooAbsMinimizerFcn.

Definition at line 134 of file RooMinimizerFcn.cxx.

◆ getMultiGenFcn()

ROOT::Math::IMultiGenFunction * RooMinimizerFcn::getMultiGenFcn ( )
inlineoverridevirtual

Implements RooAbsMinimizerFcn.

Definition at line 53 of file RooMinimizerFcn.h.

◆ NDim()

unsigned int RooMinimizerFcn::NDim ( ) const
inlineoverridevirtual

Retrieve the dimension of the function.

Implements ROOT::Math::IBaseFunctionMultiDimTempl< double >.

Definition at line 44 of file RooMinimizerFcn.h.

◆ setOffsetting()

void RooMinimizerFcn::setOffsetting ( bool  flag)
overridevirtual

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

Implements RooAbsMinimizerFcn.

Definition at line 139 of file RooMinimizerFcn.cxx.

◆ setOptimizeConstOnFunction()

void RooMinimizerFcn::setOptimizeConstOnFunction ( RooAbsArg::ConstOpCode  opcode,
bool  doAlsoTrackingOpt 
)
overridevirtual

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.

Implements RooAbsMinimizerFcn.

Definition at line 76 of file RooMinimizerFcn.cxx.

Member Data Documentation

◆ _funct

RooAbsReal* RooMinimizerFcn::_funct
private

Definition at line 58 of file RooMinimizerFcn.h.


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