Logo ROOT   6.16/01
Reference Guide
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TF2 Class Reference

A 2-Dim function with parameters.

Expression using variables x and y

{
TF2 *f2 = new TF2("f2","sin(x)*sin(y)/(x*y)",0,5,0,5);
f2->Draw();
}
A 2-Dim function with parameters.
Definition: TF2.h:29
virtual void Draw(Option_t *option="")
Draw this function with its current attributes.
Definition: TF2.cxx:241
TF2()
TF2 default constructor.
Definition: TF2.cxx:64

Expression using a user defined function

Double_t func(Double_t *val, Double_t *par)
{
Float_t x = val[0];
Float_t y = val[1];
Double_t f = x*x-y*y;
return f;
}
void fplot()
{
TF2 *f = new TF2("f",func,-1,1,-1,1);
f->Draw("surf1");
}
#define f(i)
Definition: RSha256.hxx:104
double Double_t
Definition: RtypesCore.h:55
float Float_t
Definition: RtypesCore.h:53
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17

See TF1 class for the list of functions formats

Definition at line 29 of file TF2.h.

Public Member Functions

 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...
 
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<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)
 
 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, 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...
 
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...
 
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)
 
 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...
 
 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 void Copy (TObject &f2) const
 Copy this F2 to a new F2. More...
 
virtual Double_t Covariance2XY (Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsilon=0.000001)
 
virtual TH1CreateHistogram ()
 Create a histogram from function. 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 TF1DrawCopy (Option_t *option="") const
 Draw a copy of 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 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 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 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 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 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 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 &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 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 void GetRange (Double_t *xmin, Double_t *xmax) const
 Return range of a generic N-D function. More...
 
virtual Double_t GetSave (const Double_t *x)
 Get value corresponding to X in array of fSave values. More...
 
virtual Double_t GetYmax () const
 
virtual Double_t GetYmin () const
 
virtual Double_t Integral (Double_t a, Double_t b, Double_t epsrel=1.e-12)
 IntegralOneDim or analytical integral. More...
 
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 Bool_t IsInside (const Double_t *x) const
 Return kTRUE is the point is inside the function range. 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 Paint (Option_t *option="")
 Paint this 2-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 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 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)
 
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, 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, 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...
 
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)
 
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)
 
 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)(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...
 
 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...
 
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<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)
 
 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<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 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 void Copy (TObject &f1) const
 Copy this F1 to a new F1. More...
 
virtual TH1CreateHistogram ()
 
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. 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. 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. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Compute distance from point px,py to a function. 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 Draw (Option_t *option="")
 Draw this function with its current attributes. More...
 
virtual TF1DrawCopy (Option_t *option="") const
 Draw a copy of this function with its current attributes. More...
 
virtual TObjectDrawDerivative (Option_t *option="al")
 Draw derivative of this function. More...
 
virtual void DrawF1 (Double_t xmin, Double_t xmax, Option_t *option="")
 Draw function between xmin and xmax. More...
 
virtual TObjectDrawIntegral (Option_t *option="al")
 Draw integral of this function. 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 ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to one event. 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 char * GetObjectInfo (Int_t px, Int_t py) const
 Redefines TObject::GetObjectInfo. More...
 
virtual Double_t GetParameter (const TString &name) const
 
virtual Double_t GetParameter (Int_t ipar) 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 Double_t GetRandom ()
 Return a random number following this function shape. More...
 
virtual Double_t GetRandom (Double_t xmin, Double_t xmax)
 Return a random number following this function shape in [xmin,xmax]. 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 void GetRange (Double_t *xmin, Double_t *xmax) const
 Return range of a generic N-D function. More...
 
virtual Double_t GetSave (const Double_t *x)
 Get value corresponding to X in array of fSave values. 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 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)
 
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)
 
template<class T >
void GradientParTempl (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)
 
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, Double_t epsrel, Double_t &relerr)
 See more general prototype below. 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 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 IsInside (const Double_t *x) const
 return kTRUE if the point is inside the function range More...
 
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...
 
template<class T >
operator() (const T *x, const Double_t *params=nullptr)
 
