library: libCore #include "TVirtualFitter.h"

# TVirtualFitter

class description - source file - inheritance tree (.pdf)

## class TVirtualFitter : public TNamed

| Inheritance Chart:
`TObject`
| <- | `TNamed`
| <- | `TVirtualFitter` |
<- |
`TFitter` |
`TFumili` |
`TLinearFitter` |

This is an abstract class, constructors will not be documented.
Look at the header to check for available constructors.

        public:

                         virtual ~TVirtualFitter()
                virtual Double_t Chisquare(Int_t npar, Double_t* params) const
                  static TClass* Class()
                    virtual void Clear(Option_t* option = "")
                   virtual Int_t ExecuteCommand(const char* command, Double_t* args, Int_t nargs)
          static TVirtualFitter* Fitter(TObject* obj, Int_t maxpar = 25)
                    virtual void FixParameter(Int_t ipar)
               virtual Double_t* GetCovarianceMatrix() const
                virtual Double_t GetCovarianceMatrixElement(Int_t i, Int_t j) const
              static const char* GetDefaultFitter() const
                 static Double_t GetErrorDef()
                   virtual Int_t GetErrors(Int_t ipar, Double_t& eplus, Double_t& eminus, Double_t& eparab, Double_t& globcc) const
               virtual Foption_t GetFitOption() const
          static TVirtualFitter* GetFitter()
                    static Int_t GetMaxIterations()
                    TMethodCall* GetMethodCall() const
                   virtual Int_t GetNumberFreeParameters() const
                   virtual Int_t GetNumberTotalParameters() const
                virtual TObject* GetObjectFit() const
                virtual Double_t GetParameter(Int_t ipar) const
                   virtual Int_t GetParameter(Int_t ipar, char* name, Double_t& value, Double_t& verr, Double_t& vlow, Double_t& vhigh) const
                virtual Double_t GetParError(Int_t ipar) const
                 static Double_t GetPrecision()
                   virtual Int_t GetStats(Double_t& amin, Double_t& edm, Double_t& errdef, Int_t& nvpar, Int_t& nparx) const
                virtual Double_t GetSumLog(Int_t i)
                virtual TObject* GetUserFunc() const
                   virtual Int_t GetXfirst() const
                   virtual Int_t GetXlast() const
                   virtual Int_t GetYfirst() const
                   virtual Int_t GetYlast() const
                   virtual Int_t GetZfirst() const
                   virtual Int_t GetZlast() const
                 virtual TClass* IsA() const
                  virtual Bool_t IsFixed(Int_t ipar) const
                 TVirtualFitter& operator=(const TVirtualFitter&)
                    virtual void PrintResults(Int_t level, Double_t amin) const
                    virtual void ReleaseParameter(Int_t ipar)
                     static void SetDefaultFitter(const char* name = "")
                     static void SetErrorDef(Double_t errdef = 1)
                    virtual void SetFCN(void* fcn)
                    virtual void SetFCN(void (*)(Int_t&, Double_t*, Double_t&f, Double_t*, Int_t) fcn)
                    virtual void SetFitMethod(const char* name)
                    virtual void SetFitOption(Foption_t option)
                     static void SetFitter(TVirtualFitter* fitter, Int_t maxpar = 25)
                     static void SetMaxIterations(Int_t niter = 5000)
                    virtual void SetObjectFit(TObject* obj)
                   virtual Int_t SetParameter(Int_t ipar, const char* parname, Double_t value, Double_t verr, Double_t vlow, Double_t vhigh)
                     static void SetPrecision(Double_t prec = 1e-6)
                    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)
                    virtual void ShowMembers(TMemberInspector& insp, char* parent)
                    virtual void Streamer(TBuffer& b)
                            void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

                       Foption_t fOption      struct with the fit options
                           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
                        TObject* fObjectFit   pointer to object being fitted
                        TObject* fUserFunc    pointer to user theoretical function (a TF1*)
                    TMethodCall* fMethodCall  Pointer to MethodCall in case of interpreted function
                            void fFCN
          static TVirtualFitter* fgFitter     Current fitter (default TFitter)
                    static Int_t fgMaxpar     Maximum number of fit parameters for current fitter
                    static Int_t fgMaxiter    Maximum number of iterations
                 static Double_t fgErrorDef   Error definition (default=1)
                 static Double_t fgPrecision  maximum precision
                  static TString fgDefault    name of the default fitter ("Minuit","Fumili",etc)

