40 bool vectorize =
false);
49 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,
EAddToList addToGlobList =
EAddToList::kDefault);
52 template <
class PtrObj,
typename MemFn>
53 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,
55 TF2(
name,p,memFn,
xmin,
xmax,
ymin,
ymax,npar,ndim,addToGlobList),
60 template <
typename Func>
108 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) {
return Moment3(1,ax,bx,0,ay,by,0,az,bz,epsilon);}
109 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) {
return Moment3(0,ax,bx,1,ay,by,0,az,bz,epsilon);}
110 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) {
return Moment3(0,ax,bx,0,ay,by,1,az,bz,epsilon);}
112 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) {
return CentralMoment3(2,ax,bx,0,ay,by,0,az,bz,epsilon);}
113 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) {
return CentralMoment3(0,ax,bx,2,ay,by,0,az,bz,epsilon);}
114 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) {
return CentralMoment3(0,ax,bx,0,ay,by,2,az,bz,epsilon);}
116 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) {
return CentralMoment3(1,ax,bx,1,ay,by,0,az,bz,epsilon);}
117 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) {
return CentralMoment3(1,ax,bx,0,ay,by,1,az,bz,epsilon);}
118 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) {
return CentralMoment3(0,ax,bx,1,ay,by,1,az,bz,epsilon);}
int Int_t
Signed integer 4 bytes (int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
const char Option_t
Option string (const char).
#define ClassDefOverride(name, id)
EAddToList
Add to list behavior.
virtual void GetRange(Double_t *xmin, Double_t *xmax) const
void GetRange(Double_t &xmin, Double_t &ymin, Double_t &xmax, Double_t &ymax) const override
void SetRange(Double_t xmin, Double_t xmax) override
virtual Double_t Integral(Double_t ax, Double_t bx, Double_t ay, Double_t by, Double_t epsrel=1.e-6)
TF3(const char *name, const char *formula, Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax, Option_t *opt)
virtual Double_t GetZmin() const
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 void SetClippingBoxOff()
void GetRange(Double_t &xmin, Double_t &xmax) const override
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)
TObject * DrawIntegral(Option_t *="al") override
void Paint(Option_t *option="") override
This method must be overridden if a class wants to paint itself.
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, EAddToList addToGlobList=EAddToList::kDefault, bool vectorize=false)
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)
Bool_t IsInside(const Double_t *x) const override
return kTRUE if the point is inside the function range
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)
virtual Double_t GetMaximumXYZ(Double_t &x, Double_t &y, Double_t &z)
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to an event at (px,py).
Double_t fZmin
Lower bound for the range in z.
TF3 & operator=(const TF3 &rhs)
virtual Double_t GetMinimumXYZ(Double_t &x, Double_t &y, Double_t &z)
static void InitStandardFunctions()
void GetRange(Double_t &xmin, Double_t &ymin, Double_t &zmin, Double_t &xmax, Double_t &ymax, Double_t &zmax) const override
void Copy(TObject &f3) const override
Copy this to obj.
Double_t FindMinMax(Double_t *x, bool findmax) const override
virtual void GetRandom3(Double_t &xrandom, Double_t &yrandom, Double_t &zrandom, TRandom *rng=nullptr)
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)
Bool_t fClipBoxOn
! Is clip box on
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)
Int_t fNpz
Number of points along z used for the graphical representation.
virtual Bool_t GetClippingBoxOn() const
void Draw(Option_t *option="") override
Default Draw method for all objects.
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)
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, EAddToList addToGlobList=EAddToList::kDefault)
Template constructors from any C++ callable object, defining the operator() (double * ,...
virtual void SetClippingBoxOn(Double_t xclip=0, Double_t yclip=0, Double_t zclip=0)
TObject * DrawDerivative(Option_t *="al") override
virtual const Double_t * GetClippingBox() const
Double_t fZmax
Upper bound for the range in z.
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)
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Computes distance from point (px,py) to the object.
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, EAddToList addToGlobList=EAddToList::kDefault)
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 GetZmax() const
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, EAddToList addToGlobList=EAddToList::kDefault)
virtual void SetNpz(Int_t npz=30)
void SetRange(Double_t xmin, Double_t ymin, Double_t zmin, Double_t xmax, Double_t ymax, Double_t zmax) override
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)
TH1 * CreateHistogram() override
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, EAddToList addToGlobList=EAddToList::kDefault)
Template constructors from a pointer to any C++ class of type PtrObj with a specific member function ...
void Save(Double_t xmin, Double_t xmax, Double_t ymin, Double_t ymax, Double_t zmin, Double_t zmax) override
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 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)
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, EAddToList addToGlobList=EAddToList::kDefault)
Double_t GetSave(const Double_t *x) override
Double_t fClipBox[3]
! Coordinates of clipbox
void SetRange(Double_t xmin, Double_t xmax) override
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save a primitive as a C++ statement(s) on output stream "out".
TH1 is the base class of all histogram classes in ROOT.
Mother of all ROOT objects.
This is the base class for the ROOT Random number generators.
ParamFunctorTempl< double > ParamFunctor