virtual Double_t operator() (Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
 
TF1operator= (const TF1 &rhs)
 Operator =. More...
 
virtual void Paint (Option_t *option="")
 Paint this function with its current attributes. 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 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 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... Optionally a pointer to a vector (with size fNpar) of the parameter indices in the FitResult can be passed This is useful in the case of a combined fit with different functions, and the FitResult contains the global result By default it is assume that indpar = {0,1,2,....,fNpar-1}. More...
 
template<typename Func >
void SetFunction (Func f)
 
template<class PtrObj , typename MemFn >
void SetFunction (PtrObj &p, MemFn memFn)
 
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 (const TString &name, Double_t value)
 
virtual void SetParameter (Int_t param, 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 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)
 
virtual void SetRange (Double_t xmin, Double_t ymin, Double_t zmin, Double_t xmax, Double_t ymax, Double_t zmax)
 
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 TNamed &named)
 TNamed copy ctor. More...
 
 TNamed (const TString &name, const TString &title)
 
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 Copy (TObject &named) const
 Copy this to obj. 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 Print (Option_t *option="") const
 Print TNamed name and title. 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 void SetTitle (const char *title="")
 Set the title of the TNamed. 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...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
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. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
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 abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. 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 ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). 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 const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
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...
 
virtual ULong_t Hash () const
 Return hash value for this object. 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
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
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 Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. 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...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
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

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 class  EAddToList { kDefault , kAdd , 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 <TF2.h>

Inheritance diagram for TF2:
[legend]

Constructor & Destructor Documentation

◆ TF2() [1/10]

TF2::TF2 ( )

TF2 default constructor.

Definition at line 64 of file TF2.cxx.

◆ TF2() [2/10]

TF2::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.

See TFormula constructor for explanation of the formula syntax.

If formula has the form "fffffff;xxxx;yyyy", it is assumed that the formula string is "fffffff" and "xxxx" and "yyyy" are the titles for the X and Y axis respectively.

Definition at line 78 of file TF2.cxx.

◆ TF2() [3/10]

TF2::TF2 ( 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,
Int_t  npar = 0,
Int_t  ndim = 2 
)

F2 constructor using a pointer to a compiled function.

npar is the number of free parameters used by the function

This constructor creates a function of type C when invoked with the normal C++ compiler.

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

Definition at line 112 of file TF2.cxx.

◆ TF2() [4/10]

TF2::TF2 ( 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,
Int_t  npar = 0,
Int_t  ndim = 2 
)

F2 constructor using a pointer to a compiled function.

npar is the number of free parameters used by the function

This constructor creates a function of type C when invoked with the normal C++ compiler.

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

Definition at line 133 of file TF2.cxx.

◆ TF2() [5/10]

TF2::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 *)

npar is the number of free parameters used by the function

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

Definition at line 152 of file TF2.cxx.

◆ TF2() [6/10]

template<class PtrObj , typename MemFn >
TF2::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 
)
inline

Definition at line 53 of file TF2.h.

◆ TF2() [7/10]

template<class PtrObj , typename MemFn >
TF2::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 *   
)
inline

backward compatible ctor

Definition at line 61 of file TF2.h.

◆ TF2() [8/10]

template<typename Func >
TF2::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 
)
inline

Definition at line 71 of file TF2.h.

◆ TF2() [9/10]

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

backward compatible ctor

Definition at line 79 of file TF2.h.

◆ TF2() [10/10]

TF2::TF2 ( const TF2 f2)

Copy constructor.

Definition at line 184 of file TF2.cxx.

◆ ~TF2()

TF2::~TF2 ( )
virtual

F2 default destructor.

Definition at line 177 of file TF2.cxx.

Member Function Documentation

◆ CentralMoment2()