## Class Description

~TVirtualFitter()

     Cleanup virtual fitter.

TVirtualFitter* Fitter(TObject *obj, Int_t maxpar)

     Static function returning a pointer to the current fitter.
     If the fitter does not exist, the default TFitter is created.

const char* GetDefaultFitter()

     static: return the name of the default fitter

TVirtualFitter* GetFitter()

     static: return the current Fitter

Int_t GetMaxIterations()

     static: Return the maximum number of iterations

Double_t GetErrorDef()

     static: Return the Error Definition

Double_t GetPrecision()

     static: Return the fit relative precision

void SetDefaultFitter(const char *name)

     static: set name of default fitter

void SetFitter(TVirtualFitter *fitter, Int_t maxpar)

     Static function to set an alternative fitter

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 CINT)

void SetFCN(void *fcn)

      To set the address of the minimization objective function

         this function is called by CINT instead of the function above

void SetMaxIterations(Int_t niter)

     static: Set the maximum number of iterations

void SetErrorDef(Double_t errdef)

     static: Set the Error Definition (default=1)

void SetPrecision(Double_t prec)

     static: Set the fit relative precision

### Inline Functions

                   Double_t Chisquare(Int_t npar, Double_t* params) const
                       void Clear(Option_t* option = "")
                      Int_t ExecuteCommand(const char* command, Double_t* args, Int_t nargs)
                       void FixParameter(Int_t ipar)
                  Double_t* GetCovarianceMatrix() const
                   Double_t GetCovarianceMatrixElement(Int_t i, Int_t j) const
                      Int_t GetErrors(Int_t ipar, Double_t& eplus, Double_t& eminus, Double_t& eparab, Double_t& globcc) const
                  Foption_t GetFitOption() const
               TMethodCall* GetMethodCall() const
                      Int_t GetNumberTotalParameters() const
                      Int_t GetNumberFreeParameters() const
                   TObject* GetObjectFit() const
                   Double_t GetParError(Int_t ipar) const
                   Double_t GetParameter(Int_t ipar) const
                      Int_t GetParameter(Int_t ipar, char* name, Double_t& value, Double_t& verr, Double_t& vlow, Double_t& vhigh) const
                      Int_t GetStats(Double_t& amin, Double_t& edm, Double_t& errdef, Int_t& nvpar, Int_t& nparx) const
                   Double_t GetSumLog(Int_t i)
                   TObject* GetUserFunc() const
                      Int_t GetXfirst() const
                      Int_t GetXlast() const
                      Int_t GetYfirst() const
                      Int_t GetYlast() const
                      Int_t GetZfirst() const
                      Int_t GetZlast() const
                     Bool_t IsFixed(Int_t ipar) const
                       void PrintResults(Int_t level, Double_t amin) const
                       void ReleaseParameter(Int_t ipar)
                       void SetFitMethod(const char* name)
                       void SetFitOption(Foption_t option)
                       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)
                       void SetUserFunc(TObject* userfunc)
                       void SetXfirst(Int_t first)
                       void SetXlast(Int_t last)
                       void SetYfirst(Int_t first)
                       void SetYlast(Int_t last)
                       void SetZfirst(Int_t first)
                       void SetZlast(Int_t last)
                    TClass* Class()
                    TClass* IsA() const
                       void ShowMembers(TMemberInspector& insp, char* parent)
                       void Streamer(TBuffer& b)
                       void StreamerNVirtual(TBuffer& b)
            TVirtualFitter& operator=(const TVirtualFitter&)

Author: Rene Brun 31/08/99
Last update: root/base:$Name: $:$Id: TVirtualFitter.cxx,v 1.8 2005/06/14 13:28:41 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *