Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
TFumili Class Reference

FUMILI minimization package

FUMILI is based on ideas, proposed by I.N. Silin [See NIM A440, 2000 (p431)]. It was converted from FORTRAN to C by Sergey Yaschenko s.yas.nosp@m.chen.nosp@m.ko@fz.nosp@m.-jue.nosp@m.lich..nosp@m.de

FUMILI is used to minimize Chi-square function or to search maximum of likelihood function.

Experimentally measured values \(F_i\) are fitted with theoretical functions \(f_i({\vec x}_i,\vec\theta\,\,)\), where \({\vec x}_i\) are coordinates, and \(\vec\theta\) – vector of parameters.

For better convergence Chi-square function has to be the following form

\[{\chi^2\over2}={1\over2}\sum^n_{i=1}\left(f_i(\vec x_i,\vec\theta\,\,)-F_i\over\sigma_i\right)^2 \tag{1} \]

where \(\sigma_i\) are errors of measured function.

The minimum condition is

\[{\partial\chi^2\over\partial\theta_i}=\sum^n_{j=1}{1\over\sigma^2_j}\cdot {\partial f_j\over\partial\theta_i}\left[f_j(\vec x_j,\vec\theta\,\,)-F_j\right]=0,\qquad i=1\ldots m\tag{2} \]

where m is the quantity of parameters.

Expanding left part of (2) over parameter increments and retaining only linear terms one gets

\[\left(\partial\chi^2\over\theta_i\right)_{\vec\theta={\vec\theta}^0} +\sum_k\left(\partial^2\chi^2\over\partial\theta_i\partial\theta_k\right)_{ \vec\theta={\vec\theta}^0}\cdot(\theta_k-\theta_k^0) = 0\tag{3} \]

Here \({\vec\theta}_0\) is some initial value of parameters. In general case:

\[{\partial^2\chi^2\over\partial\theta_i\partial\theta_k}= \sum^n_{j=1}{1\over\sigma^2_j}{\partial f_j\over\theta_i} {\partial f_j\over\theta_k} + \sum^n_{j=1}{(f_j - F_j)\over\sigma^2_j}\cdot {\partial^2f_j\over\partial\theta_i\partial\theta_k}\tag{4} \]

In FUMILI algorithm for second derivatives of Chi-square approximate expression is used when last term in (4) is discarded. It is often done, not always wittingly, and sometimes causes troubles, for example, if user wants to limit parameters with positive values by writing down \(\theta_i^2\) instead of \(\theta_i\). FUMILI will fail if one tries minimize \(\chi^2 = g^2(\vec\theta)\) where g is arbitrary function.

Approximate value is:

\[{\partial^2\chi^2\over\partial\theta_i\partial\theta_k}\approx Z_{ik}= \sum^n_{j=1}{1\over\sigma^2_j}{\partial f_j\over\theta_i} {\partial f_j\over\theta_k}\tag{5} \]

Then the equations for parameter increments are

\[\left(\partial\chi^2\over\partial\theta_i\right)_{\vec\theta={\vec\theta}^0} +\sum_k Z_{ik}\cdot(\theta_k-\theta^0_k) = 0, \qquad i=1\ldots m\tag{6} \]

Remarkable feature of algorithm is the technique for step restriction. For an initial value of parameter \({\vec\theta}^0\) a parallelepiped \(P_0\) is built with the center at \({\vec\theta}^0\) and axes parallel to coordinate axes \(\theta_i\). The lengths of parallelepiped sides along i-th axis is \(2b_i\), where \(b_i\) is such a value that the functions \(f_j(\vec\theta)\) are quasi-linear all over the parallelepiped.

FUMILI takes into account simple linear inequalities in the form:

\[\theta_i^{\rm min}\le\theta_i\le\theta^{\rm max}_i\tag{7} \]

They form parallelepiped \(P\) ( \(P_0\) may be deformed by \(P\)). Very similar step formulae are used in FUMILI for negative logarithm of the likelihood function with the same idea - linearization of function argument.

Definition at line 11 of file TFumili.h.

Public Types

enum  { kSingleKey = (1ULL << (0)) , kOverwrite = (1ULL << (1)) , kWriteDelete = (1ULL << (2)) }
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << (3)) }
enum  EStatusBits {
  kCanDelete = (1ULL << (0)) , kMustCleanup = (1ULL << (3)) , kIsReferenced = (1ULL << (4)) , kHasUUID = (1ULL << (5)) ,
  kCannotPick = (1ULL << (6)) , kNoContextMenu = (1ULL << (8)) , kInvalidObject = (1ULL << (13))
}
typedef void(* FCNFunc_t) (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)

Public Member Functions

 TFumili (Int_t maxpar=25)
 ~TFumili () override
 TFumili destructor.
void AbstractMethod (const char *method) const
 Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it.
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
void BuildArrays ()
 Allocates memory for internal arrays.
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
Double_t Chisquare (Int_t npar, Double_t *params) const override
 return a chisquare equivalent
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
void Clear (Option_t *opt="") override
 Resets all parameter names, values and errors to zero.
TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
Int_t Compare (const TObject *obj) const override
 Compare two TNamed objects.
void Copy (TObject &named) const override
 Copy this to obj.
virtual void Delete (Option_t *option="")
 Delete this object.
void DeleteArrays ()
 Deallocates memory. Called from destructor TFumili::~TFumili.
void Derivatives (Double_t *, Double_t *)
 Calculates partial derivatives of theoretical function.
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
virtual void Dump () const
 Dump contents of object on stdout.
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
Int_t Eval (Int_t &npar, Double_t *grad, Double_t &fval, Double_t *par, Int_t flag)
 Evaluate the minimisation function.
Double_t EvalTFN (Double_t *, Double_t *)
 Evaluate theoretical function.
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
Int_t ExecuteCommand (const char *command, Double_t *args, Int_t nargs) override
 Execute MINUIT commands.
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
Int_t ExecuteSetCommand (Int_t)
 Called from TFumili::ExecuteCommand in case of "SET xxx" and "SHOW xxx".
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
virtual void FitChisquare (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
 Minimization function for H1s using a Chisquare method.
virtual void FitChisquareI (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
 Minimization function for H1s using a Chisquare method.
virtual void FitLikelihood (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
 Minimization function for H1s using a Likelihood method.
virtual void FitLikelihoodI (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
 Minimization function for H1s using a Likelihood method.
void FixParameter (Int_t ipar) override
 Fixes parameter number ipar.
virtual void GetConfidenceIntervals (Int_t n, Int_t ndim, const Double_t *x, Double_t *ci, Double_t cl=0.95)
 return confidence intervals in array x of dimension ndim implemented in TFitter and TLinearFitter
virtual void GetConfidenceIntervals (TObject *obj, Double_t cl=0.95)
 return confidence intervals in TObject obj implemented in TFitter and TLinearFitter
Double_tGetCovarianceMatrix () const override
 Return a pointer to the covariance matrix.
Double_t GetCovarianceMatrixElement (Int_t i, Int_t j) const override
 Return element i,j from the covariance matrix.
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
Int_t GetErrors (Int_t ipar, Double_t &eplus, Double_t &eminus, Double_t &eparab, Double_t &globcc) const override
 Return errors after MINOs not implemented.
virtual FCNFunc_t GetFCN ()
virtual Foption_t GetFitOption () const
virtual const char * GetIconName () const
 Returns mime type name of object.
TMethodCallGetMethodCall () const
const char * GetName () const override
 Returns name of object.
Int_t GetNumberFreeParameters () const override
 Return the number of free parameters.
Int_t GetNumberTotalParameters () const override
 Return the total number of parameters (free + fixed).
virtual TObjectGetObjectFit () const
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
virtual Option_tGetOption () const
Double_t GetParameter (Int_t ipar) const override
 Return current value of parameter ipar.
Int_t GetParameter (Int_t ipar, char *name, Double_t &value, Double_t &verr, Double_t &vlow, Double_t &vhigh) const override
 Get various ipar parameter attributes:
Double_t GetParError (Int_t ipar) const override
 Return error of parameter ipar.
const char * GetParName (Int_t ipar) const override
 Return name of parameter ipar.
Double_tGetPL0 () const
Int_t GetStats (Double_t &amin, Double_t &edm, Double_t &errdef, Int_t &nvpar, Int_t &nparx) const override
 Return global fit parameters.
Double_t GetSumLog (Int_t) override
 Return Sum(log(i) i=0,n used by log-likelihood fits.
const char * GetTitle () const override
 Returns title of object.
virtual UInt_t GetUniqueID () const
 Return the unique object id.
virtual TObjectGetUserFunc () const
virtual Int_t GetXfirst () const
virtual Int_t GetXlast () const
virtual Int_t GetYfirst () const
virtual Int_t GetYlast () const
Double_tGetZ () const
virtual Int_t GetZfirst () const
virtual Int_t GetZlast () const
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
ULong_t Hash () const override
 Return hash value for this object.
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
void InvertBit (UInt_t f)
void InvertZ (Int_t)
 Inverts packed diagonal matrix Z by square-root method.
TClassIsA () const override
Bool_t IsDestructed () const
 IsDestructed.
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
Bool_t IsFixed (Int_t ipar) const override
 Return kTRUE if parameter ipar is fixed, kFALSE otherwise).
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
Bool_t IsOnHeap () const
Bool_t IsSortable () const override
Bool_t IsZombie () const
void ls (Option_t *option="") const override
 List TNamed name and title.
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
Int_t Minimize ()
 Main minimization procedure.
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
void operator delete (void *, size_t)
 Operator delete for sized deallocation.
void operator delete (void *ptr)
 Operator delete.
void operator delete (void *ptr, void *vp)
 Only called by placement new when throwing an exception.
void operator delete[] (void *, size_t)
 Operator delete [] for sized deallocation.
void operator delete[] (void *ptr)
 Operator delete [].
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
void * operator new (size_t sz)
void * operator new (size_t sz, void *vp)
void * operator new[] (size_t sz)
void * operator new[] (size_t sz, void *vp)
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
void Print (Option_t *option="") const override
 Print TNamed name and title.
void PrintResults (Int_t k, Double_t p) const override
 Prints fit results.
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
void ReleaseParameter (Int_t ipar) override
 Releases parameter number ipar.
void ResetBit (UInt_t f)
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
void SetBit (UInt_t f)
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
virtual Double_tSetCache (Int_t npoints, Int_t psize)
 Initialize the cache array npoints is the number of points to be stored (or already stored) in the cache psize is the number of elements per point.
void SetData (Double_t *, Int_t, Int_t)
 Sets pointer to data array provided by user.
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
virtual void SetFCN (void(*fcn)(Int_t &, Double_t *, Double_t &f, Double_t *, Int_t))
 To set the address of the minimization objective function called by the native compiler (see function below when called by Cling).
void SetFitMethod (const char *name) override
 ret fit method (chisquare or log-likelihood)
virtual void SetFitOption (Foption_t option)
virtual void SetName (const char *name)
 Set the name of the TNamed.
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title).
virtual void SetObjectFit (TObject *obj)
Int_t SetParameter (Int_t ipar, const char *parname, Double_t value, Double_t verr, Double_t vlow, Double_t vhigh) override
 Sets for parameter number ipar initial parameter value, name parname, initial error verr and limits vlow and vhigh.
void SetParNumber (Int_t ParNum)
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
virtual void SetUserFunc (TObject *userfunc)
virtual void SetXfirst (Int_t first)
virtual void SetXlast (Int_t last)
virtual void SetYfirst (Int_t first)
virtual void SetYlast (Int_t last)
virtual void SetZfirst (Int_t first)
virtual void SetZlast (Int_t last)
Int_t SGZ ()
 Evaluates objective function ( chi-square ), gradients and Z-matrix using data provided by user via TFumili::SetData.
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
void Streamer (TBuffer &) override
 Stream an object of class TObject.
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
Bool_t TestBit (UInt_t f) const
Int_t TestBits (UInt_t f) const
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.

Static Public Member Functions

static TClassClass ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()
static TVirtualFitterFitter (TObject *obj, Int_t maxpar=25)
 Static function returning a pointer to the current fitter.
static const char * GetDefaultFitter ()
 static: return the name of the default fitter
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
static Double_t GetErrorDef ()
 static: Return the Error Definition
static TVirtualFitterGetFitter ()
 static: return the current Fitter
static Int_t GetMaxIterations ()
 static: Return the maximum number of iterations actually max number of function calls
static Bool_t GetObjectStat ()
 Get status of object stat flag.
static Double_t GetPrecision ()
 static: Return the fit relative precision
static void SetDefaultFitter (const char *name="")
 static: set name of default fitter
static void SetDtorOnly (void *obj)
 Set destructor only flag.
static void SetErrorDef (Double_t errdef=1)
 static: Set the Error Definition (default=1) For Minuit this is the value passed with the "SET ERR" command (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html)
static void SetFitter (TVirtualFitter *fitter, Int_t maxpar=25)
 Static function to set an alternative fitter.
static void SetMaxIterations (Int_t niter=5000)
 static: Set the maximum number of function calls for the minimization algorithm For example for MIGRAD this is the maxcalls value passed as first argument (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html )
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
static void SetPrecision (Double_t prec=1e-6)
 static: Set the tolerance used in the minimization algorithm For example for MIGRAD this is tolerance value passed as second argument (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html )

Protected Types

enum  { kOnlyPrepStep = (1ULL << (3)) }

Protected Member Functions

virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
void MakeZombie ()
void SavePrimitiveNameTitle (std::ostream &out, const char *variable_name)
 Save object name and title into the output stream "out".

Static Protected Member Functions

static void SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE)
 Save object constructor in the output stream "out".
static void SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr)
 Save invocation of primitive Draw() method Skipped if option contains "nodraw" string.
static TString SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Int_t flag=0)
 Save array in the output stream "out" as vector.

Protected Attributes

Double_tfCache
 [fCacheSize] Array of points data (fNpoints*fPointSize < fCacheSize words)
Int_t fCacheSize
 Size of the fCache array.
void(* fFCN )(Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
TMethodCallfMethodCall
 Pointer to MethodCall in case of interpreted function.
TString fName
Int_t fNpoints
 Number of points to fit.
TObjectfObjectFit
 Pointer to object being fitted.
Foption_t fOption
 Struct with the fit options.
Int_t fPointSize
 Number of words per point in the cache.
TString fTitle
TObjectfUserFunc
 Pointer to user theoretical function (a TF1*).
Int_t fXfirst
 First bin on X axis.
Int_t fXlast
 Last bin on X axis.
Int_t fYfirst
 First bin on Y axis.
Int_t fYlast
 Last bin on Y axis.
Int_t fZfirst
 First bin on Z axis.
Int_t fZlast
 Last bin on Z axis.

Static Private Member Functions

static void AddToTObjectTable (TObject *)
 Private helper function which will dispatch to TObjectTable::AddObj.

Private Attributes

Double_tfA
 [fMaxParam] Fit parameter array
Double_t fAKAPPA
Double_tfAMN
 [fMaxParam] Minimum param value
Double_tfAMX
 [fMaxParam] Maximum param value
TStringfANames
 [fMaxParam] Parameter names
UInt_t fBits
 bit field status word
Double_tfCmPar
 [fMaxParam] parameters of commands
TString fCword
 Command string.
Double_tfDA
 [fMaxParam] Parameter step
Bool_t fDEBUG
 debug info
Double_tfDF
 [fMaxParam] First derivatives of theoretical function
Int_t fENDFLG
 End flag of fit.
Double_t fEPS
 fEPS - required precision of parameters. If fEPS<0 then
Double_tfEXDA
 [fNED12] experimental data poInt_ter
Double_tfGr
 [fMaxParam] Gradients of objective function
Bool_t fGRAD
 user calculated gradients
Double_t fGT
 Expected function change in next iteration.
Int_t fINDFLG [5]
 internal flags;
Int_t fLastFixed
 Last fixed parameter number.
Bool_t fLogLike
 LogLikelihood flag.
Int_t fMaxParam
Int_t fNED1
 Number of experimental vectors X=(x1,x2,...xK).
Int_t fNED12
 fNED1+fNED2
Int_t fNED2
 K - Length of vector X plus 2 (for chi2).
Int_t fNfcn
 Number of FCN calls;.
Int_t fNlimMul
 fNlimMul - after fNlimMul successful iterations permits four-fold increasing of fPL
Int_t fNlog
Int_t fNmaxIter
 fNmaxIter - maximum number of iterations
Int_t fNpar
 fNpar - number of parameters
Int_t fNstepDec
 fNstepDec - maximum number of step decreasing counter
Bool_t fNumericDerivatives
Double_tfParamError
 [fMaxParam] Parameter errors
Double_tfPL
 [fMaxParam] Limits for parameters step. If <0, then parameter is fixed
Double_tfPL0
 [fMaxParam] Step initial bounds
Double_tfR
 [fMaxParam] Correlation factors
Double_t fRP
 Precision of fit ( machine zero on CDC 6000) quite old yeh?
Double_t fS
 fS - objective function value (return)
Double_tfSumLog
 [fNlog]
UInt_t fUniqueID
 object unique identifier
Bool_t fWARN
 warnings
Double_tfZ
 [fMaxParam2] Inverse fZ0 matrix - covariance matrix
Double_tfZ0
 [fMaxParam2] Matrix of approximate second derivatives of objective function This matrix is diagonal and always contain only variable parameter's derivatives

Static Private Attributes

static Longptr_t fgDtorOnly = 0
 object for which to call dtor only (i.e. no delete)
static Bool_t fgObjectStat = kTRUE
 if true keep track of objects in TObjectTable

#include <TFumili.h>

Inheritance diagram for TFumili:
TVirtualFitter TNamed TObject

Member Typedef Documentation

◆ FCNFunc_t

typedef void(* TVirtualFitter::FCNFunc_t) (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
inherited

Definition at line 71 of file TVirtualFitter.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
kOnlyPrepStep 

Used to request that the class specific implementation of TObject::Write just prepare the objects to be ready to be written but do not actually write them into the TBuffer.

This is just for example by TBufferMerger to request that the TTree inside the file calls TTree::FlushBaskets (outside of the merging lock) and TBufferMerger will later ask for the write (inside the merging lock). To take advantage of this feature the class needs to overload TObject::Write and use this enum value accordingly. (See TTree::Write and TObject::Write) Do not use, this feature will be migrate to the Merge function (See TClass and TTree::Merge)

Definition at line 106 of file TObject.h.

◆ anonymous enum

anonymous enum
inherited
Enumerator
kSingleKey 

write collection with single key

kOverwrite 

overwrite existing object with same name

kWriteDelete 

write object, then delete previous key with same name

Definition at line 99 of file TObject.h.

◆ anonymous enum

anonymous enum
inherited
Enumerator
kIsOnHeap 

object is on heap

kNotDeleted 

object has not been deleted

kZombie 

object ctor failed

kInconsistent 

class overload Hash but does call RecursiveRemove in destructor

kBitMask 

Definition at line 89 of file TObject.h.

◆ EDeprecatedStatusBits

Enumerator
kObjInCanvas 

for backward compatibility only, use kMustCleanup

Definition at line 84 of file TObject.h.

◆ EStatusBits

enum TObject::EStatusBits
inherited
Enumerator
kCanDelete 

if object in a list can be deleted

kMustCleanup 

if object destructor must call RecursiveRemove()

kIsReferenced 

if object is referenced by a TRef or TRefArray

kHasUUID 

if object has a TUUID (its fUniqueID=UUIDNumber)

kCannotPick 

if object in a pad cannot be picked

kNoContextMenu 

if object does not want context menu

kInvalidObject 

if object ctor succeeded but object should not be used

Definition at line 70 of file TObject.h.

Constructor & Destructor Documentation

◆ TFumili()

TFumili::TFumili ( Int_t maxpar = 25)

Definition at line 130 of file TFumili.cxx.

◆ ~TFumili()

TFumili::~TFumili ( )
override

TFumili destructor.

Definition at line 218 of file TFumili.cxx.

Member Function Documentation

◆ AbstractMethod()

void TObject::AbstractMethod ( const char * method) const
inherited

Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it.

In other word, this method acts as a "runtime purely virtual" warning instead of a "compiler purely virtual" error.

Warning
This interface is a legacy function that is no longer recommended to be used by new development code.
Note
The name "AbstractMethod" does not imply that it's an abstract method in the strict C++ sense.

Definition at line 1149 of file TObject.cxx.

◆ AddToTObjectTable()

void TObject::AddToTObjectTable ( TObject * op)
staticprivateinherited

Private helper function which will dispatch to TObjectTable::AddObj.

Included here to avoid circular dependency between header files.

Definition at line 195 of file TObject.cxx.

◆ AppendPad()

void TObject::AppendPad ( Option_t * option = "")
virtualinherited

Append graphics object to current pad.

In case no current pad is set yet, create a default canvas with the name "c1".

Definition at line 204 of file TObject.cxx.

◆ Browse()

◆ BuildArrays()

void TFumili::BuildArrays ( )

Allocates memory for internal arrays.

Called by TFumili::TFumili

Definition at line 183 of file TFumili.cxx.

◆ CheckedHash()

ULong_t TObject::CheckedHash ( )
inlineinherited

Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.

The intent is for this routine to be called instead of directly calling the function Hash during "insert" operations. See TObject::HasInconsistenTObjectHash();

(*) The setup is consistent when all classes in the class hierarchy that overload TObject::Hash do call ROOT::CallRecursiveRemoveIfNeeded in their destructor. i.e. it is safe to call the Hash virtual function during the RecursiveRemove operation.

Definition at line 332 of file TObject.h.

◆ Chisquare()

Double_t TFumili::Chisquare ( Int_t npar,
Double_t * params ) const
overridevirtual

return a chisquare equivalent

Implements TVirtualFitter.

Definition at line 228 of file TFumili.cxx.

◆ Class()

TClass * TFumili::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

const char * TFumili::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

constexpr Version_t TFumili::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 114 of file TFumili.h.

◆ ClassName()

const char * TObject::ClassName ( ) const
virtualinherited

Returns name of class to which the object belongs.

Definition at line 227 of file TObject.cxx.

◆ Clear()

void TFumili::Clear ( Option_t * opt = "")
overridevirtual

Resets all parameter names, values and errors to zero.

Argument opt is ignored

NB: this procedure doesn't reset parameter limits

Implements TVirtualFitter.

Definition at line 243 of file TFumili.cxx.

◆ Clone()

TObject * TNamed::Clone ( const char * newname = "") const
overridevirtualinherited

Make a clone of an object using the Streamer facility.

If newname is specified, this will be the name of the new object.

Reimplemented from TObject.

Reimplemented in TStreamerInfo, and TTreeIndex.

Definition at line 73 of file TNamed.cxx.

◆ Compare()

Int_t TNamed::Compare ( const TObject * obj) const
overridevirtualinherited

Compare two TNamed objects.

Returns 0 when equal, -1 when this is smaller and +1 when bigger (like strcmp).

Reimplemented from TObject.

Reimplemented in TStructNodeProperty.

Definition at line 84 of file TNamed.cxx.

◆ Copy()

void TNamed::Copy ( TObject & named) const
overridevirtualinherited

Copy this to obj.

Reimplemented from TObject.

Reimplemented in TPieSlice, TProfile2D, TProfile3D, TProfile, TStyle, TSystemDirectory, TSystemFile, TText, and TXTRU.

Definition at line 93 of file TNamed.cxx.

◆ DeclFileName()

const char * TFumili::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 114 of file TFumili.h.

◆ Delete()

void TObject::Delete ( Option_t * option = "")
virtualinherited

◆ DeleteArrays()

void TFumili::DeleteArrays ( )

Deallocates memory. Called from destructor TFumili::~TFumili.

Definition at line 262 of file TFumili.cxx.

◆ Derivatives()

void TFumili::Derivatives ( Double_t * df,
Double_t * fX )

Calculates partial derivatives of theoretical function.

Input:

  • fX - vector of data point

Output:

  • DF - array of derivatives

ARITHM.F: Converted from CERNLIB

Definition at line 292 of file TFumili.cxx.

◆ DistancetoPrimitive()

◆ DoError()

void TObject::DoError ( int level,
const char * location,
const char * fmt,
va_list va ) const
protectedvirtualinherited

Interface to ErrorHandler (protected).

Reimplemented in TThread, and TTreeViewer.

Definition at line 1059 of file TObject.cxx.

◆ Draw()

◆ DrawClass()

void TObject::DrawClass ( ) const
virtualinherited

Draw class inheritance tree of the class to which this object belongs.

If a class B inherits from a class A, description of B is drawn on the right side of description of A. Member functions overridden by B are shown in class A with a blue line crossing-out the corresponding member function. The following picture is the class inheritance tree of class TPaveLabel:

Reimplemented in TGFrame, TSystemDirectory, and TSystemFile.

Definition at line 308 of file TObject.cxx.

◆ DrawClone()

TObject * TObject::DrawClone ( Option_t * option = "") const
virtualinherited

Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).

If pad was not selected - gPad will be used.

Note
For histograms, use the more specialised TH1::DrawCopy().

Reimplemented in TAxis, TCanvas, TGFrame, TSystemDirectory, and TSystemFile.

Definition at line 319 of file TObject.cxx.

◆ Dump()

void TObject::Dump ( ) const
virtualinherited

Dump contents of object on stdout.

Using the information in the object dictionary (class TClass) each data member is interpreted. If a data member is a pointer, the pointer value is printed

The following output is the Dump of a TArrow object:

fAngle 0 Arrow opening angle (degrees)
fArrowSize 0.2 Arrow Size
fOption.*fData
fX1 0.1 X of 1st point
fY1 0.15 Y of 1st point
fX2 0.67 X of 2nd point
fY2 0.83 Y of 2nd point
fUniqueID 0 object unique identifier
fBits 50331648 bit field status word
fLineColor 1 line color
fLineStyle 1 line style
fLineWidth 1 line width
fFillColor 19 fill area color
fFillStyle 1001 fill area style
#define X(type, name)
UInt_t fUniqueID
object unique identifier
Definition TObject.h:46
UInt_t fBits
bit field status word
Definition TObject.h:47
Foption_t fOption
Struct with the fit options.
TLine * line
TCanvas * style()
Definition style.C:1

Reimplemented in TClass, TCollection, TGFrame, TGPack, and TSystemFile.

Definition at line 367 of file TObject.cxx.

◆ Error()

void TObject::Error ( const char * location,
const char * fmt,
... ) const
virtualinherited

Issue error message.

Use "location" to specify the method where the error occurred. Accepts standard printf formatting arguments.

Reimplemented in TFitResult.

Definition at line 1098 of file TObject.cxx.

◆ Eval()

Int_t TFumili::Eval ( Int_t & npar,
Double_t * grad,
Double_t & fval,
Double_t * par,
Int_t flag )

Evaluate the minimisation function.

Input parameters:

  • npar: number of currently variable parameters
  • par: array of (constant and variable) parameters
  • flag: Indicates what is to be calculated
  • grad: array of gradients

Output parameters:

  • fval: The calculated function value.
  • grad: The vector of first derivatives.

The meaning of the parameters par is of course defined by the user, who uses the values of those parameters to calculate their function value. The starting values must be specified by the user.

Inside FCN user has to define Z-matrix by means TFumili::GetZ and TFumili::Derivatives, set theoretical function by means of TFumili::SetUserFunc, but first - pass number of parameters by TFumili::SetParNumber

Later values are determined by Fumili as it searches for the minimum or performs whatever analysis is requested by the user.

The default function calls the function specified in SetFCN

Definition at line 351 of file TFumili.cxx.

◆ EvalTFN()

Double_t TFumili::EvalTFN ( Double_t * ,
Double_t * X )

Evaluate theoretical function.

  • df: array of partial derivatives
  • X: vector of theoretical function argument

Definition at line 363 of file TFumili.cxx.

◆ Execute() [1/2]

void TObject::Execute ( const char * method,
const char * params,
Int_t * error = nullptr )
virtualinherited

Execute method on this object with the given parameter string, e.g.

"3.14,1,\"text\"".

Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.

Definition at line 378 of file TObject.cxx.

◆ Execute() [2/2]

void TObject::Execute ( TMethod * method,
TObjArray * params,
Int_t * error = nullptr )
virtualinherited

Execute method on this object with parameters stored in the TObjArray.

The TObjArray should contain an argv vector like:

argv[0] ... argv[n] = the list of TObjString parameters
Collectable string class.
Definition TObjString.h:28
const Int_t n
Definition legend1.C:16

Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.

Definition at line 398 of file TObject.cxx.

◆ ExecuteCommand()

Int_t TFumili::ExecuteCommand ( const char * command,
Double_t * args,
Int_t nargs )
overridevirtual

Execute MINUIT commands.

MINImize, SIMplex, MIGrad and FUMili all will call TFumili::Minimize method.

For full command list see MINUIT. Reference Manual. CERN Program Library Long Writeup D506.

Improvement and errors calculation are not yet implemented as well as Monte-Carlo seeking and minimization. Contour commands are also unsupported.

  • command : command string
  • args : array of arguments
  • nargs : number of arguments

Implements TVirtualFitter.

Definition at line 392 of file TFumili.cxx.

◆ ExecuteEvent()

◆ ExecuteSetCommand()

Int_t TFumili::ExecuteSetCommand ( Int_t nargs)

Called from TFumili::ExecuteCommand in case of "SET xxx" and "SHOW xxx".

Definition at line 559 of file TFumili.cxx.

◆ Fatal()

void TObject::Fatal ( const char * location,
const char * fmt,
... ) const
virtualinherited

Issue fatal error message.

Use "location" to specify the method where the fatal error occurred. Accepts standard printf formatting arguments.

Definition at line 1126 of file TObject.cxx.

◆ FillBuffer()

void TNamed::FillBuffer ( char *& buffer)
virtualinherited

Encode TNamed into output buffer.

Reimplemented in TDirectoryFile, TFile, TKey, TKeySQL, TKeyXML, TSQLFile, and TXMLFile.

Definition at line 103 of file TNamed.cxx.

◆ FindObject() [1/2]

TObject * TObject::FindObject ( const char * name) const
virtualinherited

Must be redefined in derived classes.

This function is typically used with TCollections, but can also be used to find an object by name inside this object.

Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.

Definition at line 425 of file TObject.cxx.

◆ FindObject() [2/2]

TObject * TObject::FindObject ( const TObject * obj) const
virtualinherited

Must be redefined in derived classes.

This function is typically used with TCollections, but can also be used to find an object inside this object.

Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.

Definition at line 435 of file TObject.cxx.

◆ FitChisquare()

void TFumili::FitChisquare ( Int_t & npar,
Double_t * gin,
Double_t & f,
Double_t * u,
Int_t flag )
virtual

Minimization function for H1s using a Chisquare method.

Default method (function evaluated at center of bin) for each point the cache contains the following info

  • 1D : bc,e,xc (bin content, error, x of center of bin)
  • 2D : bc,e,xc,yc
  • 3D : bc,e,xc,yc,zc

Definition at line 1828 of file TFumili.cxx.

◆ FitChisquareI()

void TFumili::FitChisquareI ( Int_t & npar,
Double_t * gin,
Double_t & f,
Double_t * u,
Int_t flag )
virtual

Minimization function for H1s using a Chisquare method.

The "I"ntegral method is used for each point the cache contains the following info

  • 1D : bc,e,xc,xw (bin content, error, x of center of bin, x bin width of bin)
  • 2D : bc,e,xc,xw,yc,yw
  • 3D : bc,e,xc,xw,yc,yw,zc,zw

Definition at line 1899 of file TFumili.cxx.

◆ FitLikelihood()

void TFumili::FitLikelihood ( Int_t & npar,
Double_t * gin,
Double_t & f,
Double_t * u,
Int_t flag )
virtual

Minimization function for H1s using a Likelihood method.

Basically, it forms the likelihood by determining the Poisson probability that given a number of entries in a particular bin, the fit would predict it's value. This is then done for each bin, and the sum of the logs is taken as the likelihood.

Default method (function evaluated at center of bin) for each point the cache contains the following info

  • 1D : bc,e,xc (bin content, error, x of center of bin)
  • 2D : bc,e,xc,yc
  • 3D : bc,e,xc,yc,zc

Definition at line 1974 of file TFumili.cxx.

◆ FitLikelihoodI()

void TFumili::FitLikelihoodI ( Int_t & npar,
Double_t * gin,
Double_t & f,
Double_t * u,
Int_t flag )
virtual

Minimization function for H1s using a Likelihood method.

Basically, it forms the likelihood by determining the Poisson probability that given a number of entries in a particular bin, the fit would predict it's value. This is then done for each bin, and the sum of the logs is taken as the likelihood.

The "I"ntegral method is used for each point the cache contains the following info

  • 1D : bc,e,xc,xw (bin content, error, x of center of bin, x bin width of bin)
  • 2D : bc,e,xc,xw,yc,yw
  • 3D : bc,e,xc,xw,yc,yw,zc,zw

Definition at line 2062 of file TFumili.cxx.

◆ Fitter()

TVirtualFitter * TVirtualFitter::Fitter ( TObject * obj,
Int_t maxpar = 25 )
staticinherited

Static function returning a pointer to the current fitter.

If the fitter does not exist, the default TFitter is created. Don't delete the returned fitter object, it will be re-used.

Definition at line 109 of file TVirtualFitter.cxx.

◆ FixParameter()

void TFumili::FixParameter ( Int_t ipar)
overridevirtual

Fixes parameter number ipar.

Implements TVirtualFitter.

Definition at line 775 of file TFumili.cxx.

◆ GetConfidenceIntervals() [1/2]

void TVirtualFitter::GetConfidenceIntervals ( Int_t n,
Int_t ndim,
const Double_t * x,
Double_t * ci,
Double_t cl = 0.95 )
virtualinherited

return confidence intervals in array x of dimension ndim implemented in TFitter and TLinearFitter

Reimplemented in TBackCompFitter, TFitter, and TLinearFitter.

Definition at line 135 of file TVirtualFitter.cxx.

◆ GetConfidenceIntervals() [2/2]

void TVirtualFitter::GetConfidenceIntervals ( TObject * obj,
Double_t cl = 0.95 )
virtualinherited

return confidence intervals in TObject obj implemented in TFitter and TLinearFitter

Reimplemented in TBackCompFitter, TFitter, and TLinearFitter.

Definition at line 143 of file TVirtualFitter.cxx.

◆ GetCovarianceMatrix()

Double_t * TFumili::GetCovarianceMatrix ( ) const
overridevirtual

Return a pointer to the covariance matrix.

Implements TVirtualFitter.

Definition at line 785 of file TFumili.cxx.

◆ GetCovarianceMatrixElement()

Double_t TFumili::GetCovarianceMatrixElement ( Int_t i,
Int_t j ) const
overridevirtual

Return element i,j from the covariance matrix.

Implements TVirtualFitter.

Definition at line 794 of file TFumili.cxx.

◆ GetDefaultFitter()

const char * TVirtualFitter::GetDefaultFitter ( )
staticinherited

static: return the name of the default fitter

Definition at line 150 of file TVirtualFitter.cxx.

◆ GetDrawOption()

Option_t * TObject::GetDrawOption ( ) const
virtualinherited

Get option used by the graphics system to draw this object.

Note that before calling object.GetDrawOption(), you must have called object.Draw(..) before in the current pad.

Reimplemented in TBrowser, TFitEditor, TGedFrame, TGFileBrowser, TRootBrowser, and TRootBrowserLite.

Definition at line 445 of file TObject.cxx.

◆ GetDtorOnly()

Longptr_t TObject::GetDtorOnly ( )
staticinherited

Return destructor only flag.

Definition at line 1196 of file TObject.cxx.

◆ GetErrorDef()

Double_t TVirtualFitter::GetErrorDef ( )
staticinherited

static: Return the Error Definition

Definition at line 177 of file TVirtualFitter.cxx.

◆ GetErrors()

Int_t TFumili::GetErrors ( Int_t ipar,
Double_t & eplus,
Double_t & eminus,
Double_t & eparab,
Double_t & globcc ) const
overridevirtual

Return errors after MINOs not implemented.

Implements TVirtualFitter.

Definition at line 883 of file TFumili.cxx.

◆ GetFCN()

virtual FCNFunc_t TVirtualFitter::GetFCN ( )
inlinevirtualinherited

Definition at line 72 of file TVirtualFitter.h.

◆ GetFitOption()

virtual Foption_t TVirtualFitter::GetFitOption ( ) const
inlinevirtualinherited

Definition at line 73 of file TVirtualFitter.h.

◆ GetFitter()

TVirtualFitter * TVirtualFitter::GetFitter ( )
staticinherited

static: return the current Fitter

Definition at line 159 of file TVirtualFitter.cxx.

◆ GetIconName()

const char * TObject::GetIconName ( ) const
virtualinherited

Returns mime type name of object.

Used by the TBrowser (via TGMimeTypes class). Override for class of which you would like to have different icons for objects of the same class.

Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TASImage, TBranch, TBranchElement, TGeoVolume, TGMainFrame, TKey, TMethodBrowsable, TSystemFile, and TVirtualBranchBrowsable.

Definition at line 472 of file TObject.cxx.

◆ GetMaxIterations()

Int_t TVirtualFitter::GetMaxIterations ( )
staticinherited

static: Return the maximum number of iterations actually max number of function calls

Definition at line 168 of file TVirtualFitter.cxx.

◆ GetMethodCall()

TMethodCall * TVirtualFitter::GetMethodCall ( ) const
inlineinherited

Definition at line 74 of file TVirtualFitter.h.

◆ GetName()

const char * TNamed::GetName ( ) const
inlineoverridevirtualinherited

Returns name of object.

This default method returns the class name. Classes that give objects a name should override this method.

Reimplemented from TObject.

Definition at line 49 of file TNamed.h.

◆ GetNumberFreeParameters()

Int_t TFumili::GetNumberFreeParameters ( ) const
overridevirtual

Return the number of free parameters.

Implements TVirtualFitter.

Definition at line 815 of file TFumili.cxx.

◆ GetNumberTotalParameters()

Int_t TFumili::GetNumberTotalParameters ( ) const
overridevirtual

Return the total number of parameters (free + fixed).

Implements TVirtualFitter.

Definition at line 807 of file TFumili.cxx.

◆ GetObjectFit()

virtual TObject * TVirtualFitter::GetObjectFit ( ) const
inlinevirtualinherited

Definition at line 77 of file TVirtualFitter.h.

◆ GetObjectInfo()

char * TObject::GetObjectInfo ( Int_t px,
Int_t py ) const
virtualinherited

Returns string containing info about the object at position (px,py).

This method is typically overridden by classes of which the objects can report peculiarities for different positions. Returned string will be re-used (lock in MT environment).

Reimplemented in TASImage, TAxis3D, TColorWheel, TF1, TF2, TFileDrawMap, TGeoNode, TGeoTrack, TGeoVolume, TGL5DDataSet, TGLHistPainter, TGLParametricEquation, TGLTH3Composition, TGraph, TH1, THistPainter, TNode, TPaletteAxis, TParallelCoordVar, and TVirtualHistPainter.

Definition at line 491 of file TObject.cxx.

◆ GetObjectStat()

Bool_t TObject::GetObjectStat ( )
staticinherited

Get status of object stat flag.

Definition at line 1181 of file TObject.cxx.

◆ GetOption()

virtual Option_t * TObject::GetOption ( ) const
inlinevirtualinherited

◆ GetParameter() [1/2]

Double_t TFumili::GetParameter ( Int_t ipar) const
overridevirtual

Return current value of parameter ipar.

Implements TVirtualFitter.

Definition at line 836 of file TFumili.cxx.

◆ GetParameter() [2/2]

Int_t TFumili::GetParameter ( Int_t ipar,
char * cname,
Double_t & value,
Double_t & verr,
Double_t & vlow,
Double_t & vhigh ) const
overridevirtual

Get various ipar parameter attributes:

  • cname: parameter name
  • value: parameter value
  • verr: parameter error
  • vlow: lower limit
  • vhigh: upper limit

WARNING! parname must be suitably dimensioned in the calling function.

Implements TVirtualFitter.

Definition at line 853 of file TFumili.cxx.

◆ GetParError()

Double_t TFumili::GetParError ( Int_t ipar) const
overridevirtual

Return error of parameter ipar.

Implements TVirtualFitter.

Definition at line 827 of file TFumili.cxx.

◆ GetParName()

const char * TFumili::GetParName ( Int_t ipar) const
overridevirtual

Return name of parameter ipar.

Implements TVirtualFitter.

Definition at line 873 of file TFumili.cxx.

◆ GetPL0()

Double_t * TFumili::GetPL0 ( ) const
inline

Definition at line 95 of file TFumili.h.

◆ GetPrecision()

Double_t TVirtualFitter::GetPrecision ( )
staticinherited

static: Return the fit relative precision

Definition at line 186 of file TVirtualFitter.cxx.

◆ GetStats()

Int_t TFumili::GetStats ( Double_t & amin,
Double_t & edm,
Double_t & errdef,
Int_t & nvpar,
Int_t & nparx ) const
overridevirtual

Return global fit parameters.

  • amin : chisquare
  • edm : estimated distance to minimum
  • errdef
  • nvpar : number of variable parameters
  • nparx : total number of parameters

Implements TVirtualFitter.

Definition at line 905 of file TFumili.cxx.

◆ GetSumLog()

Double_t TFumili::GetSumLog ( Int_t n)
overridevirtual

Return Sum(log(i) i=0,n used by log-likelihood fits.

Implements TVirtualFitter.

Definition at line 922 of file TFumili.cxx.

◆ GetTitle()

const char * TNamed::GetTitle ( ) const
inlineoverridevirtualinherited

Returns title of object.

This default method returns the class title (i.e. description). Classes that give objects a title should override this method.

Reimplemented from TObject.

Definition at line 50 of file TNamed.h.

◆ GetUniqueID()

UInt_t TObject::GetUniqueID ( ) const
virtualinherited

Return the unique object id.

Definition at line 480 of file TObject.cxx.

◆ GetUserFunc()

virtual TObject * TVirtualFitter::GetUserFunc ( ) const
inlinevirtualinherited

Definition at line 84 of file TVirtualFitter.h.

◆ GetXfirst()

virtual Int_t TVirtualFitter::GetXfirst ( ) const
inlinevirtualinherited

Definition at line 85 of file TVirtualFitter.h.

◆ GetXlast()

virtual Int_t TVirtualFitter::GetXlast ( ) const
inlinevirtualinherited

Definition at line 86 of file TVirtualFitter.h.

◆ GetYfirst()

virtual Int_t TVirtualFitter::GetYfirst ( ) const
inlinevirtualinherited

Definition at line 87 of file TVirtualFitter.h.

◆ GetYlast()

virtual Int_t TVirtualFitter::GetYlast ( ) const
inlinevirtualinherited

Definition at line 88 of file TVirtualFitter.h.

◆ GetZ()

Double_t * TFumili::GetZ ( ) const
inline

Definition at line 102 of file TFumili.h.

◆ GetZfirst()

virtual Int_t TVirtualFitter::GetZfirst ( ) const
inlinevirtualinherited

Definition at line 89 of file TVirtualFitter.h.

◆ GetZlast()

virtual Int_t TVirtualFitter::GetZlast ( ) const
inlinevirtualinherited

Definition at line 90 of file TVirtualFitter.h.

◆ HandleTimer()

Bool_t TObject::HandleTimer ( TTimer * timer)
virtualinherited

Execute action in response of a timer timing out.

This method must be overridden if an object has to react to timers.

Reimplemented in TGCommandPlugin, TGDNDManager, TGFileContainer, TGHtml, TGLEventHandler, TGPopupMenu, TGraphTime, TGScrollBar, TGShutter, TGTextEdit, TGTextEditor, TGTextEntry, TGTextView, TGToolTip, TGuiBldDragManager, TGWindow, and TTreeViewer.

Definition at line 516 of file TObject.cxx.

◆ Hash()

ULong_t TNamed::Hash ( ) const
inlineoverridevirtualinherited

Return hash value for this object.

Note: If this routine is overloaded in a derived class, this derived class should also add

void CallRecursiveRemoveIfNeeded(TObject &obj)
call RecursiveRemove for obj if gROOT is valid and obj.TestBit(kMustCleanup) is true.
Definition TROOT.h:406

Otherwise, when RecursiveRemove is called (by ~TObject or example) for this type of object, the transversal of THashList and THashTable containers will will have to be done without call Hash (and hence be linear rather than logarithmic complexity). You will also see warnings like

Error in <ROOT::Internal::TCheckHashRecursiveRemoveConsistency::CheckRecursiveRemove>: The class SomeName overrides
TObject::Hash but does not call TROOT::RecursiveRemove in its destructor.
ULong_t Hash() const override
Return hash value for this object.
Definition TNamed.h:51
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
Definition TObject.cxx:1098
TObject()
TObject constructor.
Definition TObject.h:259
void RecursiveRemove(TObject *obj) override
Recursively remove this object from the list of Cleanups.
Definition TROOT.cxx:2651

Reimplemented from TObject.

Definition at line 51 of file TNamed.h.

◆ HasInconsistentHash()

Bool_t TObject::HasInconsistentHash ( ) const
inlineinherited

Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.

missing call to RecursiveRemove in destructor).

Note: Since the consistency is only tested for during inserts, this routine will return true for object that have never been inserted whether or not they have a consistent setup. This has no negative side-effect as searching for the object with the right or wrong Hash will always yield a not-found answer (Since anyway no hash can be guaranteed unique, there is always a check)

Definition at line 366 of file TObject.h.

◆ Info()

void TObject::Info ( const char * location,
const char * fmt,
... ) const
virtualinherited

Issue info message.

Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.

Definition at line 1072 of file TObject.cxx.

◆ InheritsFrom() [1/2]

Bool_t TObject::InheritsFrom ( const char * classname) const
virtualinherited

Returns kTRUE if object inherits from class "classname".

Reimplemented in TClass.

Definition at line 549 of file TObject.cxx.

◆ InheritsFrom() [2/2]

Bool_t TObject::InheritsFrom ( const TClass * cl) const
virtualinherited

Returns kTRUE if object inherits from TClass cl.

Reimplemented in TClass.

Definition at line 557 of file TObject.cxx.

◆ Inspect()

void TObject::Inspect ( ) const
virtualinherited

Dump contents of this object in a graphics canvas.

Same action as Dump but in a graphical form. In addition pointers to other objects can be followed.

The following picture is the Inspect of a histogram object:

Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TGFrame, TInspectorObject, and TSystemFile.

Definition at line 570 of file TObject.cxx.

◆ InvertBit()

void TObject::InvertBit ( UInt_t f)
inlineinherited

Definition at line 206 of file TObject.h.

◆ InvertZ()

void TFumili::InvertZ ( Int_t n)

Inverts packed diagonal matrix Z by square-root method.

Matrix elements corresponding to fix parameters are removed.

  • n: number of variable parameters

Definition at line 946 of file TFumili.cxx.

◆ IsA()

TClass * TFumili::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TObject.

Definition at line 114 of file TFumili.h.

◆ IsDestructed()

Bool_t TObject::IsDestructed ( ) const
inlineinherited

IsDestructed.

Note
This function must be non-virtual as it can be used on destructed (but not yet modified) memory. This is used for example in TClonesArray to record the element that have been destructed but not deleted and thus are ready for re-use (by operator new with placement).
Returns
true if this object's destructor has been run.

Definition at line 186 of file TObject.h.

◆ IsEqual()

Bool_t TObject::IsEqual ( const TObject * obj) const
virtualinherited

Default equal comparison (objects are equal if they have the same address in memory).

More complicated classes might want to override this function.

Reimplemented in TGObject, TObjString, TPair, and TQCommand.

Definition at line 589 of file TObject.cxx.

◆ IsFixed()

Bool_t TFumili::IsFixed ( Int_t ipar) const
overridevirtual

Return kTRUE if parameter ipar is fixed, kFALSE otherwise).

Implements TVirtualFitter.

Definition at line 1061 of file TFumili.cxx.

◆ IsFolder()

◆ IsOnHeap()

Bool_t TObject::IsOnHeap ( ) const
inlineinherited

Definition at line 160 of file TObject.h.

◆ IsSortable()

Bool_t TNamed::IsSortable ( ) const
inlineoverridevirtualinherited

Reimplemented from TObject.

Reimplemented in TStructNodeProperty.

Definition at line 52 of file TNamed.h.

◆ IsZombie()

Bool_t TObject::IsZombie ( ) const
inlineinherited

Definition at line 161 of file TObject.h.

◆ ls()

void TNamed::ls ( Option_t * option = "") const
overridevirtualinherited

List TNamed name and title.

Reimplemented from TObject.

Reimplemented in ROOT::Experimental::XRooFit::xRooBrowser, TNode, TROOT, TStreamerBase, TStreamerElement, TStreamerInfo, TStreamerSTL, TTask, TText, and TVirtualStreamerInfo.

Definition at line 112 of file TNamed.cxx.

◆ MakeZombie()

void TObject::MakeZombie ( )
inlineprotectedinherited

Definition at line 55 of file TObject.h.

◆ MayNotUse()

void TObject::MayNotUse ( const char * method) const
inherited

Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).