Double_t TF2::CentralMoment2 ( Double_t  nx,
Double_t  ax,
Double_t  bx,
Double_t  ny,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
virtual

Return x^nx * y^ny central moment of a 2d function in range [ax,bx],[ay,by].

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

Definition at line 1025 of file TF2.cxx.

◆ Copy()

void TF2::Copy ( TObject f2) const
virtual

Copy this F2 to a new F2.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 192 of file TF2.cxx.

◆ Covariance2XY()

virtual Double_t TF2::Covariance2XY ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 141 of file TF2.h.

◆ CreateHistogram()

TH1 * TF2::CreateHistogram ( )
virtual

Create a histogram from function.

always created it, even if it is already existing

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 677 of file TF2.cxx.

◆ DistancetoPrimitive()

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

Compute distance from point px,py to a function.

Parameters
[in]pxx position
[in]pyy position

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

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 210 of file TF2.cxx.

◆ Draw()

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

Draw this function with its current attributes.

NB. You must use DrawCopy if you want to draw several times the same function in the current canvas.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 241 of file TF2.cxx.

◆ DrawCopy()

TF1 * TF2::DrawCopy ( Option_t option = "") const
virtual

Draw a copy of this function with its current attributes-*.

This function MUST be used instead of Draw when you want to draw the same function with different parameters settings in the same canvas.

Possible option values are:

option description
"SAME" superimpose on top of existing picture
"L" connect all computed points with a straight line
"C" connect all computed points with a smooth curve.

Note that the default value is "F". Therefore to draw on top of an existing picture, specify option "SL"

Reimplemented from TF1.

Definition at line 268 of file TF2.cxx.

◆ DrawDerivative()

virtual TObject * TF2::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 TF1.

Reimplemented in TF3.

Definition at line 94 of file TF2.h.

◆ DrawIntegral()

virtual TObject * TF2::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 TF1.

Reimplemented in TF3.

Definition at line 95 of file TF2.h.

◆ ExecuteEvent()

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

Execute action corresponding to one event.

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

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 298 of file TF2.cxx.

◆ FindMinMax()

Double_t TF2::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 infinity 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 in TF3.

Definition at line 345 of file TF2.cxx.

◆ GetContour()

Int_t TF2::GetContour ( Double_t levels = 0)
virtual

Return contour values into array levels.

The number of contour levels can be returned by getContourLevel

Definition at line 308 of file TF2.cxx.

◆ GetContourLevel()

Double_t TF2::GetContourLevel ( Int_t  level) const
virtual

Return the number of contour levels.

Definition at line 320 of file TF2.cxx.

◆ GetMaximum() [1/2]

Double_t TF2::GetMaximum ( Double_t x) const
virtual

Return maximum value of the function See TF2::GetMinimum.

Definition at line 456 of file TF2.cxx.

◆ GetMaximum() [2/2]

Double_t TF1::GetMaximum ( Double_t  xmin = 0,
Double_t  xmax = 0,
Double_t  epsilon = 1.E-10,
Int_t  maxiter = 100,
Bool_t  logx = false 
) const
virtual

Returns the maximum value of the function.

Method: First, the grid search is used to bracket the maximum with the step size = (xmax-xmin)/fNpx. This way, the step size can be controlled via the SetNpx() function. If the function is unimodal or if its extrema are far apart, setting the fNpx to a small value speeds the algorithm up many times. Then, Brent's method is applied on the bracketed interval epsilon (default = 1.E-10) controls the relative accuracy (if |x| > 1 ) and absolute (if |x| < 1) and maxiter (default = 100) controls the maximum number of iteration of the Brent algorithm If the flag logx is set the grid search is done in log step size This is done automatically if the log scale is set in the current Pad

NOTE: see also TF1::GetMaximumX and TF1::GetX

Reimplemented from TF1.

Definition at line 453 of file TF1.cxx.

◆ GetMaximumXY()

Double_t TF2::GetMaximumXY ( Double_t x,
Double_t y 
) const
virtual

Compute the X and Y values corresponding to the maximum value of the function.

Return the maximum value of the function See TF2::GetMinimumXY

Definition at line 422 of file TF2.cxx.

◆ GetMinimum() [1/2]

Double_t TF2::GetMinimum ( Double_t x) const
virtual

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 infinity 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

Definition at line 447 of file TF2.cxx.

◆ GetMinimum() [2/2]

Double_t TF1::GetMinimum ( Double_t  xmin = 0,
Double_t  xmax = 0,
Double_t  epsilon = 1.E-10,
Int_t  maxiter = 100,
Bool_t  logx = false 
) const
virtual

Returns the minimum value of the function on the (xmin, xmax) interval.

Method: First, the grid search is used to bracket the maximum with the step size = (xmax-xmin)/fNpx. This way, the step size can be controlled via the SetNpx() function. If the function is unimodal or if its extrema are far apart, setting the fNpx to a small value speeds the algorithm up many times. Then, Brent's method is applied on the bracketed interval epsilon (default = 1.E-10) controls the relative accuracy (if |x| > 1 ) and absolute (if |x| < 1) and maxiter (default = 100) controls the maximum number of iteration of the Brent algorithm If the flag logx is set the grid search is done in log step size This is done automatically if the log scale is set in the current Pad

NOTE: see also TF1::GetMaximumX and TF1::GetX

Reimplemented from TF1.

Definition at line 454 of file TF1.cxx.

◆ GetMinimumXY()

Double_t TF2::GetMinimumXY ( Double_t x,
Double_t y 
) const
virtual

Compute the X and Y values corresponding to the minimum value of the function.

Return the minimum value of the function To find the minimum on a range, first set this range via the SetRange function

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

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

Definition at line 407 of file TF2.cxx.

◆ GetNpy()

Int_t TF2::GetNpy ( ) const
inline

Definition at line 100 of file TF2.h.

◆ GetObjectInfo()

char * TF2::GetObjectInfo ( Int_t  px,
Int_t  py 
) const
virtual

Redefines TObject::GetObjectInfo.

Displays the function value corresponding to cursor position px,py

Reimplemented from TF1.

Definition at line 468 of file TF2.cxx.

◆ GetRandom() [1/2]

Double_t TF2::GetRandom ( )
virtual

Return a random number following this function shape.

Reimplemented from TF1.

Definition at line 494 of file TF2.cxx.

◆ GetRandom() [2/2]

Double_t TF2::GetRandom ( Double_t  xmin,
Double_t  xmax 
)
virtual

Return a random number following this function shape.

Reimplemented from TF1.

Definition at line 504 of file TF2.cxx.

◆ GetRandom2()

void TF2::GetRandom2 ( Double_t xrandom,
Double_t yrandom 
)
virtual

Return 2 random numbers following this function shape.

The distribution contained in this TF2 function is integrated over the cell contents. It is normalized to 1. Getting the two 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 points. If the function has sharp peaks, you should increase the number of points (SetNpx, SetNpy) such that the peak is correctly tabulated at several points.

Definition at line 529 of file TF2.cxx.

◆ GetRange() [1/6]

void TF1::GetRange ( Double_t xmin,
Double_t xmax 
) const
virtual

Return range of a 1-D function.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 531 of file TF1.cxx.

◆ GetRange() [2/6]

void TF1::GetRange ( Double_t xmin,
Double_t ymin,
Double_t xmax,
Double_t ymax 
) const
virtual

Return range of a 2-D function.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 532 of file TF1.cxx.

◆ GetRange() [3/6]

void TF2::GetRange ( Double_t xmin,
Double_t ymin,
Double_t xmax,
Double_t ymax 
) const
virtual

Return range of a 2-D function.

Reimplemented from TF1.

Reimplemented in TF3, and TF3.

Definition at line 579 of file TF2.cxx.

◆ GetRange() [4/6]

void TF1::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 TF1.

Reimplemented in TF3.

Definition at line 533 of file TF1.cxx.

◆ GetRange() [5/6]

void TF2::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 TF1.

Reimplemented in TF3, and TF3.

Definition at line 590 of file TF2.cxx.

◆ GetRange() [6/6]

void TF1::GetRange ( Double_t xmin,
Double_t xmax 
) const
virtual

Return range of a generic N-D function.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 305 of file TF1.cxx.

◆ GetSave()

Double_t TF2::GetSave ( const Double_t x)
virtual

Get value corresponding to X in array of fSave values.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 604 of file TF2.cxx.

◆ GetYmax()

virtual Double_t TF2::GetYmax ( ) const
inlinevirtual

Definition at line 116 of file TF2.h.

◆ GetYmin()

virtual Double_t TF2::GetYmin ( ) const
inlinevirtual

Definition at line 115 of file TF2.h.

◆ Integral() [1/2]

Double_t TF1::Integral ( Double_t  a,
Double_t  b,
Double_t  epsrel = 1.e-12 
)
virtual

IntegralOneDim or analytical integral.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 565 of file TF1.cxx.

◆ Integral() [2/2]

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

Return Integral of a 2d function in range [ax,bx],[ay,by] with desired relative accuracy (default value of eps is 1.e-9)

Reimplemented in TF3.

Definition at line 644 of file TF2.cxx.

◆ IsInside()

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

Return kTRUE is the point is inside the function range.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 665 of file TF2.cxx.

◆ Mean2X()

virtual Double_t TF2::Mean2X ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 135 of file TF2.h.

◆ Mean2Y()

virtual Double_t TF2::Mean2Y ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 136 of file TF2.h.

◆ Moment2()

Double_t TF2::Moment2 ( Double_t  nx,
Double_t  ax,
Double_t  bx,
Double_t  ny,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
virtual

Return x^nx * y^ny moment of a 2d function in range [ax,bx],[ay,by].

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

Definition at line 1009 of file TF2.cxx.

◆ operator=()

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

Operator =.

Definition at line 166 of file TF2.cxx.

◆ Paint()

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

Paint this 2-D function with its current attributes.

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 722 of file TF2.cxx.

◆ Save()

void TF2::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 TF1.

Reimplemented in TF3.

Definition at line 776 of file TF2.cxx.

◆ SavePrimitive()

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

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

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 820 of file TF2.cxx.

◆ SetContour()

void TF2::SetContour ( Int_t  nlevels = 20,
const Double_t levels = 0 
)
virtual

Set the number and values of contour levels.

By default the number of contour levels is set to 20.

if argument levels = 0 or missing, equidistant contours are computed

Definition at line 897 of file TF2.cxx.

◆ SetContourLevel()

void TF2::SetContourLevel ( Int_t  level,
Double_t  value 
)
virtual

Set value for one contour level.

Definition at line 918 of file TF2.cxx.

◆ SetNpy()

void TF2::SetNpy ( Int_t  npy = 100)
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 TF2::GetRandom2 the minimum number of points is 4, the maximum is 10000 for 2-d/3-d functions

Definition at line 932 of file TF2.cxx.

◆ SetRange() [1/3]

void TF2::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 TF1.

Reimplemented in TF3.

Definition at line 150 of file TF2.h.

◆ SetRange() [2/3]

void TF2::SetRange ( Double_t  xmin,
Double_t  ymin,
Double_t  xmax,
Double_t  ymax 
)
virtual

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

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 949 of file TF2.cxx.

◆ SetRange() [3/3]

void TF2::SetRange ( Double_t  xmin,
Double_t  ymin,
Double_t  zmin,
Double_t  xmax,
Double_t  ymax,
Double_t  zmax 
)
inlinevirtual

Reimplemented from TF1.

Reimplemented in TF3.

Definition at line 152 of file TF2.h.

◆ Variance2X()

virtual Double_t TF2::Variance2X ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 138 of file TF2.h.

◆ Variance2Y()

virtual Double_t TF2::Variance2Y ( Double_t  ax,
Double_t  bx,
Double_t  ay,
Double_t  by,
Double_t  epsilon = 0.000001 
)
inlinevirtual

Definition at line 139 of file TF2.h.

Member Data Documentation

◆ fContour

TArrayD TF2::fContour
protected

Definition at line 35 of file TF2.h.

◆ fNpy

Int_t TF2::fNpy
protected

Definition at line 34 of file TF2.h.

◆ fYmax

Double_t TF2::fYmax
protected

Definition at line 33 of file TF2.h.

◆ fYmin

Double_t TF2::fYmin
protected

Definition at line 32 of file TF2.h.

Libraries for TF2:
[legend]

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