Logo ROOT   6.14/05
Reference Guide
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TF3 Class Reference

A 3-Dim function with parameters.

Definition at line 28 of file TF3.h.

Public Member Functions

 TF3 ()
 F3 default constructor. More...
 
 TF3 (const char *name, const char *formula, Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Double_t zmin=0, Double_t zmax=1, Option_t *opt=nullptr)
 F3 constructor using a formula definition. More...
 
 TF3 (const char *name, Double_t(*fcn)(Double_t *, Double_t *), Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Double_t zmin=0, Double_t zmax=1, Int_t npar=0, Int_t ndim=3)
 F3 constructor using a pointer to real function. More...
 
 TF3 (const char *name, Double_t(*fcn)(const Double_t *, const Double_t *), Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Double_t zmin=0, Double_t zmax=1, Int_t npar=0, Int_t ndim=3)
 F3 constructor using a pointer to real function—. More...
 
 TF3 (const char *name, ROOT::Math::ParamFunctor f, Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Double_t zmin=0, Double_t zmax=1, Int_t npar=0, Int_t ndim=3)
 F3 constructor using a ParamFunctor. More...
 
template<class PtrObj , typename MemFn >
 TF3 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax, Int_t npar, Int_t ndim=3)
 
template<class PtrObj , typename MemFn >
 TF3 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax, Int_t npar, const char *, const char *)
 Backward compatible ctor. More...
 
template<typename Func >
 TF3 (const char *name, Func f, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax, Int_t npar, Int_t ndim=3)
 
template<typename Func >
 TF3 (const char *name, Func f, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax, Int_t npar, const char *)
 backward compatible ctor More...
 
 TF3 (const TF3 &f3)
 Copy constructor. More...
 
virtual ~TF3 ()
 F3 default destructor. More...
 