Definition at line 1160 of file TObject.cxx.

◆ Minimize()

Int_t TFumili::Minimize ( )

Main minimization procedure.

This function is called after setting theoretical function by means of TFumili::SetUserFunc and initializing parameters. Optionally one can set FCN function (see TFumili::SetFCN and TFumili::Eval) If FCN is undefined then user has to provide data arrays by calling TFumili::SetData procedure.

TFumili::Minimize return following values:

  • 0 - fit is converged
  • -2 - function is not decreasing (or bad derivatives)
  • -3 - error estimations are infinite
  • -4 - maximum number of iterations is exceeded

Definition at line 1107 of file TFumili.cxx.

◆ Notify()

Bool_t TObject::Notify ( )
virtualinherited

This method must be overridden to handle object notification (the base implementation is no-op).

Different objects in ROOT use the Notify method for different purposes, in coordination with other objects that call this method at the appropriate time.

For example, TLeaf uses it to load class information; TBranchRef to load contents of referenced branches TBranchRef; most notably, based on Notify, TChain implements a callback mechanism to inform interested parties when it switches to a new sub-tree.

Reimplemented in h1analysis, h1analysisTreeReader, TARInterruptHandler, TASInputHandler, TASInterruptHandler, TASLogHandler, TASSigPipeHandler, TBlinkTimer, TBranchElement, TBranchRef, TBreakLineCom, TBrowserTimer, TCollection, TDelCharCom, TDelTextCom, TFileHandler, TGContainerKeyboardTimer, TGContainerScrollTimer, TGInputHandler, TGLRedrawTimer, TGTextEditHist, TGuiBldDragManagerRepeatTimer, TIdleTimer, TInsCharCom, TInsTextCom, TInterruptHandler, TLeafObject, TMessageHandler, TNotifyLink< Type >, TNotifyLink< RNoCleanupNotifierHelper >, TNotifyLink< ROOT::Detail::TBranchProxy >, TNotifyLink< TTreeReader >, TPopupDelayTimer, TProcessEventTimer, TRefTable, TRepeatTimer, TSBRepeatTimer, TSelector, TSelectorDraw, TSelectorEntries, TSignalHandler, TSingleShotCleaner, TSocketHandler, TStdExceptionHandler, TSysEvtHandler, TTermInputHandler, TThreadTimer, TTimeOutTimer, TTimer, TTipDelayTimer, TTree, TTreeFormula, TTreeFormulaManager, TTreeReader, TViewTimer, and TViewUpdateTimer.

Definition at line 618 of file TObject.cxx.

◆ Obsolete()

void TObject::Obsolete ( const char * method,
const char * asOfVers,
const char * removedFromVers ) const
inherited

Use this method to declare a method obsolete.

Specify as of which version the method is obsolete and as from which version it will be removed.

Definition at line 1169 of file TObject.cxx.

◆ operator delete() [1/3]

void TObject::operator delete ( void * ptr,
size_t size )
inherited

Operator delete for sized deallocation.

Definition at line 1234 of file TObject.cxx.

◆ operator delete() [2/3]

void TObject::operator delete ( void * ptr)
inherited

Operator delete.

Definition at line 1212 of file TObject.cxx.

◆ operator delete() [3/3]

void TObject::operator delete ( void * ptr,
void * vp )
inherited

Only called by placement new when throwing an exception.

Definition at line 1266 of file TObject.cxx.

◆ operator delete[]() [1/3]

void TObject::operator delete[] ( void * ptr,
size_t size )
inherited

Operator delete [] for sized deallocation.

Definition at line 1245 of file TObject.cxx.

◆ operator delete[]() [2/3]

void TObject::operator delete[] ( void * ptr)
inherited

Operator delete [].

Definition at line 1223 of file TObject.cxx.

◆ operator delete[]() [3/3]

void TObject::operator delete[] ( void * ptr,
void * vp )
inherited

Only called by placement new[] when throwing an exception.

Definition at line 1274 of file TObject.cxx.

◆ operator new() [1/2]

void * TObject::operator new ( size_t sz)
inlineinherited

Definition at line 189 of file TObject.h.

◆ operator new() [2/2]

void * TObject::operator new ( size_t sz,
void * vp )
inlineinherited

Definition at line 191 of file TObject.h.

◆ operator new[]() [1/2]

void * TObject::operator new[] ( size_t sz)
inlineinherited

Definition at line 190 of file TObject.h.

◆ operator new[]() [2/2]

void * TObject::operator new[] ( size_t sz,
void * vp )
inlineinherited

Definition at line 192 of file TObject.h.

◆ Paint()

void TObject::Paint ( Option_t * option = "")
virtualinherited

This method must be overridden if a class wants to paint itself.

The difference between Paint() and Draw() is that when a object draws itself it is added to the display list of the pad in which it is drawn (and automatically redrawn whenever the pad is redrawn). While paint just draws the object without adding it to the pad display list.

Reimplemented in ROOT::Experimental::RTreeMapPainter, ROOT::RGeoPainter, TAnnotation, TArrow, TASImage, TASPaletteEditor::LimitLine, TASPaletteEditor::PaintPalette, TAxis3D, TBits, TBox, TButton, TCanvas, TClassTree, TCollection, TColorWheel, TCrown, TDiamond, TDirectory, TEfficiency, TEllipse, TEveArrow, TEveCaloViz, TEveDigitSet, TEveGeoShape, TEveGeoTopNode, TEvePlot3D, TEvePointSet, TEveProjectionAxes, TEveScene, TEveShape, TEveStraightLineSet, TEveText, TEveTriangleSet, TExec, TF1, TF2, TF3, TFile, TFileDrawMap, TFrame, TGaxis, TGenerator, TGeoBoolNode, TGeoIntersection, TGeoNode, TGeoOverlap, TGeoPainter, TGeoPhysicalNode, TGeoShape, TGeoSubtraction, TGeoTrack, TGeoUnion, TGeoVGShape, TGeoVolume, TGL5DDataSet, TGLHistPainter, TGLParametricEquation, TGLTH3Composition, TGraph2D, TGraph2DPainter, TGraph, TGraphEdge, TGraphNode, TGraphPolargram, TGraphTime, TH1, THistPainter, THStack, TLatex, TLegend, TLine, TMacro, TMarker3DBox, TMarker, TMathText, TMultiGraph, TNode, TNodeDiv, TPad, TPaletteAxis, TParallelCoord, TParallelCoordRange, TParallelCoordVar, TParticle, TPave, TPaveLabel, TPaveStats, TPavesText, TPaveText, TPie, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPrimary, TRatioPlot, TScatter2D, TScatter, TShape, TSpectrum2Painter, TSpider, TSpline, TSQLFile, TStyle, TText, TTreePerfStats, TVirtualGeoPainter, TVirtualGeoTrack, TVirtualHistPainter, TVirtualPad, TWbox, and TXMLFile.

Definition at line 631 of file TObject.cxx.

◆ Pop()

void TObject::Pop ( )
virtualinherited

Pop on object drawn in a pad to the top of the display list.

I.e. it will be drawn last and on top of all other primitives.

Reimplemented in TFrame, TPad, and TVirtualPad.

Definition at line 640 of file TObject.cxx.

◆ Print()

◆ PrintResults()

void TFumili::PrintResults ( Int_t ikode,
Double_t p ) const
overridevirtual

Prints fit results.

ikode is the type of printing parameters p is function value

  • ikode = 1 - print values, errors and limits
  • ikode = 2 - print values, errors and steps
  • ikode = 3 - print values, errors, steps and derivatives
  • ikode = 4 - print only values and errors

Implements TVirtualFitter.

Definition at line 1573 of file TFumili.cxx.

◆ Read()

Int_t TObject::Read ( const char * name)
virtualinherited

Read contents of object with specified name from the current directory.

First the key with the given name is searched in the current directory, next the key buffer is deserialized into the object. The object must have been created before via the default constructor. See TObject::Write().

Reimplemented in TBuffer, TKey, TKeySQL, and TKeyXML.

Definition at line 673 of file TObject.cxx.

◆ RecursiveRemove()

◆ ReleaseParameter()

void TFumili::ReleaseParameter ( Int_t ipar)
overridevirtual

Releases parameter number ipar.

Implements TVirtualFitter.

Definition at line 1676 of file TFumili.cxx.

◆ ResetBit()

void TObject::ResetBit ( UInt_t f)
inlineinherited

Definition at line 203 of file TObject.h.

◆ SaveAs()

void TObject::SaveAs ( const char * filename = "",
Option_t * option = "" ) const
virtualinherited

Save this object in the file specified by filename.

  • if "filename" contains ".root" the object is saved in filename as root binary file.
  • if "filename" contains ".xml" the object is saved in filename as a xml ascii file.
  • if "filename" contains ".cc" the object is saved in filename as C code independent from ROOT. The code is generated via SavePrimitive(). Specific code should be implemented in each object to handle this option. Like in TF1::SavePrimitive().
  • otherwise the object is written to filename as a CINT/C++ script. The C++ code to rebuild this object is generated via SavePrimitive(). The "option" parameter is passed to SavePrimitive. By default it is an empty string. It can be used to specify the Draw option in the code generated by SavePrimitive.

    The function is available via the object context menu.

Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TClassTree, TFolder, TGeoVolume, TGObject, TGraph, TH1, TPad, TPaveClass, TSpline3, TSpline5, TSpline, TTreePerfStats, and TVirtualPad.

Definition at line 708 of file TObject.cxx.

◆ SavePrimitive()

void TObject::SavePrimitive ( std::ostream & out,
Option_t * option = "" )
virtualinherited

Save a primitive as a C++ statement(s) on output stream "out".

Reimplemented in TAnnotation, TArc, TArrow, TASImage, TAxis3D, TBox, TButton, TCanvas, TChain, TCrown, TCurlyArc, TCurlyLine, TCutG, TDiamond, TEfficiency, TEllipse, TExec, TF12, TF1, TF2, TF3, TFrame, TGaxis, TGButton, TGButtonGroup, TGCanvas, TGCheckButton, TGColorSelect, TGColumnLayout, TGComboBox, TGCompositeFrame, TGContainer, TGDockableFrame, TGDoubleHSlider, TGDoubleVSlider, TGedMarkerSelect, TGedPatternSelect, TGeoArb8, TGeoBBox, TGeoBoolNode, TGeoCombiTrans, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoCtub, TGeoDecayChannel, TGeoElementRN, TGeoEltu, TGeoGtra, TGeoHalfSpace, TGeoHMatrix, TGeoHype, TGeoIdentity, TGeoIntersection, TGeoMaterial, TGeoMedium, TGeoMixture, TGeoPara, TGeoParaboloid, TGeoPatternCylPhi, TGeoPatternCylR, TGeoPatternParaX, TGeoPatternParaY, TGeoPatternParaZ, TGeoPatternSphPhi, TGeoPatternSphR, TGeoPatternSphTheta, TGeoPatternTrapZ, TGeoPatternX, TGeoPatternY, TGeoPatternZ, TGeoPcon, TGeoPgon, TGeoRotation, TGeoScaledShape, TGeoShapeAssembly, TGeoSphere, TGeoSubtraction, TGeoTessellated, TGeoTorus, TGeoTranslation, TGeoTrap, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, TGeoUnion, TGeoVolume, TGeoXtru, TGFileContainer, TGFont, TGFrame, TGFSComboBox, TGGC, TGGroupFrame, TGHButtonGroup, TGHorizontal3DLine, TGHorizontalFrame, TGHorizontalLayout, TGHProgressBar, TGHScrollBar, TGHSlider, TGHSplitter, TGHtml, TGIcon, TGLabel, TGLayoutHints, TGLineStyleComboBox, TGLineWidthComboBox, TGListBox, TGListDetailsLayout, TGListLayout, TGListTree, TGListView, TGLVContainer, TGMainFrame, TGMatrixLayout, TGMdiFrame, TGMdiMainFrame, TGMdiMenuBar, TGMenuBar, TGMenuTitle, TGNumberEntry, TGNumberEntryField, TGPictureButton, TGPopupMenu, TGProgressBar, TGRadioButton, TGraph2D, TGraph2DAsymmErrors, TGraph2DErrors, TGraph, TGraphAsymmErrors, TGraphBentErrors, TGraphEdge, TGraphErrors, TGraphMultiErrors, TGraphNode, TGraphPolar, TGraphPolargram, TGraphStruct, TGroupButton, TGRowLayout, TGShapedFrame, TGShutter, TGShutterItem, TGSplitFrame, TGStatusBar, TGTab, TGTabLayout, TGTableLayout, TGTableLayoutHints, TGTextButton, TGTextEdit, TGTextEntry, TGTextLBEntry, TGTextView, TGTileLayout, TGToolBar, TGTransientFrame, TGTripleHSlider, TGTripleVSlider, TGVButtonGroup, TGVertical3DLine, TGVerticalFrame, TGVerticalLayout, TGVFileSplitter, TGVProgressBar, TGVScrollBar, TGVSlider, TGVSplitter, TGXYLayout, TGXYLayoutHints, TH1, TH2Poly, THelix, THStack, TLatex, TLegend, TLine, TMacro, TMarker3DBox, TMarker, TMathText, TMultiGraph, TPad, TPaletteAxis, TParallelCoord, TParallelCoordVar, TPave, TPaveClass, TPaveLabel, TPaveStats, TPavesText, TPaveText, TPie, TPieSlice, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TProfile2D, TProfile3D, TProfile, TRootContainer, TRootEmbeddedCanvas, TScatter2D, TScatter, TSlider, TSliderBox, TSpline3, TSpline5, TStyle, TText, TTreePerfStats, and TWbox.

Definition at line 858 of file TObject.cxx.

◆ SavePrimitiveConstructor()

void TObject::SavePrimitiveConstructor ( std::ostream & out,
TClass * cl,
const char * variable_name,
const char * constructor_agrs = "",
Bool_t empty_line = kTRUE )
staticprotectedinherited

Save object constructor in the output stream "out".

Can be used as first statement when implementing SavePrimitive() method for the object

Definition at line 777 of file TObject.cxx.

◆ SavePrimitiveDraw()

void TObject::SavePrimitiveDraw ( std::ostream & out,
const char * variable_name,
Option_t * option = nullptr )
staticprotectedinherited

Save invocation of primitive Draw() method Skipped if option contains "nodraw" string.

Definition at line 845 of file TObject.cxx.

◆ SavePrimitiveNameTitle()

void TNamed::SavePrimitiveNameTitle ( std::ostream & out,
const char * variable_name )
protectedinherited

Save object name and title into the output stream "out".

Definition at line 135 of file TNamed.cxx.

◆ SavePrimitiveVector()

TString TObject::SavePrimitiveVector ( std::ostream & out,
const char * prefix,
Int_t len,
Double_t * arr,
Int_t flag = 0 )
staticprotectedinherited

Save array in the output stream "out" as vector.

Create unique variable name based on prefix value Returns name of vector which can be used in constructor or in other places of C++ code If flag === kTRUE, just add empty line If flag === 111, check if array is empty and return nullptr or <vectorname>.data()

Definition at line 796 of file TObject.cxx.

◆ SetBit() [1/2]

void TObject::SetBit ( UInt_t f)
inlineinherited

Definition at line 202 of file TObject.h.

◆ SetBit() [2/2]

void TObject::SetBit ( UInt_t f,
Bool_t set )
inherited

Set or unset the user status bits as specified in f.

Definition at line 888 of file TObject.cxx.

◆ SetCache()

Double_t * TVirtualFitter::SetCache ( Int_t npoints,
Int_t psize )
virtualinherited

Initialize the cache array npoints is the number of points to be stored (or already stored) in the cache psize is the number of elements per point.

if (npoints*psize > fCacheSize) the existing cache is deleted and a new array is created. The function returns a pointer to the cache

Definition at line 231 of file TVirtualFitter.cxx.

◆ SetData()

void TFumili::SetData ( Double_t * exdata,
Int_t numpoints,
Int_t vecsize )

Sets pointer to data array provided by user.

Necessary if SetFCN is not called.

  • numpoints: number of experimental points
  • vecsize: size of data point vector + 2 (for N-dimensional fit vecsize=N+2)
  • exdata: data array with following format
    • exdata[0] = ExpValue_0 - experimental data value number 0
    • exdata[1] = ExpSigma_0 - error of value number 0
    • exdata[2] = X_0[0]
    • exdata[3] = X_0[1]
    • exdata[vecsize-1] = X_0[vecsize-3]
    • exdata[vecsize] = ExpValue_1
    • exdata[vecsize+1] = ExpSigma_1
    • exdata[vecsize+2] = X_1[0]
    • exdata[vecsize*(numpoints-1)] = ExpValue_(numpoints-1)
    • exdata[vecsize*numpoints-1] = X_(numpoints-1)[vecsize-3]

Definition at line 1706 of file TFumili.cxx.

◆ SetDefaultFitter()

void TVirtualFitter::SetDefaultFitter ( const char * name = "")
staticinherited

static: set name of default fitter

Definition at line 195 of file TVirtualFitter.cxx.

◆ SetDrawOption()

void TObject::SetDrawOption ( Option_t * option = "")
virtualinherited

Set drawing option for object.

This option only affects the drawing style and is stored in the option field of the TObjOptLink supporting a TPad's primitive list (TList). Note that it does not make sense to call object.SetDrawOption(option) before having called object.Draw().

Reimplemented in RooPlot, TAxis, TBrowser, TGedFrame, TGFrame, TPad, TPaveStats, TRootBrowserLite, TSystemDirectory, and TSystemFile.

Definition at line 871 of file TObject.cxx.

◆ SetDtorOnly()

void TObject::SetDtorOnly ( void * obj)
staticinherited

Set destructor only flag.

Definition at line 1204 of file TObject.cxx.

◆ SetErrorDef()

void TVirtualFitter::SetErrorDef ( Double_t errdef = 1)
staticinherited

static: Set the Error Definition (default=1) For Minuit this is the value passed with the "SET ERR" command (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html)

Definition at line 258 of file TVirtualFitter.cxx.

◆ SetFCN()

void TVirtualFitter::SetFCN ( void(* fcn )(Int_t &, Double_t *, Double_t &f, Double_t *, Int_t))
virtualinherited

To set the address of the minimization objective function called by the native compiler (see function below when called by Cling).

Reimplemented in TBackCompFitter, and TFitter.

Definition at line 217 of file TVirtualFitter.cxx.

◆ SetFitMethod()

void TFumili::SetFitMethod ( const char * name)
overridevirtual

ret fit method (chisquare or log-likelihood)

Implements TVirtualFitter.

Definition at line 1718 of file TFumili.cxx.

◆ SetFitOption()

virtual void TVirtualFitter::SetFitOption ( Foption_t option)
inlinevirtualinherited

Definition at line 97 of file TVirtualFitter.h.

◆ SetFitter()

void TVirtualFitter::SetFitter ( TVirtualFitter * fitter,
Int_t maxpar = 25 )
staticinherited

Static function to set an alternative fitter.

Definition at line 207 of file TVirtualFitter.cxx.

◆ SetMaxIterations()

void TVirtualFitter::SetMaxIterations ( Int_t niter = 5000)
staticinherited

static: Set the maximum number of function calls for the minimization algorithm For example for MIGRAD this is the maxcalls value passed as first argument (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html )

Definition at line 248 of file TVirtualFitter.cxx.

◆ SetName()

void TNamed::SetName ( const char * name)
virtualinherited

Set the name of the TNamed.

WARNING: if the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.

Reimplemented in RooAbsArg, RooAbsData, RooDataHist, RooDataSet, RooFitResult, RooPlot, ROOT::Experimental::XRooFit::xRooNode, TChain, TColor, TDirectory, TEfficiency, TEventList, TEveScene, TFormula, TGraph2D, TGraph, TH1, TNode, TRotMatrix, TShape, TSystemDirectory, TSystemFile, and TTree.

Definition at line 149 of file TNamed.cxx.

◆ SetNameTitle()

void TNamed::SetNameTitle ( const char * name,
const char * title )
virtualinherited

Set all the TNamed parameters (name and title).

WARNING: if the name is changed and the object is a member of a THashTable or THashList container the container must be Rehash()'ed after SetName(). For example the list of objects in the current directory is a THashList.

Reimplemented in RooAbsArg, RooAbsData, RooDataHist, RooDataSet, RooFitResult, RooPlot, TContextMenu, TGraph2D, TGraph, TH1, and TNode.

Definition at line 163 of file TNamed.cxx.

◆ SetObjectFit()

virtual void TVirtualFitter::SetObjectFit ( TObject * obj)
inlinevirtualinherited

Definition at line 98 of file TVirtualFitter.h.

◆ SetObjectStat()

void TObject::SetObjectStat ( Bool_t stat)
staticinherited

Turn on/off tracking of objects in the TObjectTable.

Definition at line 1188 of file TObject.cxx.

◆ SetParameter()

Int_t TFumili::SetParameter ( Int_t ipar,
const char * parname,
Double_t value,
Double_t verr,
Double_t vlow,
Double_t vhigh )
overridevirtual

Sets for parameter number ipar initial parameter value, name parname, initial error verr and limits vlow and vhigh.

  • If vlow = vhigh but not equal to zero, parameter will be fixed.
  • If vlow = vhigh = 0, parameter is released and its limits are discarded

Implements TVirtualFitter.

Definition at line 1731 of file TFumili.cxx.

◆ SetParNumber()

void TFumili::SetParNumber ( Int_t ParNum)

Definition at line 169 of file TFumili.cxx.

◆ SetPrecision()

void TVirtualFitter::SetPrecision ( Double_t prec = 1e-6)
staticinherited