virtual Double_t CentralMoment3 (Double_t nx, Double_t ax, Double_t bx, Double_t ny, Double_t ay, Double_t by, Double_t nz, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 Return x^nx * y^ny * z^nz central moment of a 3d function in range [ax,bx],[ay,by],[az,bz]. More...
 
virtual void Copy (TObject &f3) const
 Copy this F3 to a new F3. More...
 
virtual Double_t Covariance3XY (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Covariance3XZ (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Covariance3YZ (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual TH1CreateHistogram ()
 Create a histogram for axis range. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Compute distance from point px,py to a function. More...
 
virtual void Draw (Option_t *option="")
 Draw this function with its current attributes. More...
 
virtual TObjectDrawDerivative (Option_t *="al")
 Draw derivative of this function. More...
 
virtual TObjectDrawIntegral (Option_t *="al")
 Draw integral of this function. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to one event. More...
 
virtual Double_t GetMaximumXYZ (Double_t &x, Double_t &y, Double_t &z)
 Compute the X, Y and Z values corresponding to the maximum value of the function on its range. More...
 
virtual Double_t GetMinimumXYZ (Double_t &x, Double_t &y, Double_t &z)
 Compute the X, Y and Z values corresponding to the minimum value of the function on its range. More...
 
Int_t GetNpz () const
 
virtual void GetRandom3 (Double_t &xrandom, Double_t &yrandom, Double_t &zrandom)
 Return 3 random numbers following this function shape. More...
 
virtual void GetRange (Double_t &xmin, Double_t &xmax) const
 Return range of a 1-D function. More...
 
virtual void GetRange (Double_t &xmin, Double_t &ymin, Double_t &xmax, Double_t &ymax) const
 Return range of a 2-D function. More...
 
virtual void GetRange (Double_t &xmin, Double_t &ymin, Double_t &zmin, Double_t &xmax, Double_t &ymax, Double_t &zmax) const
 Return range of function. More...
 
virtual Double_t GetSave (const Double_t *x)
 Get value corresponding to X in array of fSave values. More...
 
virtual Double_t GetZmax () const
 
virtual Double_t GetZmin () const
 
virtual Double_t Integral (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsrel=1.e-6)
 Return Integral of a 3d function in range [ax,bx],[ay,by],[az,bz] with a desired relative accuracy. More...
 
virtual Bool_t IsInside (const Double_t *x) const
 Return kTRUE is the point is inside the function range. More...
 
virtual Double_t Mean3X (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Mean3Y (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Mean3Z (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Moment3 (Double_t nx, Double_t ax, Double_t bx, Double_t ny, Double_t ay, Double_t by, Double_t nz, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 Return x^nx * y^ny * z^nz moment of a 3d function in range [ax,bx],[ay,by],[az,bz]. More...
 
TF3operator= (const TF3 &rhs)
 Operator =. More...
 
virtual void Paint (Option_t *option="")
 Paint this 3-D function with its current attributes. More...
 
virtual void Save (Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax)
 Save values of function in array fSave. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save primitive as a C++ statement(s) on output stream out. More...
 
virtual void SetClippingBoxOff ()
 Set the function clipping box (for drawing) "off". More...
 
virtual void SetClippingBoxOn (Double_t xclip=0, Double_t yclip=0, Double_t zclip=0)
 Set the function clipping box (for drawing) "on" and define the clipping box. More...
 
virtual void SetNpz (Int_t npz=30)
 Set the number of points used to draw the function. More...
 
virtual void SetRange (Double_t xmin, Double_t xmax)
 Initialize the upper and lower bounds to draw the function. More...
 
virtual void SetRange (Double_t xmin, Double_t ymin, Double_t xmax, Double_t ymax)
 Initialize the upper and lower bounds to draw the function-. More...
 
virtual void SetRange (Double_t xmin, Double_t ymin, Double_t zmin, Double_t xmax, Double_t ymax, Double_t zmax)
 Initialize the upper and lower bounds to draw the function. More...
 
virtual Double_t Variance3X (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Variance3Y (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
virtual Double_t Variance3Z (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t az, Double_t bz, Double_t epsilon=0.000001)
 
- Public Member Functions inherited from TF2
 TF2 ()
 TF2 default constructor. More...
 
 TF2 (const char *name, const char *formula, Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Option_t *opt=nullptr)
 F2 constructor using a formula definition. More...
 
 TF2 (const char *name, Double_t(*fcn)(Double_t *, Double_t *), Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Int_t npar=0, Int_t ndim=2)
 F2 constructor using a pointer to a compiled function. More...
 
 TF2 (const char *name, Double_t(*fcn)(const Double_t *, const Double_t *), Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Int_t npar=0, Int_t ndim=2)
 F2 constructor using a pointer to a compiled function. More...
 
 TF2 (const char *name, ROOT::Math::ParamFunctor f, Double_t xmin=0, Double_t xmax=1, Double_t ymin=0, Double_t ymax=1, Int_t npar=0, Int_t ndim=2)
 F2 constructor using a ParamFunctor, a functor class implementing operator() (double *, double *) More...
 
template<class PtrObj , typename MemFn >
 TF2 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Int_t npar, Int_t ndim=2)
 
template<class PtrObj , typename MemFn >
 TF2 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Int_t npar, const char *, const char *)
 backward compatible ctor More...
 
template<typename Func >
 TF2 (const char *name, Func f, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Int_t npar, Int_t ndim=2)
 
template<typename Func >
 TF2 (const char *name, Func f, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Int_t npar, const char *)
 backward compatible ctor More...
 
 TF2 (const TF2 &f2)
 Copy constructor. More...
 
virtual ~TF2 ()
 F2 default destructor. More...
 
virtual Double_t CentralMoment2 (Double_t nx, Double_t ax, Double_t bx, Double_t ny, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 Return x^nx * y^ny central moment of a 2d function in range [ax,bx],[ay,by]. More...
 
virtual Double_t Covariance2XY (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
virtual TF1DrawCopy (Option_t *option="") const
 Draw a copy of this function with its current attributes-*. More...
 
virtual Int_t GetContour (Double_t *levels=0)
 Return contour values into array levels. More...
 
virtual Double_t GetContourLevel (Int_t level) const
 Return the number of contour levels. More...
 
virtual Double_t GetMaximum (Double_t *x) const
 Return maximum value of the function See TF2::GetMinimum. More...
 
virtual Double_t GetMaximumXY (Double_t &x, Double_t &y) const
 Compute the X and Y values corresponding to the maximum value of the function. More...
 
virtual Double_t GetMinimum (Double_t *x) const
 Return minimum/maximum value of the function. More...
 
virtual Double_t GetMinimumXY (Double_t &x, Double_t &y) const
 Compute the X and Y values corresponding to the minimum value of the function. More...
 
Int_t GetNpy () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Redefines TObject::GetObjectInfo. More...
 
Double_t GetRandom ()
 Return a random number following this function shape. More...
 
Double_t GetRandom (Double_t xmin, Double_t xmax)
 Return a random number following this function shape. More...
 
virtual void GetRandom2 (Double_t &xrandom, Double_t &yrandom)
 Return 2 random numbers following this function shape. More...
 
virtual Double_t GetYmax () const
 
virtual Double_t GetYmin () const
 
virtual Double_t Integral (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsrel=1.e-6)
 Return Integral of a 2d function in range [ax,bx],[ay,by] with desired relative accuracy (default value of eps is 1.e-9) More...
 
virtual Double_t Mean2X (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
virtual Double_t Mean2Y (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
virtual Double_t Moment2 (Double_t nx, Double_t ax, Double_t bx, Double_t ny, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 Return x^nx * y^ny moment of a 2d function in range [ax,bx],[ay,by]. More...
 
TF2operator= (const TF2 &rhs)
 Operator =. More...
 
virtual void SetContour (Int_t nlevels=20, const Double_t *levels=0)
 Set the number and values of contour levels. More...
 
virtual void SetContourLevel (Int_t level, Double_t value)
 Set value for one contour level. More...
 
virtual void SetNpy (Int_t npy=100)
 Set the number of points used to draw the function. More...
 
virtual Double_t Variance2X (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
virtual Double_t Variance2Y (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
- Public Member Functions inherited from TF1
 TF1 ()
 TF1 default constructor. More...
 
 TF1 (const char *name, const char *formula, Double_t xmin=0, Double_t xmax=1, EAddToList addToGlobList=EAddToList::kDefault, bool vectorize=false)
 F1 constructor using a formula definition. More...
 
 TF1 (const char *name, const char *formula, Double_t xmin, Double_t xmax, Option_t *option)
 Same constructor as above (for TFormula based function) but passing an option strings available options VEC - vectorize the formula expressions (not possible for lambda based expressions) NL - function is not stores in the global list of functions GL - function will be always stored in the global list of functions , independently of the global setting of TF1::DefaultAddToGlobalList. More...
 
 TF1 (const char *name, Double_t xmin, Double_t xmax, Int_t npar, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 F1 constructor using name of an interpreted function. More...
 
 TF1 (const char *name, Double_t(*fcn)(Double_t *, Double_t *), Double_t xmin=0, Double_t xmax=1, Int_t npar=0, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 Constructor using a pointer to a real function. More...
 
 TF1 (const char *name, Double_t(*fcn)(const Double_t *, const Double_t *), Double_t xmin=0, Double_t xmax=1, Int_t npar=0, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 Constructor using a pointer to real function. More...
 
template<class T >
 TF1 (const char *name, std::function< T(const T *data, const Double_t *param)> &fcn, Double_t xmin=0, Double_t xmax=1, Int_t npar=0, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 
template<class T >
 TF1 (const char *name, T(*fcn)(const T *, const Double_t *), Double_t xmin=0, Double_t xmax=1, Int_t npar=0, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 Constructor using a pointer to function. More...
 
 TF1 (const char *name, ROOT::Math::ParamFunctor f, Double_t xmin=0, Double_t xmax=1, Int_t npar=0, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 Constructor using the Functor class. More...
 
template<typename Func >
 TF1 (const char *name, Func f, Double_t xmin, Double_t xmax, Int_t npar, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 
template<typename Func >
 TF1 (const char *name, Func f, Double_t xmin, Double_t xmax, Int_t npar, const char *, EAddToList addToGlobList=EAddToList::kDefault)
 
template<class PtrObj , typename MemFn >
 TF1 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Int_t npar, Int_t ndim=1, EAddToList addToGlobList=EAddToList::kDefault)
 
template<class PtrObj , typename MemFn >
 TF1 (const char *name, const PtrObj &p, MemFn memFn, Double_t xmin, Double_t xmax, Int_t npar, const char *, const char *, EAddToList addToGlobList=EAddToList::kDefault)
 
 TF1 (const TF1 &f1)
 
virtual ~TF1 ()
 TF1 default destructor. More...
 
virtual void AddParameter (const TString &name, Double_t value)
 
virtual Bool_t AddToGlobalList (Bool_t on=kTRUE)
 Add to global list of functions (gROOT->GetListOfFunctions() ) return previous status (true if the function was already in the list false if not) More...
 
virtual void Browse (TBrowser *b)
 Browse. More...
 
virtual Double_t CentralMoment (Double_t n, Double_t a, Double_t b, const Double_t *params=0, Double_t epsilon=0.000001)
 Return nth central moment of function between a and b (i.e the n-th moment around the mean value) More...
 
virtual Double_t Derivative (Double_t x, Double_t *params=0, Double_t epsilon=0.001) const
 Returns the first derivative of the function at point x, computed by Richardson's extrapolation method (use 2 derivative estimates to compute a third, more accurate estimation) first, derivatives with steps h and h/2 are computed by central difference formulas

\[ D(h) = \frac{f(x+h) - f(x-h)}{2h} \]

the final estimate

\[ D = \frac{4D(h/2) - D(h)}{3} \]

"Numerical Methods for Scientists and Engineers", H.M.Antia, 2nd edition". More...

 
virtual Double_t Derivative2 (Double_t x, Double_t *params=0, Double_t epsilon=0.001) const
 Returns the second derivative of the function at point x, computed by Richardson's extrapolation method (use 2 derivative estimates to compute a third, more accurate estimation) first, derivatives with steps h and h/2 are computed by central difference formulas

\[ D(h) = \frac{f(x+h) - 2f(x) + f(x-h)}{h^{2}} \]

the final estimate

\[ D = \frac{4D(h/2) - D(h)}{3} \]

"Numerical Methods for Scientists and Engineers", H.M.Antia, 2nd edition". More...

 
virtual Double_t Derivative3 (Double_t x, Double_t *params=0, Double_t epsilon=0.001) const
 Returns the third derivative of the function at point x, computed by Richardson's extrapolation method (use 2 derivative estimates to compute a third, more accurate estimation) first, derivatives with steps h and h/2 are computed by central difference formulas

\[ D(h) = \frac{f(x+2h) - 2f(x+h) + 2f(x-h) - f(x-2h)}{2h^{3}} \]

the final estimate

\[ D = \frac{4D(h/2) - D(h)}{3} \]

"Numerical Methods for Scientists and Engineers", H.M.Antia, 2nd edition". More...

 
virtual TH1DoCreateHistogram (Double_t xmin, Double_t xmax, Bool_t recreate=kFALSE)
 Create histogram with bin content equal to function value computed at the bin center This histogram will be used to paint the function A re-creation is forced and a new histogram is done if recreate=true. More...
 
void DoInitialize (EAddToList addToGlobList)
 Common initialization of the TF1. More...
 
virtual void DrawF1 (Double_t xmin, Double_t xmax, Option_t *option="")
 Draw function between xmin and xmax. More...
 
virtual Double_t Eval (Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
 Evaluate this function. More...
 
virtual Double_t EvalPar (const Double_t *x, const Double_t *params=0)
 Evaluate function with given coordinates and parameters. More...
 
template<class T >
EvalPar (const T *x, const Double_t *params=0)
 EvalPar for vectorized. More...
 
virtual void FixParameter (Int_t ipar, Double_t value)
 Fix the value of a parameter The specified value will be used in a fit operation. More...
 
Double_t GetChisquare () const
 
virtual TString GetExpFormula (Option_t *option="") const
 
virtual TFormulaGetFormula ()
 
virtual const TFormulaGetFormula () const
 
virtual TH1GetHistogram () const
 Return a pointer to the histogram used to visualise the function. More...
 
virtual const TObjectGetLinearPart (Int_t i) const
 
virtual Double_t GetMaximum (Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 Returns the maximum value of the function. More...
 
virtual Double_t GetMaximumStored () const
 
virtual Double_t GetMaximumX (Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 Returns the X value corresponding to the maximum value of the function. More...
 
TMethodCallGetMethodCall () const
 
virtual Double_t GetMinimum (Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 Returns the minimum value of the function on the (xmin, xmax) interval. More...
 
virtual Double_t GetMinimumStored () const
 
virtual Double_t GetMinimumX (Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 Returns the X value corresponding to the minimum value of the function on the (xmin, xmax) interval. More...
 
virtual Double_t GetMinMaxNDim (Double_t *x, Bool_t findmax, Double_t epsilon=0, Int_t maxiter=0) const
 Find the minimum of a function of whatever dimension. More...
 
virtual Int_t GetNDF () const
 Return the number of degrees of freedom in the fit the fNDF parameter has been previously computed during a fit. More...
 
virtual Int_t GetNdim () const
 
virtual Int_t GetNpar () const
 
virtual Int_t GetNpx () const
 
virtual Int_t GetNumber () const
 
virtual Int_t GetNumberFitPoints () const
 
virtual Int_t GetNumberFreeParameters () const
 Return the number of free parameters. More...
 
virtual Double_t GetParameter (Int_t ipar) const
 
virtual Double_t GetParameter (const TString &name) const
 
virtual Double_tGetParameters () const
 
virtual void GetParameters (Double_t *params)
 
TObjectGetParent () const
 
virtual Double_t GetParError (Int_t ipar) const
 Return value of parameter number ipar. More...
 
virtual const Double_tGetParErrors () const
 
virtual void GetParLimits (Int_t ipar, Double_t &parmin, Double_t &parmax) const
 Return limits for parameter ipar. More...
 
virtual const char * GetParName (Int_t ipar) const
 
virtual Int_t GetParNumber (const char *name) const
 
virtual Double_t GetProb () const
 Return the fit probability. More...
 
virtual Int_t GetQuantiles (Int_t nprobSum, Double_t *q, const Double_t *probSum)
 Compute Quantiles for density distribution of this function. More...
 
virtual void GetRange (Double_t *xmin, Double_t *xmax) const
 Return range of a generic N-D function. More...
 
virtual Double_t GetVariable (const TString &name)
 
virtual Double_t GetX (Double_t y, Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 Returns the X value corresponding to the function value fy for (xmin<x<xmax). More...
 
TAxisGetXaxis () const
 Get x axis of the function. More...
 
virtual Double_t GetXmax () const
 
virtual Double_t GetXmin () const
 
TAxisGetYaxis () const
 Get y axis of the function. More...
 
TAxisGetZaxis () const
 Get z axis of the function. (In case this object is a TF2 or TF3) More...
 
virtual Double_t GradientPar (Int_t ipar, const Double_t *x, Double_t eps=0.01)
 Compute the gradient (derivative) wrt a parameter ipar. More...
 
template<class T >
GradientPar (Int_t ipar, const T *x, Double_t eps=0.01)
 
virtual void GradientPar (const Double_t *x, Double_t *grad, Double_t eps=0.01)
 Compute the gradient wrt parameters. More...
 
template<class T >
void GradientPar (const T *x, T *grad, Double_t eps=0.01)
 
template<class T >
GradientParTempl (Int_t ipar, const T *x, Double_t eps=0.01)
 
template<class T >
void GradientParTempl (const T *x, T *grad, Double_t eps=0.01)
 
virtual void InitArgs (const Double_t *x, const Double_t *params)
 Initialize parameters addresses. More...
 
virtual Double_t Integral (Double_t a, Double_t b, Double_t epsrel=1.e-12)
 IntegralOneDim or analytical integral. More...
 
virtual Double_t IntegralError (Double_t a, Double_t b, const Double_t *params=0, const Double_t *covmat=0, Double_t epsilon=1.E-2)
 Return Error on Integral of a parametric function between a and b due to the parameter uncertainties. More...
 
virtual Double_t IntegralError (Int_t n, const Double_t *a, const Double_t *b, const Double_t *params=0, const Double_t *covmat=0, Double_t epsilon=1.E-2)
 Return Error on Integral of a parametric function with dimension larger tan one between a[] and b[] due to the parameters uncertainties. More...
 
virtual Double_t IntegralFast (Int_t num, Double_t *x, Double_t *w, Double_t a, Double_t b, Double_t *params=0, Double_t epsilon=1e-12)
 Gauss-Legendre integral, see CalcGaussLegendreSamplingPoints. More...
 
virtual Double_t IntegralMultiple (Int_t n, const Double_t *a, const Double_t *b, Int_t maxpts, Double_t epsrel, Double_t epsabs, Double_t &relerr, Int_t &nfnevl, Int_t &ifail)
 This function computes, to an attempted specified accuracy, the value of the integral. More...
 
virtual Double_t IntegralMultiple (Int_t n, const Double_t *a, const Double_t *b, Int_t, Int_t maxpts, Double_t epsrel, Double_t &relerr, Int_t &nfnevl, Int_t &ifail)
 
virtual Double_t IntegralMultiple (Int_t n, const Double_t *a, const Double_t *b, Double_t epsrel, Double_t &relerr)
 See more general prototype below. More...
 
virtual Double_t IntegralOneDim (Double_t a, Double_t b, Double_t epsrel, Double_t epsabs, Double_t &err)
 Return Integral of function between a and b using the given parameter values and relative and absolute tolerance. More...
 
void IntegrateForNormalization ()
 
virtual Bool_t IsEvalNormalized () const
 
virtual Bool_t IsLinear () const
 
virtual Bool_t IsValid () const
 Return kTRUE if the function is valid. More...
 
bool IsVectorized ()
 
virtual Double_t Mean (Double_t a, Double_t b, const Double_t *params=0, Double_t epsilon=0.000001)
 
virtual Double_t Moment (Double_t n, Double_t a, Double_t b, const Double_t *params=0, Double_t epsilon=0.000001)
 Return nth moment of function between a and b. More...
 
virtual Double_t operator() (Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
 
template<class T >
operator() (const T *x, const Double_t *params=nullptr)
 
TF1operator= (const TF1 &rhs)
 Operator =. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual void ReleaseParameter (Int_t ipar)
 Release parameter number ipar If used in a fit, the parameter can vary freely. More...
 
virtual void SetChisquare (Double_t chi2)
 
virtual void SetFitResult (const ROOT::Fit::FitResult &result, const Int_t *indpar=0)
 Set the result from the fit parameter values, errors, chi2, etc... More...
 
template<class PtrObj , typename MemFn >
void SetFunction (PtrObj &p, MemFn memFn)
 
template<typename Func >
void SetFunction (Func f)
 
virtual void SetMaximum (Double_t maximum=-1111)
 Set the maximum value along Y for this function In case the function is already drawn, set also the maximum in the helper histogram. More...
 
virtual void SetMinimum (Double_t minimum=-1111)
 Set the minimum value along Y for this function In case the function is already drawn, set also the minimum in the helper histogram. More...
 
virtual void SetNDF (Int_t ndf)
 Set the number of degrees of freedom ndf should be the number of points used in a fit - the number of free parameters. More...
 
virtual void SetNormalized (Bool_t flag)
 
virtual void SetNpx (Int_t npx=100)
 Set the number of points used to draw the function. More...
 
virtual void SetNumberFitPoints (Int_t npfits)
 
virtual void SetParameter (Int_t param, Double_t value)
 
virtual void SetParameter (const TString &name, Double_t value)
 
virtual void SetParameters (const Double_t *params)
 
virtual void SetParameters (Double_t p0, Double_t p1, Double_t p2=0, Double_t p3=0, Double_t p4=0, Double_t p5=0, Double_t p6=0, Double_t p7=0, Double_t p8=0, Double_t p9=0, Double_t p10=0)
 
virtual void SetParent (TObject *p=0)
 
virtual void SetParError (Int_t ipar, Double_t error)
 Set error for parameter number ipar. More...
 
virtual void SetParErrors (const Double_t *errors)
 Set errors for all active parameters when calling this function, the array errors must have at least fNpar values. More...
 
virtual void SetParLimits (Int_t ipar, Double_t parmin, Double_t parmax)
 Set limits for parameter ipar. More...
 
virtual void SetParName (Int_t ipar, const char *name)
 Set name of parameter number ipar. More...
 
virtual void SetParNames (const char *name0="p0", const char *name1="p1", const char *name2="p2", const char *name3="p3", const char *name4="p4", const char *name5="p5", const char *name6="p6", const char *name7="p7", const char *name8="p8", const char *name9="p9", const char *name10="p10")
 Set up to 10 parameter names. More...
 
virtual void SetSavedPoint (Int_t point, Double_t value)
 Restore value of function saved at point. More...
 
virtual void SetTitle (const char *title="")
 Set function title if title has the form "fffffff;xxxx;yyyy", it is assumed that the function title is "fffffff" and "xxxx" and "yyyy" are the titles for the X and Y axis respectively. More...
 
virtual void SetVectorized (Bool_t vectorized)
 
virtual void Update ()
 Called by functions such as SetRange, SetNpx, SetParameters to force the deletion of the associated histogram or Integral. More...
 
virtual Double_t Variance (Double_t a, Double_t b, const Double_t *params=0, Double_t epsilon=0.000001)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
virtual ~TNamed ()
 TNamed destructor. More...
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual void SetName (const char *name)
 Set the name of the TNamed. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title). More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
ULong_t CheckedHash ()
 Checked and record whether for this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
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. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
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). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE 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. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
- Public Member Functions inherited from TAttLine
 TAttLine ()
 AttLine default constructor. More...
 
 TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth)
 AttLine normal constructor. More...
 
virtual ~TAttLine ()
 AttLine destructor. More...
 
void Copy (TAttLine &attline) const
 Copy this line attributes to a new TAttLine. More...
 
Int_t DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
 Compute distance from point px,py to a line. More...
 
virtual Color_t GetLineColor () const
 Return the line color. More...
 
virtual Style_t GetLineStyle () const
 Return the line style. More...
 
virtual Width_t GetLineWidth () const
 Return the line width. More...
 
virtual void Modify ()
 Change current line attributes if necessary. More...
 
virtual void ResetAttLine (Option_t *option="")
 Reset this line attributes to default values. More...
 
virtual void SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
 Save line attributes as C++ statement(s) on output stream out. More...
 
virtual void SetLineAttributes ()
 Invoke the DialogCanvas Line attributes. More...
 
virtual void SetLineColor (Color_t lcolor)
 Set the line color. More...
 
virtual void SetLineColorAlpha (Color_t lcolor, Float_t lalpha)
 Set a transparent line color. More...
 
virtual void SetLineStyle (Style_t lstyle)
 Set the line style. More...
 
virtual void SetLineWidth (Width_t lwidth)
 Set the line width. More...
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor. More...
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor. More...
 
virtual ~TAttFill ()
 AttFill destructor. More...
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill. More...
 
virtual Color_t GetFillColor () const
 Return the fill area color. More...
 
virtual Style_t GetFillStyle () const
 Return the fill area style. More...
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary. More...
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values. More...
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out. More...
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes. More...
 
virtual void SetFillColor (Color_t fcolor)
 Set the fill area color. More...
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color. More...
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style. More...
 
- Public Member Functions inherited from TAttMarker
 TAttMarker ()
 TAttMarker default constructor. More...
 
 TAttMarker (Color_t color, Style_t style, Size_t msize)
 TAttMarker normal constructor. More...
 
virtual ~TAttMarker ()
 TAttMarker destructor. More...
 
void Copy (TAttMarker &attmarker) const
 Copy this marker attributes to a new TAttMarker. More...
 
virtual Color_t GetMarkerColor () const
 Return the marker color. More...
 
virtual Size_t GetMarkerSize () const
 Return the marker size. More...
 
virtual Style_t GetMarkerStyle () const
 Return the marker style. More...
 
virtual void Modify ()
 Change current marker attributes if necessary. More...
 
virtual void ResetAttMarker (Option_t *toption="")
 Reset this marker attributes to the default values. More...
 
virtual void SaveMarkerAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
 Save line attributes as C++ statement(s) on output stream out. More...
 
virtual void SetMarkerAttributes ()
 Invoke the DialogCanvas Marker attributes. More...
 
virtual void SetMarkerColor (Color_t mcolor=1)
 Set the marker color. More...
 
virtual void SetMarkerColorAlpha (Color_t mcolor, Float_t malpha)
 Set a transparent marker color. More...
 
virtual void SetMarkerSize (Size_t msize=1)
 Set the marker size. More...
 
virtual void SetMarkerStyle (Style_t mstyle=1)
 Set the marker style. More...
 

Protected Member Functions

virtual Double_t FindMinMax (Double_t *x, bool findmax) const
 Return minimum/maximum value of the function. More...
 
- Protected Member Functions inherited from TF1
 TF1 (EFType functionType, const char *name, Double_t xmin, Double_t xmax, Int_t npar, Int_t ndim, EAddToList addToGlobList, TF1Parameters *params=nullptr, TF1FunctorPointer *functor=nullptr)
 General constructor for TF1. Most of the other constructors delegate on it. More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

Protected Attributes

Int_t fNpz
 
Double_t fZmax
 
Double_t fZmin
 
- Protected Attributes inherited from TF2
TArrayD fContour
 
Int_t fNpy
 
Double_t fYmax
 
Double_t fYmin
 
- Protected Attributes inherited from TF1
std::vector< Double_tfAlpha
 Integral of function binned on fNpx bins. More...
 
std::vector< Double_tfBeta
 Array alpha. for each bin in x the deconvolution r of fIntegral. More...
 
Double_t fChisquare {}
 
std::unique_ptr< TF1AbsCompositionfComposition
 
TF1AbsCompositionfComposition_ptr {nullptr}
 Pointer to composition (NSUM or CONV) More...
 
TFormulafFormula {nullptr}
 Functor object to wrap any C++ callable object. More...
 
TF1FunctorPointerfFunctor {nullptr}
 
std::vector< Double_tfGamma
 Array beta. is approximated by x = alpha +beta*r *gamma*r**2. More...
 
TH1fHistogram {nullptr}
 Parent object hooking this function (if one) More...
 
std::vector< Double_tfIntegral
 
Double_t fMaximum {-1111}
 
TMethodCallfMethodCall {nullptr}
 Pointer to histogram used for visualisation. More...
 
Double_t fMinimum {-1111}
 
Int_t fNDF {}
 
Int_t fNdim {}
 
Bool_t fNormalized {false}
 Pointer to MethodCall in case of interpreted function. More...
 
Double_t fNormIntegral {}
 
Int_t fNpar {}
 
Int_t fNpfits {}
 
Int_t fNpx {100}
 
TF1ParametersfParams {nullptr}
 
TObjectfParent {nullptr}
 Array gamma. More...
 
std::vector< Double_tfParErrors
 
std::vector< Double_tfParMax
 
std::vector< Double_tfParMin
 
std::vector< Double_tfSave
 
EFType fType {EFType::kTemplScalar}
 
Double_t fXmax {-1111}
 
Double_t fXmin {-1111}
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttLine
Color_t fLineColor
 Line color. More...
 
Style_t fLineStyle
 Line style. More...
 
Width_t fLineWidth
 Line width. More...
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color. More...
 
Style_t fFillStyle
 Fill area style. More...
 
- Protected Attributes inherited from TAttMarker
Color_t fMarkerColor
 Marker color. More...
 
Size_t fMarkerSize
 Marker size. More...
 
Style_t fMarkerStyle
 Marker style. More...
 

Additional Inherited Members

- Public Types inherited from TF1
enum  EAddToList { EAddToList::kDefault, EAddToList::kAdd, EAddToList::kNo }
 
enum  EStatusBits { kNotGlobal = BIT(10), kNotDraw = BIT(9) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kInconsistent = 0x08000000,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5),
  kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
- Static Public Member Functions inherited from TF1
static void AbsValue (Bool_t reject=kTRUE)
 Static function: set the fgAbsValue flag. More...
 
static void CalcGaussLegendreSamplingPoints (Int_t num, Double_t *x, Double_t *w, Double_t eps=3.0e-11)
 Type safe interface (static method) The number of sampling points are taken from the TGraph. More...
 
static Bool_t DefaultAddToGlobalList (Bool_t on=kTRUE)
 Static method to add/avoid to add automatically functions to the global list (gROOT->GetListOfFunctions() ) After having called this static method, all the functions created afterwards will follow the desired behaviour. More...
 
static Double_t DerivativeError ()
 Static function returning the error of the last call to the of Derivative's functions. More...
 
static TF1GetCurrent ()
 Static function returning the current function being processed. More...
 
static void InitStandardFunctions ()
 Create the basic function objects. More...
 
static Bool_t RejectedPoint ()
 See TF1::RejectPoint above. More...
 
static void RejectPoint (Bool_t reject=kTRUE)
 Static function to set the global flag to reject points the fgRejectPoint global flag is tested by all fit functions if TRUE the point is not included in the fit. More...
 
static void SetCurrent (TF1 *f1)
 Static function setting the current function. More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Attributes inherited from TF1
static std::atomic< Bool_tfgAbsValue
 
static std::atomic< Bool_tfgAddToGlobList
 
static TF1fgCurrent = 0
 
static Bool_t fgRejectPoint = kFALSE
 
- Protected Types inherited from TF1
enum  EFType {
  kFormula = 0, kPtrScalarFreeFcn, kInterpreted, kTemplVec,
  kTemplScalar, kCompositionFcn
}
 

#include <TF3.h>

Inheritance diagram for TF3:
[legend]

Constructor & Destructor Documentation

◆ TF3() [1/10]

TF3::TF3 ( )

F3 default constructor.

Definition at line 36 of file TF3.cxx.

◆ TF3() [2/10]

TF3::TF3 ( const char *  name,
const char *  formula,
Double_t  xmin = 0,
Double_t  xmax = 1,
Double_t  ymin = 0,
Double_t  ymax = 1,
Double_t  zmin = 0,
Double_t  zmax = 1,
Option_t opt = nullptr 
)

F3 constructor using a formula definition.

See TFormula constructor for explanation of the formula syntax.

Definition at line 49 of file TF3.cxx.

◆ TF3() [3/10]

TF3::TF3 ( const char *  name,
Double_t(*)(Double_t *, Double_t *)  fcn,
Double_t  xmin = 0,
Double_t  xmax = 1,
Double_t  ymin = 0,
Double_t  ymax = 1,
Double_t  zmin = 0,
Double_t  zmax = 1,
Int_t  npar = 0,
Int_t  ndim = 3 
)

F3 constructor using a pointer to real function.

Parameters
[in]nparis the number of free parameters used by the function

For example, for a 3-dim function with 3 parameters, the user function looks like:

Double_t fun1(Double_t *x, Double_t *par)
return par[0]*x[2] + par[1]*exp(par[2]*x[0]*x[1]);

WARNING! A function created with this constructor cannot be Cloned.

Definition at line 77 of file TF3.cxx.

◆ TF3() [4/10]

TF3::TF3 ( const char *  name,
Double_t(*)(const Double_t *, const Double_t *)  fcn,
Double_t  xmin = 0,
Double_t  xmax = 1,
Double_t  ymin = 0,
Double_t  ymax = 1,
Double_t  zmin = 0,
Double_t  zmax = 1,
Int_t  npar = 0,
Int_t  ndim = 3 
)

F3 constructor using a pointer to real function—.

Parameters
[in]nparis the number of free parameters used by the function

For example, for a 3-dim function with 3 parameters, the user function looks like:

Double_t fun1(Double_t *x, Double_t *par)
return par[0]*x[2] + par[1]*exp(par[2]*x[0]*x[1]);

WARNING! A function created with this constructor cannot be Cloned.

Definition at line 98 of file TF3.cxx.

◆ TF3() [5/10]

TF3::TF3 ( const char *  name,
ROOT::Math::ParamFunctor  f,
Double_t  xmin = 0,
Double_t  xmax = 1,
Double_t  ymin = 0,
Double_t  ymax = 1,
Double_t  zmin = 0,
Double_t  zmax = 1,
Int_t  npar = 0,
Int_t  ndim = 3 
)

F3 constructor using a ParamFunctor.

a functor class implementing operator() (double *, double *)

Parameters
[in]nparis the number of free parameters used by the function

WARNING! A function created with this constructor cannot be Cloned.

Definition at line 115 of file TF3.cxx.

◆ TF3() [6/10]

template<class PtrObj , typename MemFn >
TF3::TF3 ( const char *  name,
const PtrObj &  p,
MemFn  memFn,
Double_t  xmin,
Double_t  xmax,
Double_t  ymin,
Double_t  ymax,
Double_t  zmin,
Double_t  zmax,
Int_t  npar,
Int_t  ndim = 3 
)
inline

Definition at line 54 of file TF3.h.

◆ TF3() [7/10]

template<class PtrObj , typename MemFn >
TF3::TF3 ( const char *  name,
const PtrObj &  p,
MemFn  memFn,
Double_t  xmin,
Double_t  xmax,
Double_t  ymin,
Double_t  ymax,
Double_t  zmin,
Double_t  zmax,
Int_t  npar,
const char *  ,
const char *   
)
inline

Backward compatible ctor.

Definition at line 61 of file TF3.h.

◆ TF3() [8/10]

template<typename Func >
TF3::TF3 ( const char *  name,
Func  f,
Double_t  xmin,
Double_t  xmax,
Double_t  ymin,
Double_t  ymax,
Double_t  zmin,
Double_t  zmax,
Int_t  npar,
Int_t  ndim = 3 
)
inline

Definition at line 69 of file TF3.h.

◆ TF3() [9/10]

template<typename Func >
TF3::TF3 ( const char *  name,
Func  f,
Double_t  xmin,
Double_t  xmax,
Double_t  ymin,
Double_t  ymax,
Double_t  zmin,
Double_t  zmax,
Int_t  npar,
const char *   
)
inline

backward compatible ctor

Definition at line 76 of file TF3.h.

◆ TF3() [10/10]

TF3::TF3 ( const TF3 f3)

Copy constructor.

Definition at line 144 of file TF3.cxx.

◆ ~TF3()

TF3::~TF3 ( )
virtual

F3 default destructor.

Definition at line 137 of file TF3.cxx.

Member Function Documentation

◆ CentralMoment3()

Double_t TF3::CentralMoment3 ( Double_t  nx,
Double_t  ax,
Double_t  bx,
Double_t  ny,
Double_t  ay,
Double_t  by,
Double_t  nz,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
virtual

Return x^nx * y^ny * z^nz central moment of a 3d function in range [ax,bx],[ay,by],[az,bz].

Author
Gene Van Buren gene@.nosp@m.bnl..nosp@m.gov

Definition at line 737 of file TF3.cxx.

◆ Copy()

void TF3::Copy ( TObject f3) const
virtual

Copy this F3 to a new F3.

Reimplemented from TF2.

Definition at line 152 of file TF3.cxx.

◆ Covariance3XY()

virtual Double_t TF3::Covariance3XY ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 128 of file TF3.h.

◆ Covariance3XZ()

virtual Double_t TF3::Covariance3XZ ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 129 of file TF3.h.

◆ Covariance3YZ()

virtual Double_t TF3::Covariance3YZ ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 130 of file TF3.h.

◆ CreateHistogram()

TH1 * TF3::CreateHistogram ( )
virtual

Create a histogram for axis range.

Reimplemented from TF2.

Definition at line 484 of file TF3.cxx.

◆ DistancetoPrimitive()

Int_t TF3::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
virtual

Compute distance from point px,py to a function.

Compute the closest distance of approach from point px,py to this function. The distance is computed in pixels units.

Reimplemented from TF2.

Definition at line 167 of file TF3.cxx.

◆ Draw()

void TF3::Draw ( Option_t option = "")
virtual

Draw this function with its current attributes.

Reimplemented from TF2.

Definition at line 176 of file TF3.cxx.

◆ DrawDerivative()

virtual TObject* TF3::DrawDerivative ( Option_t option = "al")
inlinevirtual

Draw derivative of this function.

An intermediate TGraph object is built and drawn with option. The function returns a pointer to the TGraph object. Do:

TGraph *g = (TGraph*)myfunc.DrawDerivative(option);

The resulting graph will be drawn into the current pad. If this function is used via the context menu, it recommended to create a new canvas/pad before invoking this function.

Reimplemented from TF2.

Definition at line 88 of file TF3.h.

◆ DrawIntegral()

virtual TObject* TF3::DrawIntegral ( Option_t option = "al")
inlinevirtual

Draw integral of this function.

An intermediate TGraph object is built and drawn with option. The function returns a pointer to the TGraph object. Do:

TGraph *g = (TGraph*)myfunc.DrawIntegral(option);

The resulting graph will be drawn into the current pad. If this function is used via the context menu, it recommended to create a new canvas/pad before invoking this function.

Reimplemented from TF2.

Definition at line 89 of file TF3.h.

◆ ExecuteEvent()

void TF3::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Execute action corresponding to one event.

This member function is called when a F3 is clicked with the locator

Reimplemented from TF2.

Definition at line 191 of file TF3.cxx.

◆ FindMinMax()

Double_t TF3::FindMinMax ( Double_t x,
bool  findmax 
) const
protectedvirtual

Return minimum/maximum value of the function.

To find the minimum on a range, first set this range via the SetRange function If a vector x of coordinate is passed it will be used as starting point for the minimum. In addition on exit x will contain the coordinate values at the minimuma If x is NULL or x is inifinity or NaN, first, a grid search is performed to find the initial estimate of the minimum location. The range of the function is divided into fNpx and fNpy sub-ranges. If the function is "good" (or "bad"), these values can be changed by SetNpx and SetNpy functions

Then, a minimization is used with starting values found by the grid search The minimizer algorithm used (by default Minuit) can be changed by callinga ROOT::Math::Minimizer::SetDefaultMinimizerType("..") Other option for the minimizer can be set using the static method of the MinimizerOptions class

Reimplemented from TF2.

Definition at line 212 of file TF3.cxx.

◆ GetMaximumXYZ()

Double_t TF3::GetMaximumXYZ ( Double_t x,
Double_t y,
Double_t z 
)
virtual

Compute the X, Y and Z values corresponding to the maximum value of the function on its range.

Return the function value at the maximum. See TF3::GetMinimumXYZ

Definition at line 296 of file TF3.cxx.

◆ GetMinimumXYZ()

Double_t TF3::GetMinimumXYZ ( Double_t x,
Double_t y,
Double_t z 
)
virtual

Compute the X, Y and Z values corresponding to the minimum value of the function on its range.

Returns the function value at the minimum. To find the minimum on a subrange, use the SetRange() function first.

Method: First, a grid search is performed to find the initial estimate of the minimum location. The range of the function is divided into fNpx,fNpy and fNpz sub-ranges. If the function is "good" (or "bad"), these values can be changed by SetNpx(), SetNpy() and SetNpz() functions. Then, Minuit minimization is used with starting values found by the grid search

Note that this method will always do first a grid search in contrast to GetMinimum

Definition at line 280 of file TF3.cxx.

◆ GetNpz()

Int_t TF3::GetNpz ( ) const
inline

Definition at line 93 of file TF3.h.

◆ GetRandom3()

void TF3::GetRandom3 ( Double_t xrandom,
Double_t yrandom,
Double_t zrandom 
)
virtual

Return 3 random numbers following this function shape.

The distribution contained in this TF3 function is integrated over the cell contents. It is normalized to 1. Getting the three random numbers implies:

  • Generating a random number between 0 and 1 (say r1)
  • Look in which cell in the normalized integral r1 corresponds to
  • make a linear interpolation in the returned cell

IMPORTANT NOTE

The integral of the function is computed at fNpx * fNpy * fNpz points. If the function has sharp peaks, you should increase the number of points (SetNpx, SetNpy, SetNpz) such that the peak is correctly tabulated at several points.

Definition at line 324 of file TF3.cxx.

◆ GetRange() [1/3]

void TF3::GetRange ( Double_t xmin,
Double_t xmax 
) const
inlinevirtual

Return range of a 1-D function.

Reimplemented from TF1.

Definition at line 139 of file TF3.h.

◆ GetRange() [2/3]

void TF3::GetRange ( Double_t xmin,
Double_t ymin,
Double_t xmax,
Double_t ymax 
) const
inlinevirtual

Return range of a 2-D function.

Reimplemented from TF2.

Definition at line 141 of file TF3.h.

◆ GetRange() [3/3]

void TF3::GetRange ( Double_t xmin,
Double_t ymin,
Double_t zmin,
Double_t xmax,
Double_t ymax,
Double_t zmax 
) const
virtual

Return range of function.

Reimplemented from TF2.

Definition at line 382 of file TF3.cxx.

◆ GetSave()

Double_t TF3::GetSave ( const Double_t x)
virtual

Get value corresponding to X in array of fSave values.

Reimplemented from TF2.

Definition at line 396 of file TF3.cxx.

◆ GetZmax()

virtual Double_t TF3::GetZmax ( ) const
inlinevirtual

Definition at line 101 of file TF3.h.

◆ GetZmin()

virtual Double_t TF3::GetZmin ( ) const
inlinevirtual

Definition at line 100 of file TF3.h.

◆ Integral()

Double_t TF3::Integral ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsrel = 1.e-6 
)
virtual

Return Integral of a 3d function in range [ax,bx],[ay,by],[az,bz] with a desired relative accuracy.

Definition at line 450 of file TF3.cxx.

◆ IsInside()

Bool_t TF3::IsInside ( const Double_t x) const
virtual

Return kTRUE is the point is inside the function range.

Reimplemented from TF2.

Definition at line 473 of file TF3.cxx.

◆ Mean3X()

virtual Double_t TF3::Mean3X ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 120 of file TF3.h.

◆ Mean3Y()

virtual Double_t TF3::Mean3Y ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 121 of file TF3.h.

◆ Mean3Z()

virtual Double_t TF3::Mean3Z ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 122 of file TF3.h.

◆ Moment3()

Double_t TF3::Moment3 ( Double_t  nx,
Double_t  ax,
Double_t  bx,
Double_t  ny,
Double_t  ay,
Double_t  by,
Double_t  nz,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
virtual

Return x^nx * y^ny * z^nz moment of a 3d function in range [ax,bx],[ay,by],[az,bz].

Author
Gene Van Buren gene@.nosp@m.bnl..nosp@m.gov

Definition at line 721 of file TF3.cxx.

◆ operator=()

TF3 & TF3::operator= ( const TF3 rhs)

Operator =.

Definition at line 126 of file TF3.cxx.

◆ Paint()

void TF3::Paint ( Option_t option = "")
virtual

Paint this 3-D function with its current attributes.

Reimplemented from TF2.

Definition at line 496 of file TF3.cxx.

◆ Save()

void TF3::Save ( Double_t  xmin,
Double_t  xmax,
Double_t  ymin,
Double_t  ymax,
Double_t  zmin,
Double_t  zmax 
)
virtual

Save values of function in array fSave.

Reimplemented from TF2.

Definition at line 536 of file TF3.cxx.

◆ SavePrimitive()

void TF3::SavePrimitive ( std::ostream &  out,
Option_t option = "" 
)
virtual

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

Reimplemented from TF2.

Definition at line 591 of file TF3.cxx.

◆ SetClippingBoxOff()

void TF3::SetClippingBoxOff ( )
virtual

Set the function clipping box (for drawing) "off".

Definition at line 522 of file TF3.cxx.

◆ SetClippingBoxOn()

void TF3::SetClippingBoxOn ( Double_t  xclip = 0,
Double_t  yclip = 0,
Double_t  zclip = 0 
)
virtual

Set the function clipping box (for drawing) "on" and define the clipping box.

xclip, yclip and zclip is a point within the function range. All the function values having x<=xclip and y<=yclip and z>=zclip are clipped.

Definition at line 642 of file TF3.cxx.

◆ SetNpz()

void TF3::SetNpz ( Int_t  npz = 30)
virtual

Set the number of points used to draw the function.

The default number of points along x is 30 for 2-d/3-d functions. You can increase this value to get a better resolution when drawing pictures with sharp peaks or to get a better result when using TF3::GetRandom2 the minimum number of points is 4, the maximum is 10000 for 2-d/3-d functions

Definition at line 666 of file TF3.cxx.

◆ SetRange() [1/3]

void TF3::SetRange ( Double_t  xmin,
Double_t  xmax 
)
inlinevirtual

Initialize the upper and lower bounds to draw the function.

The function range is also used in an histogram fit operation when the option "R" is specified.

Reimplemented from TF2.

Definition at line 143 of file TF3.h.

◆ SetRange() [2/3]

void TF3::SetRange ( Double_t  xmin,
Double_t  ymin,
Double_t  xmax,
Double_t  ymax 
)
inlinevirtual

Initialize the upper and lower bounds to draw the function-.

Reimplemented from TF2.

Definition at line 145 of file TF3.h.

◆ SetRange() [3/3]

void TF3::SetRange ( Double_t  xmin,
Double_t  ymin,
Double_t  zmin,
Double_t  xmax,
Double_t  ymax,
Double_t  zmax 
)
virtual

Initialize the upper and lower bounds to draw the function.

Reimplemented from TF2.

Definition at line 683 of file TF3.cxx.

◆ Variance3X()

virtual Double_t TF3::Variance3X ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 124 of file TF3.h.

◆ Variance3Y()

virtual Double_t TF3::Variance3Y ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 125 of file TF3.h.

◆ Variance3Z()

virtual Double_t TF3::Variance3Z ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  az,
Double_t  bz,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 126 of file TF3.h.

Member Data Documentation

◆ fNpz

Int_t TF3::fNpz
protected

Definition at line 33 of file TF3.h.

◆ fZmax

Double_t TF3::fZmax
protected

Definition at line 32 of file TF3.h.

◆ fZmin

Double_t TF3::fZmin
protected

Definition at line 31 of file TF3.h.

Libraries for TF3:
[legend]

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