static: Set the tolerance used in the minimization algorithm For example for MIGRAD this is tolerance value passed as second argument (see https://cern-tex.web.cern.ch/cern-tex/minuit/node18.html )

Definition at line 273 of file TVirtualFitter.cxx.

◆ SetTitle()

void TNamed::SetTitle ( const char * title = "")
virtualinherited

◆ SetUniqueID()

void TObject::SetUniqueID ( UInt_t uid)
virtualinherited

Set the unique object id.

Definition at line 899 of file TObject.cxx.

◆ SetUserFunc()

virtual void TVirtualFitter::SetUserFunc ( TObject * userfunc)
inlinevirtualinherited

Definition at line 100 of file TVirtualFitter.h.

◆ SetXfirst()

virtual void TVirtualFitter::SetXfirst ( Int_t first)
inlinevirtualinherited

Definition at line 101 of file TVirtualFitter.h.

◆ SetXlast()

virtual void TVirtualFitter::SetXlast ( Int_t last)
inlinevirtualinherited

Definition at line 102 of file TVirtualFitter.h.

◆ SetYfirst()

virtual void TVirtualFitter::SetYfirst ( Int_t first)
inlinevirtualinherited

Definition at line 103 of file TVirtualFitter.h.

◆ SetYlast()

virtual void TVirtualFitter::SetYlast ( Int_t last)
inlinevirtualinherited

Definition at line 104 of file TVirtualFitter.h.

◆ SetZfirst()

virtual void TVirtualFitter::SetZfirst ( Int_t first)
inlinevirtualinherited

Definition at line 105 of file TVirtualFitter.h.

◆ SetZlast()

virtual void TVirtualFitter::SetZlast ( Int_t last)
inlinevirtualinherited

Definition at line 106 of file TVirtualFitter.h.

◆ SGZ()

Int_t TFumili::SGZ ( )

Evaluates objective function ( chi-square ), gradients and Z-matrix using data provided by user via TFumili::SetData.

Definition at line 1760 of file TFumili.cxx.

◆ Sizeof()

Int_t TNamed::Sizeof ( ) const
virtualinherited

Return size of the TNamed part of the TObject.

Reimplemented in TDirectory, TDirectoryFile, TFile, TKey, TSQLFile, and TXMLFile.

Definition at line 182 of file TNamed.cxx.

◆ Streamer()

void TFumili::Streamer ( TBuffer & R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TObject.

◆ StreamerNVirtual()

void TFumili::StreamerNVirtual ( TBuffer & ClassDef_StreamerNVirtual_b)
inline

Definition at line 114 of file TFumili.h.

◆ SysError()

void TObject::SysError ( const char * location,
const char * fmt,
... ) const
virtualinherited

Issue system error message.

Use "location" to specify the method where the system error occurred. Accepts standard printf formatting arguments.

Definition at line 1112 of file TObject.cxx.

◆ TestBit()

Bool_t TObject::TestBit ( UInt_t f) const
inlineinherited

Definition at line 204 of file TObject.h.

◆ TestBits()

Int_t TObject::TestBits ( UInt_t f) const
inlineinherited

Definition at line 205 of file TObject.h.

◆ UseCurrentStyle()

void TObject::UseCurrentStyle ( )
virtualinherited

Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.

Reimplemented in TAxis3D, TCanvas, TFrame, TGraph, TH1, TPad, TPaveStats, TPaveText, and TTree.

Definition at line 909 of file TObject.cxx.

◆ Warning()

void TObject::Warning ( const char * location,
const char * fmt,
... ) const
virtualinherited

Issue warning message.

Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.

Definition at line 1084 of file TObject.cxx.

◆ Write() [1/2]

Int_t TObject::Write ( const char * name = nullptr,
Int_t option = 0,
Int_t bufsize = 0 )
virtualinherited

Write this object to the current directory.

For more see the const version of this method.

Reimplemented in ROOT::TBufferMergerFile, TBuffer, TCollection, TDirectory, TDirectoryFile, TFile, TMap, TParallelMergingFile, TSQLFile, TTree, and TXMLFile.

Definition at line 989 of file TObject.cxx.

◆ Write() [2/2]

Int_t TObject::Write ( const char * name = nullptr,
Int_t option = 0,
Int_t bufsize = 0 ) const
virtualinherited

Write this object to the current directory.

The data structure corresponding to this object is serialized. The corresponding buffer is written to the current directory with an associated key with name "name".

Writing an object to a file involves the following steps:

  • Creation of a support TKey object in the current directory. The TKey object creates a TBuffer object.
  • The TBuffer object is filled via the class::Streamer function.
  • If the file is compressed (default) a second buffer is created to hold the compressed buffer.
  • Reservation of the corresponding space in the file by looking in the TFree list of free blocks of the file.
  • The buffer is written to the file.

Bufsize can be given to force a given buffer size to write this object. By default, the buffersize will be taken from the average buffer size of all objects written to the current file so far.

If a name is specified, it will be the name of the key. If name is not given, the name of the key will be the name as returned by GetName().

The option can be a combination of: kSingleKey, kOverwrite or kWriteDelete Using the kOverwrite option a previous key with the same name is overwritten. The previous key is deleted before writing the new object. Using the kWriteDelete option a previous key with the same name is deleted only after the new object has been written. This option is safer than kOverwrite but it is slower. NOTE: Neither kOverwrite nor kWriteDelete reduces the size of a TFile– the space is simply freed up to be overwritten; in the case of a TTree, it is more complicated. If one opens a TTree, appends some entries, then writes it out, the behaviour is effectively the same. If, however, one creates a new TTree and writes it out in this way, only the metadata is replaced, effectively making the old data invisible without deleting it. TTree::Delete() can be used to mark all disk space occupied by a TTree as free before overwriting its metadata this way. The kSingleKey option is only used by TCollection::Write() to write a container with a single key instead of each object in the container with its own key.

An object is read from the file into memory via TKey::Read() or via TObject::Read().

The function returns the total number of bytes written to the file. It returns 0 if the object cannot be written.

Reimplemented in TBuffer, TCollection, TDirectory, TDirectoryFile, TFile, TMap, TParallelMergingFile, TSQLFile, TTree, and TXMLFile.

Definition at line 964 of file TObject.cxx.

Member Data Documentation

◆ fA

Double_t* TFumili::fA
private

[fMaxParam] Fit parameter array

Definition at line 44 of file TFumili.h.

◆ fAKAPPA

Double_t TFumili::fAKAPPA
private

Definition at line 60 of file TFumili.h.

◆ fAMN

Double_t* TFumili::fAMN
private

[fMaxParam] Minimum param value

Definition at line 51 of file TFumili.h.

◆ fAMX

Double_t* TFumili::fAMX
private

[fMaxParam] Maximum param value

Definition at line 50 of file TFumili.h.

◆ fANames

TString* TFumili::fANames
private

[fMaxParam] Parameter names

Definition at line 62 of file TFumili.h.

◆ fBits

UInt_t TObject::fBits
privateinherited

bit field status word

Definition at line 47 of file TObject.h.

◆ fCache

Double_t* TVirtualFitter::fCache
protectedinherited

[fCacheSize] Array of points data (fNpoints*fPointSize < fCacheSize words)

Definition at line 42 of file TVirtualFitter.h.

◆ fCacheSize

Int_t TVirtualFitter::fCacheSize
protectedinherited

Size of the fCache array.

Definition at line 41 of file TVirtualFitter.h.

◆ fCmPar

Double_t* TFumili::fCmPar
private

[fMaxParam] parameters of commands

Definition at line 55 of file TFumili.h.

◆ fCword

TString TFumili::fCword
private

Command string.

Definition at line 63 of file TFumili.h.

◆ fDA

Double_t* TFumili::fDA
private

[fMaxParam] Parameter step

Definition at line 49 of file TFumili.h.

◆ fDEBUG

Bool_t TFumili::fDEBUG
private

debug info

Definition at line 30 of file TFumili.h.

◆ fDF

Double_t* TFumili::fDF
private

[fMaxParam] First derivatives of theoretical function

Definition at line 54 of file TFumili.h.

◆ fENDFLG

Int_t TFumili::fENDFLG
private

End flag of fit.

Definition at line 24 of file TFumili.h.

◆ fEPS

Double_t TFumili::fEPS
private

fEPS - required precision of parameters. If fEPS<0 then

Definition at line 58 of file TFumili.h.

◆ fEXDA

Double_t* TFumili::fEXDA
private

[fNED12] experimental data poInt_ter

Definition at line 41 of file TFumili.h.

◆ fFCN

void(* TVirtualFitter::fFCN) (Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag)
protectedinherited

Definition at line 46 of file TVirtualFitter.h.

◆ fgDtorOnly

Longptr_t TObject::fgDtorOnly = 0
staticprivateinherited

object for which to call dtor only (i.e. no delete)

Definition at line 49 of file TObject.h.

◆ fgObjectStat

Bool_t TObject::fgObjectStat = kTRUE
staticprivateinherited

if true keep track of objects in TObjectTable

Definition at line 50 of file TObject.h.

◆ fGr

Double_t* TFumili::fGr
private

[fMaxParam] Gradients of objective function

Definition at line 38 of file TFumili.h.

◆ fGRAD

Bool_t TFumili::fGRAD
private

user calculated gradients

Definition at line 28 of file TFumili.h.

◆ fGT

Double_t TFumili::fGT
private

Expected function change in next iteration.

Definition at line 61 of file TFumili.h.

◆ fINDFLG

Int_t TFumili::fINDFLG[5]
private

internal flags;

Definition at line 25 of file TFumili.h.

◆ fLastFixed

Int_t TFumili::fLastFixed
private

Last fixed parameter number.

Definition at line 23 of file TFumili.h.

◆ fLogLike

Bool_t TFumili::fLogLike
private

LogLikelihood flag.

Definition at line 31 of file TFumili.h.

◆ fMaxParam

Int_t TFumili::fMaxParam
private

Definition at line 13 of file TFumili.h.

◆ fMethodCall

TMethodCall* TVirtualFitter::fMethodCall
protectedinherited

Pointer to MethodCall in case of interpreted function.

Definition at line 45 of file TVirtualFitter.h.

◆ fName

TString TNamed::fName
protectedinherited

Definition at line 32 of file TNamed.h.

◆ fNED1

Int_t TFumili::fNED1
private

Number of experimental vectors X=(x1,x2,...xK).

Definition at line 16 of file TFumili.h.

◆ fNED12

Int_t TFumili::fNED12
private

fNED1+fNED2

Definition at line 18 of file TFumili.h.

◆ fNED2

Int_t TFumili::fNED2
private

K - Length of vector X plus 2 (for chi2).

Definition at line 17 of file TFumili.h.

◆ fNfcn

Int_t TFumili::fNfcn
private

Number of FCN calls;.

Definition at line 15 of file TFumili.h.

◆ fNlimMul

Int_t TFumili::fNlimMul
private

fNlimMul - after fNlimMul successful iterations permits four-fold increasing of fPL

Definition at line 21 of file TFumili.h.

◆ fNlog

Int_t TFumili::fNlog
private

Definition at line 14 of file TFumili.h.

◆ fNmaxIter

Int_t TFumili::fNmaxIter
private

fNmaxIter - maximum number of iterations

Definition at line 22 of file TFumili.h.

◆ fNpar

Int_t TFumili::fNpar
private

fNpar - number of parameters

Definition at line 19 of file TFumili.h.

◆ fNpoints

Int_t TVirtualFitter::fNpoints
protectedinherited

Number of points to fit.

Definition at line 39 of file TVirtualFitter.h.

◆ fNstepDec

Int_t TFumili::fNstepDec
private

fNstepDec - maximum number of step decreasing counter

Definition at line 20 of file TFumili.h.

◆ fNumericDerivatives

Bool_t TFumili::fNumericDerivatives
private

Definition at line 32 of file TFumili.h.

◆ fObjectFit

TObject* TVirtualFitter::fObjectFit
protectedinherited

Pointer to object being fitted.

Definition at line 43 of file TVirtualFitter.h.

◆ fOption

Foption_t TVirtualFitter::fOption
protectedinherited

Struct with the fit options.

Definition at line 32 of file TVirtualFitter.h.

◆ fParamError

Double_t* TFumili::fParamError
private

[fMaxParam] Parameter errors

Definition at line 39 of file TFumili.h.

◆ fPL

Double_t* TFumili::fPL
private

[fMaxParam] Limits for parameters step. If <0, then parameter is fixed

Definition at line 46 of file TFumili.h.

◆ fPL0

Double_t* TFumili::fPL0
private

[fMaxParam] Step initial bounds

Definition at line 45 of file TFumili.h.

◆ fPointSize

Int_t TVirtualFitter::fPointSize
protectedinherited

Number of words per point in the cache.

Definition at line 40 of file TVirtualFitter.h.

◆ fR

Double_t* TFumili::fR
private

[fMaxParam] Correlation factors

Definition at line 52 of file TFumili.h.

◆ fRP

Double_t TFumili::fRP
private

Precision of fit ( machine zero on CDC 6000) quite old yeh?

Definition at line 59 of file TFumili.h.

◆ fS

Double_t TFumili::fS
private

fS - objective function value (return)

Definition at line 57 of file TFumili.h.

◆ fSumLog

Double_t* TFumili::fSumLog
private

[fNlog]

Definition at line 40 of file TFumili.h.

◆ fTitle

TString TNamed::fTitle
protectedinherited

Definition at line 33 of file TNamed.h.

◆ fUniqueID

UInt_t TObject::fUniqueID
privateinherited

object unique identifier

Definition at line 46 of file TObject.h.

◆ fUserFunc

TObject* TVirtualFitter::fUserFunc
protectedinherited

Pointer to user theoretical function (a TF1*).

Definition at line 44 of file TVirtualFitter.h.

◆ fWARN

Bool_t TFumili::fWARN
private

warnings

Definition at line 29 of file TFumili.h.

◆ fXfirst

Int_t TVirtualFitter::fXfirst
protectedinherited

First bin on X axis.

Definition at line 33 of file TVirtualFitter.h.

◆ fXlast

Int_t TVirtualFitter::fXlast
protectedinherited

Last bin on X axis.

Definition at line 34 of file TVirtualFitter.h.

◆ fYfirst

Int_t TVirtualFitter::fYfirst
protectedinherited

First bin on Y axis.

Definition at line 35 of file TVirtualFitter.h.

◆ fYlast

Int_t TVirtualFitter::fYlast
protectedinherited

Last bin on Y axis.

Definition at line 36 of file TVirtualFitter.h.

◆ fZ

Double_t* TFumili::fZ
private

[fMaxParam2] Inverse fZ0 matrix - covariance matrix

Definition at line 37 of file TFumili.h.

◆ fZ0

Double_t* TFumili::fZ0
private

[fMaxParam2] Matrix of approximate second derivatives of objective function This matrix is diagonal and always contain only variable parameter's derivatives

Definition at line 34 of file TFumili.h.

◆ fZfirst

Int_t TVirtualFitter::fZfirst
protectedinherited

First bin on Z axis.

Definition at line 37 of file TVirtualFitter.h.

◆ fZlast

Int_t TVirtualFitter::fZlast
protectedinherited

Last bin on Z axis.

Definition at line 38 of file TVirtualFitter.h.


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