ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RooCurve Class Reference

A RooCurve is a one-dimensional graphical representation of a real-valued function.

A curve is approximated by straight line segments with endpoints chosen to give a "good" approximation to the true curve. The goodness of the approximation is controlled by a precision and a resolution parameter. To view the points where a function y(x) is actually evaluated to approximate a smooth curve, use:

Definition at line 32 of file RooCurve.h.

Public Types

enum  WingMode { NoWings =0, Straight =1, Extended =2 }
 
- Public Types inherited from TGraph
enum  { kClipFrame = BIT(10), kNotEditable = BIT(18) }
 
- Public Types inherited from TObject
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4),
  kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
enum  { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff }
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
- Public Types inherited from RooPrintable
enum  ContentsOption {
  kName =1, kClassName =2, kValue =4, kArgs =8,
  kExtras =16, kAddress =32, kTitle =64, kCollectionHeader =128
}
 
enum  StyleOption {
  kInline =1, kSingleLine =2, kStandard =3, kVerbose =4,
  kTreeStructure =5
}
 

Public Member Functions

 RooCurve ()
 
 RooCurve (const RooAbsReal &func, RooAbsRealLValue &x, Double_t xlo, Double_t xhi, Int_t xbins, Double_t scaleFactor=1, const RooArgSet *normVars=0, Double_t prec=1e-3, Double_t resolution=1e-3, Bool_t shiftToZero=kFALSE, WingMode wmode=Extended, Int_t nEvalError=-1, Int_t doEEVal=kFALSE, Double_t eeVal=0, Bool_t showProgress=kFALSE)
 Create a 1-dim curve of the value of the specified real-valued expression as a function of x. More...
 
 RooCurve (const char *name, const char *title, const RooAbsFunc &func, Double_t xlo, Double_t xhi, UInt_t minPoints, Double_t prec=1e-3, Double_t resolution=1e-3, Bool_t shiftToZero=kFALSE, WingMode wmode=Extended, Int_t nEvalError=-1, Int_t doEEVal=kFALSE, Double_t eeVal=0)
 Create a 1-dim curve of the value of the specified real-valued expression as a function of x. More...
 
virtual ~RooCurve ()
 Destructor. More...
 
 RooCurve (const char *name, const char *title, const RooCurve &c1, const RooCurve &c2, Double_t scale1=1., Double_t scale2=1.)
 Constructor of curve as sum of two other curves. More...
 
void addPoint (Double_t x, Double_t y)
 Add a point with the specified coordinates. Update our y-axis limits. More...
 
Double_t getFitRangeBinW () const
 Get the bin width associated with this plotable object. More...
 
Double_t getFitRangeNEvt (Double_t xlo, Double_t xhi) const
 Return the number of events associated with the plotable object, in the given range. More...
 
Double_t getFitRangeNEvt () const
 Return the number of events associated with the plotable object, it is always 1 for curves. More...
 
virtual void printName (std::ostream &os) const
 Print name of object. More...
 
virtual void printTitle (std::ostream &os) const
 Print the title of this curve. More...
 
virtual void printClassName (std::ostream &os) const
 Print the class name of this curve. More...
 
virtual void printMultiline (std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
 Print the details of this curve. More...
 
virtual void Print (Option_t *options=0) const
 Print graph values. More...
 
Double_t chiSquare (const RooHist &hist, int nFitParam) const
 Calculate the chi^2/NDOF of this curve with respect to the histogram 'hist' accounting nFitParam floating parameters in case the curve was the result of a fit. More...
 
Int_t findPoint (Double_t value, Double_t tolerance=1e-10) const
 Find the nearest point to xvalue. More...
 
Double_t average (Double_t lo, Double_t hi) const
 Return average curve value in [xFirst,xLast] by integrating curve between points and dividing by xLast-xFirst. More...
 
Double_t interpolate (Double_t x, Double_t tolerance=1e-10) const
 Return linearly interpolated value of curve at xvalue. More...
 
Bool_t isIdentical (const RooCurve &other, Double_t tol=1e-6) const
 Return true if curve is identical to other curve allowing for given absolute tolerance on each point compared point. More...
 
RooCurvemakeErrorBand (const std::vector< RooCurve * > &variations, Double_t Z=1) const
 Construct filled RooCurve represented error band that captures alpha% of the variations of the curves passed through argument variations, where the percentage alpha corresponds to the central interval fraction of a significance Z. More...
 
RooCurvemakeErrorBand (const std::vector< RooCurve * > &plusVar, const std::vector< RooCurve * > &minusVar, const TMatrixD &V, Double_t Z=1) const
 Construct filled RooCurve represented error band represent the error added in quadrature defined by the curves arguments plusVar and minusVar corresponding to one-sigma variations of each parameter. More...
 
- Public Member Functions inherited from TGraph
 TGraph ()
 
 TGraph (Int_t n)
 Constructor with only the number of points set the arrays x and y will be set later. More...
 
 TGraph (Int_t n, const Int_t *x, const Int_t *y)
 Graph normal constructor with ints. More...
 
 TGraph (Int_t n, const Float_t *x, const Float_t *y)
 Graph normal constructor with floats. More...
 
 TGraph (Int_t n, const Double_t *x, const Double_t *y)
 Graph normal constructor with doubles. More...
 
 TGraph (const TGraph &gr)
 Copy constructor for this graph. More...
 
TGraphoperator= (const TGraph &)
 Equal operator for this graph. More...
 
 TGraph (const TVectorF &vx, const TVectorF &vy)
 Graph constructor with two vectors of floats in input A graph is build with the X coordinates taken from vx and Y coord from vy The number of points in the graph is the minimum of number of points in vx and vy. More...
 
 TGraph (const TVectorD &vx, const TVectorD &vy)
 Graph constructor with two vectors of doubles in input A graph is build with the X coordinates taken from vx and Y coord from vy The number of points in the graph is the minimum of number of points in vx and vy. More...
 
 TGraph (const TH1 *h)
 Graph constructor importing its parameters from the TH1 object passed as argument. More...
 
 TGraph (const TF1 *f, Option_t *option="")
 Graph constructor importing its parameters from the TF1 object passed as argument. More...
 
 TGraph (const char *filename, const char *format="%lg %lg", Option_t *option="")
 Graph constructor reading input from filename. More...
 
virtual ~TGraph ()
 Graph default destructor. More...
 
virtual void Apply (TF1 *f)
 Apply function f to all the data points f may be a 1-D function TF1 or 2-d function TF2 The Y values of the graph are replaced by the new values computed using the function. More...
 
virtual void Browse (TBrowser *b)
 Browse. More...
 
virtual Double_t Chisquare (TF1 *f1, Option_t *option="") const
 Return the chisquare of this graph with respect to f1. More...
 
virtual void ComputeRange (Double_t &xmin, Double_t &ymin, Double_t &xmax, Double_t &ymax) const
 Compute the x/y range of the points in this graph. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Compute distance from point px,py to a graph. More...
 
virtual void Draw (Option_t *chopt="")
 Draw this graph with its current attributes. More...
 
virtual void DrawGraph (Int_t n, const Int_t *x, const Int_t *y, Option_t *option="")
 Draw this graph with new attributes. More...
 
virtual void DrawGraph (Int_t n, const Float_t *x, const Float_t *y, Option_t *option="")
 Draw this graph with new attributes. More...
 
virtual void DrawGraph (Int_t n, const Double_t *x=0, const Double_t *y=0, Option_t *option="")
 Draw this graph with new attributes. More...
 
virtual void DrawPanel ()
 Display a panel with all graph drawing options. More...
 
virtual Double_t Eval (Double_t x, TSpline *spline=0, Option_t *option="") const
 Interpolate points in this graph at x using a TSpline -if spline==0 and option="" a linear interpolation between the two points close to x is computed. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to one event. More...
 
virtual void Expand (Int_t newsize)
 If array sizes <= newsize, expand storage to 2*newsize. More...
 
virtual void Expand (Int_t newsize, Int_t step)
 If graph capacity is less than newsize points then make array sizes equal to least multiple of step to contain newsize points. More...
 
virtual TObjectFindObject (const char *name) const
 Search object named name in the list of functions. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Search object obj in the list of functions. More...
 
virtual TFitResultPtr Fit (const char *formula, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
 Fit this graph with function with name fname. More...
 
virtual TFitResultPtr Fit (TF1 *f1, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
 Fit this graph with function f1. More...
 
virtual void FitPanel ()
 Display a GUI panel with all graph fit options. More...
 
Bool_t GetEditable () const
 Return kTRUE if kNotEditable bit is not set, kFALSE otherwise. More...
 
TF1GetFunction (const char *name) const
 Return pointer to function with name. More...
 
TH1FGetHistogram () const
 Returns a pointer to the histogram used to draw the axis Takes into account the two following cases. More...
 
TListGetListOfFunctions () const
 
virtual Double_t GetCorrelationFactor () const
 Return graph correlation factor. More...
 
virtual Double_t GetCovariance () const
 Return covariance of vectors x,y. More...
 
virtual Double_t GetMean (Int_t axis=1) const
 Return mean value of X (axis=1) or Y (axis=2) More...
 
virtual Double_t GetRMS (Int_t axis=1) const
 Return RMS of X (axis=1) or Y (axis=2) More...
 
Int_t GetMaxSize () const
 
Int_t GetN () const
 
virtual Double_t GetErrorX (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
virtual Double_t GetErrorY (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
virtual Double_t GetErrorXhigh (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
virtual Double_t GetErrorXlow (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
virtual Double_t GetErrorYhigh (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
virtual Double_t GetErrorYlow (Int_t bin) const
 This function is called by GraphFitChisquare. More...
 
Double_tGetX () const
 
Double_tGetY () const
 
virtual Double_tGetEX () const
 
virtual Double_tGetEY () const
 
virtual Double_tGetEXhigh () const
 
virtual Double_tGetEXlow () const
 
virtual Double_tGetEYhigh () const
 
virtual Double_tGetEYlow () const
 
virtual Double_tGetEXlowd () const
 
virtual Double_tGetEXhighd () const
 
virtual Double_tGetEYlowd () const
 
virtual Double_tGetEYhighd () const
 
Double_t GetMaximum () const
 
Double_t GetMinimum () const
 
TAxisGetXaxis () const
 Get x axis of the graph. More...
 
TAxisGetYaxis () const
 Get y axis of the graph. More...
 
virtual Int_t GetPoint (Int_t i, Double_t &x, Double_t &y) const
 Get x and y values for point number i. More...
 
virtual void InitExpo (Double_t xmin=0, Double_t xmax=0)
 Compute Initial values of parameters for an exponential. More...
 
virtual void InitGaus (Double_t xmin=0, Double_t xmax=0)
 Compute Initial values of parameters for a gaussian. More...
 
virtual void InitPolynom (Double_t xmin=0, Double_t xmax=0)
 Compute Initial values of parameters for a polynom. More...
 
virtual Int_t InsertPoint ()
 Insert a new point at the mouse position. More...
 
virtual Double_t Integral (Int_t first=0, Int_t last=-1) const
 Integrate the TGraph data within a given (index) range. More...
 
virtual Bool_t IsEditable () const
 
virtual Int_t IsInside (Double_t x, Double_t y) const
 Return 1 if the point (x,y) is inside the polygon defined by the graph vertices 0 otherwise. More...
 
virtual void LeastSquareFit (Int_t m, Double_t *a, Double_t xmin=0, Double_t xmax=0)
 Least squares polynomial fitting without weights. More...
 
virtual void LeastSquareLinearFit (Int_t n, Double_t &a0, Double_t &a1, Int_t &ifail, Double_t xmin=0, Double_t xmax=0)
 Least square linear fit without weights. More...
 
virtual Int_t Merge (TCollection *list)
 Adds all graphs from the collection to this graph. More...
 
virtual void Paint (Option_t *chopt="")
 Draw this graph with its current attributes. More...
 
void PaintGraph (Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt)
 Draw the (x,y) as a graph. More...
 
void PaintGrapHist (Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt)
 Draw the (x,y) as a histogram. More...
 
virtual void PaintStats (TF1 *fit)
 Draw the stats. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove object from the list of functions. More...
 
virtual Int_t RemovePoint ()
 Delete point close to the mouse position. More...
 
virtual Int_t RemovePoint (Int_t ipoint)
 Delete point number ipoint. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save primitive as a C++ statement(s) on output stream out. More...
 
virtual void SetEditable (Bool_t editable=kTRUE)
 if editable=kFALSE, the graph cannot be modified with the mouse by default a TGraph is editable More...
 
virtual void SetHistogram (TH1F *h)
 
virtual void SetMaximum (Double_t maximum=-1111)
 Set the maximum of the graph. More...
 
virtual void SetMinimum (Double_t minimum=-1111)
 Set the minimum of the graph. More...
 
virtual void Set (Int_t n)
 Set number of points in the graph Existing coordinates are preserved New coordinates above fNpoints are preset to 0. More...
 
virtual void SetPoint (Int_t i, Double_t x, Double_t y)
 Set x and y values for point number i. More...
 
virtual void SetTitle (const char *title="")
 Set graph title. More...
 
virtual void Sort (Bool_t(*greater)(const TGraph *, Int_t, Int_t)=&TGraph::CompareX, Bool_t ascending=kTRUE, Int_t low=0, Int_t high=-1111)
 Sorts the points of this TGraph using in-place quicksort (see e.g. More...
 
virtual void UseCurrentStyle ()
 Set current style settings in this graph This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
void Zero (Int_t &k, Double_t AZ, Double_t BZ, Double_t E2, Double_t &X, Double_t &Y, Int_t maxiterations)
 Find zero of a continuous function. More...
 
- 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)
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual ~TNamed ()
 
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 SetName (const char *name)
 Change (i.e. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Change (i.e. set) all the TNamed parameters (name and title). More...
 
virtual void ls (Option_t *option="") const
 List TNamed 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 (const TObject &object)
 TObject copy ctor. More...
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. 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 pad. More...
 
virtual void Dump () const
 Dump contents of object on stdout. 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 Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual Option_tGetOption () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. 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...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
Bool_t IsOnHeap () const
 
Bool_t IsZombie () const
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. 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 SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. 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 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...
 
voidoperator new (size_t sz)
 
voidoperator new[] (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz, void *vp)
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. 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)
 
void ResetBit (UInt_t f)
 
Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
void InvertBit (UInt_t f)
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. 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...
 
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...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. 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
 
virtual Style_t GetLineStyle () const
 
virtual Width_t GetLineWidth () const
 
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)
 
virtual void SetLineColorAlpha (Color_t lcolor, Float_t lalpha)
 Set a transparent line color. More...
 
virtual void SetLineStyle (Style_t lstyle)
 
virtual void SetLineWidth (Width_t lwidth)
 
 ClassDef (TAttLine, 2)
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 
 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
 
virtual Style_t GetFillStyle () const
 
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)
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color. More...
 
virtual void SetFillStyle (Style_t fstyle)
 
- Public Member Functions inherited from TAttMarker
 TAttMarker ()
 
 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
 
virtual Style_t GetMarkerStyle () const
 
virtual Size_t GetMarkerSize () const
 
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)
 
virtual void SetMarkerColorAlpha (Color_t mcolor, Float_t malpha)
 Set a transparent marker color. More...
 
virtual void SetMarkerStyle (Style_t mstyle=1)
 
virtual void SetMarkerSize (Size_t msize=1)
 
 ClassDef (TAttMarker, 2)
 
- Public Member Functions inherited from RooPlotable
 RooPlotable ()
 
virtual ~RooPlotable ()
 
const char * getYAxisLabel () const
 
void setYAxisLabel (const char *label)
 
void updateYAxisLimits (Double_t y)
 
void setYAxisLimits (Double_t ymin, Double_t ymax)
 
Double_t getYAxisMin () const
 
Double_t getYAxisMax () const
 
TObjectcrossCast ()
 Return cast of RooPlotable as TObject. More...
 
- Public Member Functions inherited from RooPrintable
 RooPrintable ()
 
virtual ~RooPrintable ()
 
virtual void printStream (std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
 Print description of object on ostream, printing contents set by contents integer, which is interpreted as an OR of 'enum ContentsOptions' values and in the style given by 'enum StyleOption'. More...
 
virtual void printAddress (std::ostream &os) const
 Print class name of object. More...
 
virtual void printValue (std::ostream &os) const
 Interface to print value of object. More...
 
virtual void printArgs (std::ostream &os) const
 Interface for printing of object arguments. More...
 
virtual void printExtras (std::ostream &os) const
 Interface to print extras of object. More...
 
virtual void printTree (std::ostream &os, TString indent="") const
 Interface for tree structure printing of object. More...
 
virtual Int_t defaultPrintContents (Option_t *opt) const
 Default choice of contents to be printed (name and value) More...
 
virtual StyleOption defaultPrintStyle (Option_t *opt) const
 

Protected Member Functions

void calcBandInterval (const std::vector< RooCurve * > &variations, Int_t i, Double_t Z, Double_t &lo, Double_t &hi, Bool_t approxGauss) const
 
void calcBandInterval (const std::vector< RooCurve * > &plusVar, const std::vector< RooCurve * > &minusVar, Int_t i, const TMatrixD &V, Double_t Z, Double_t &lo, Double_t &hi) const
 Retrieve variation points from curves. More...
 
void initialize ()
 Perform initialization that is common to all curves. More...
 
void addPoints (const RooAbsFunc &func, Double_t xlo, Double_t xhi, Int_t minPoints, Double_t prec, Double_t resolution, WingMode wmode, Int_t numee=0, Bool_t doEEVal=kFALSE, Double_t eeVal=0., std::list< Double_t > *samplingHint=0)
 Add points calculated with the specified function, over the range (xlo,xhi). More...
 
void addRange (const RooAbsFunc &func, Double_t x1, Double_t x2, Double_t y1, Double_t y2, Double_t minDy, Double_t minDx, Int_t numee=0, Bool_t doEEVal=kFALSE, Double_t eeVal=0.)
 Fill the range (x1,x2) with points calculated using func(&x). More...
 
void shiftCurveToZero (Double_t prevYMax)
 Find lowest point in curve and move all points in curve so that lowest point will go exactly through zero. More...
 
- Protected Member Functions inherited from TGraph
virtual void SwapPoints (Int_t pos1, Int_t pos2)
 Swap points. More...
 
virtual Double_t ** Allocate (Int_t newsize)
 
Double_t ** AllocateArrays (Int_t Narrays, Int_t arraySize)
 Allocate arrays. More...
 
virtual Bool_t CopyPoints (Double_t **newarrays, Int_t ibegin, Int_t iend, Int_t obegin)
 Copy points from fX and fY to arrays[0] and arrays[1] or to fX and fY if arrays == 0 and ibegin != iend. More...
 
virtual void CopyAndRelease (Double_t **newarrays, Int_t ibegin, Int_t iend, Int_t obegin)
 Copy points from fX and fY to arrays[0] and arrays[1] or to fX and fY if arrays == 0 and ibegin != iend. More...
 
Bool_t CtorAllocate ()
 In constructors set fNpoints than call this method. More...
 
Double_t ** ExpandAndCopy (Int_t size, Int_t iend)
 if size > fMaxSize allocate new arrays of 2*size points and copy iend first points. More...
 
virtual void FillZero (Int_t begin, Int_t end, Bool_t from_ctor=kTRUE)
 Set zero values for point arrays in the range [begin, end) Should be redefined in descendant classes. More...
 
Double_t ** ShrinkAndCopy (Int_t size, Int_t iend)
 if size*2 <= fMaxSize allocate new arrays of size points, copy points [0,oend). More...
 
virtual Bool_t DoMerge (const TGraph *g)
 protected function to perform the merge operation of a graph More...
 
- Protected Member Functions inherited from TObject
void MakeZombie ()
 
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 

Protected Attributes

Bool_t _showProgress
 
- Protected Attributes inherited from TGraph
Int_t fMaxSize
 
Int_t fNpoints
 Current dimension of arrays fX and fY. More...
 
Double_tfX
 
Double_tfY
 
TListfFunctions
 
TH1FfHistogram
 
Double_t fMinimum
 
Double_t fMaximum
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttLine
Color_t fLineColor
 
Style_t fLineStyle
 
Width_t fLineWidth
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 
Style_t fFillStyle
 
- Protected Attributes inherited from TAttMarker
Color_t fMarkerColor
 
Style_t fMarkerStyle
 
Size_t fMarkerSize
 
- Protected Attributes inherited from RooPlotable
TString _yAxisLabel
 
Double_t _ymin
 
Double_t _ymax
 
Double_t _normValue
 

Additional Inherited Members

- Static Public Member Functions inherited from TGraph
static Bool_t CompareArg (const TGraph *gr, Int_t left, Int_t right)
 Return kTRUE if point number "left"'s argument (angle with respect to positive x-axis) is bigger than that of point number "right". More...
 
static Bool_t CompareX (const TGraph *gr, Int_t left, Int_t right)
 Return kTRUE if fX[left] > fX[right]. Can be used by Sort. More...
 
static Bool_t CompareY (const TGraph *gr, Int_t left, Int_t right)
 Return kTRUE if fY[left] > fY[right]. Can be used by Sort. More...
 
static Bool_t CompareRadius (const TGraph *gr, Int_t left, Int_t right)
 Return kTRUE if point number "left"'s distance to origin is bigger than that of point number "right". More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Member Functions inherited from RooPrintable
static std::ostream & defaultPrintStream (std::ostream *os=0)
 Return a reference to the current default stream to use in Print(). More...
 
static void nameFieldLength (Int_t newLen)
 Set length of field reserved from printing name of RooAbsArgs in multi-line collection printing to given amount. More...
 
- Static Protected Member Functions inherited from TGraph
static void SwapValues (Double_t *arr, Int_t pos1, Int_t pos2)
 Swap values. More...
 
- Static Protected Attributes inherited from RooPrintable
static Int_t _nameLength
 

#include <RooCurve.h>

Inheritance diagram for RooCurve:
[legend]

Member Enumeration Documentation

Enumerator
NoWings 
Straight 
Extended 

Definition at line 35 of file RooCurve.h.

Constructor & Destructor Documentation

RooCurve::RooCurve ( )

Referenced by makeErrorBand().

RooCurve::RooCurve ( const RooAbsReal f,
RooAbsRealLValue x,
Double_t  xlo,
Double_t  xhi,
Int_t  xbins,
Double_t  scaleFactor = 1,
const RooArgSet normVars = 0,
Double_t  prec = 1e-3,
Double_t  resolution = 1e-3,
Bool_t  shiftToZero = kFALSE,
WingMode  wmode = Extended,
Int_t  nEvalError = -1,
Int_t  doEEVal = kFALSE,
Double_t  eeVal = 0,
Bool_t  showProg = kFALSE 
)

Create a 1-dim curve of the value of the specified real-valued expression as a function of x.

Use the optional precision parameter to control how precisely the smooth curve is rasterized. Use the optional argument set to specify how the expression should be normalized. Use the optional scale factor to rescale the expression after normalization. If shiftToZero is set, the entire curve is shift down to make the lowest point in of the curve go through zero.

Definition at line 82 of file RooCurve.cxx.

RooCurve::RooCurve ( const char *  name,
const char *  title,
const RooAbsFunc func,
Double_t  xlo,
Double_t  xhi,
UInt_t  minPoints,
Double_t  prec = 1e-3,
Double_t  resolution = 1e-3,
Bool_t  shiftToZero = kFALSE,
WingMode  wmode = Extended,
Int_t  nEvalError = -1,
Int_t  doEEVal = kFALSE,
Double_t  eeVal = 0 
)

Create a 1-dim curve of the value of the specified real-valued expression as a function of x.

Use the optional precision parameter to control how precisely the smooth curve is rasterized. If shiftToZero is set, the entire curve is shift down to make the lowest point in of the curve go through zero.

Definition at line 155 of file RooCurve.cxx.

RooCurve::~RooCurve ( )
virtual

Destructor.

Definition at line 231 of file RooCurve.cxx.

RooCurve::RooCurve ( const char *  name,
const char *  title,
const RooCurve c1,
const RooCurve c2,
Double_t  scale1 = 1.,
Double_t  scale2 = 1. 
)

Constructor of curve as sum of two other curves.

Csum = scale1*c1 + scale2*c2

Definition at line 184 of file RooCurve.cxx.

Member Function Documentation

void RooCurve::addPoint ( Double_t  x,
Double_t  y 
)

Add a point with the specified coordinates. Update our y-axis limits.

Definition at line 458 of file RooCurve.cxx.

Referenced by addPoints(), addRange(), makeErrorBand(), and RooCurve().

void RooCurve::addPoints ( const RooAbsFunc func,
Double_t  xlo,
Double_t  xhi,
Int_t  minPoints,
Double_t  prec,
Double_t  resolution,
WingMode  wmode,
Int_t  numee = 0,
Bool_t  doEEVal = kFALSE,
Double_t  eeVal = 0.,
std::list< Double_t > *  samplingHint = 0 
)
protected

Add points calculated with the specified function, over the range (xlo,xhi).

Add at least minPoints equally spaced points, and add sufficient points so that the maximum deviation from the final straight-line segements is prec*(ymax-ymin), down to a minimum horizontal spacing of resolution*(xhi-xlo).

Definition at line 290 of file RooCurve.cxx.

Referenced by RooCurve().

void RooCurve::addRange ( const RooAbsFunc func,
Double_t  x1,
Double_t  x2,
Double_t  y1,
Double_t  y2,
Double_t  minDy,
Double_t  minDx,
Int_t  numee = 0,
Bool_t  doEEVal = kFALSE,
Double_t  eeVal = 0. 
)
protected

Fill the range (x1,x2) with points calculated using func(&x).

No point will be added at x1, and a point will always be added at x2. The density of points will be calculated so that the maximum deviation from a straight line approximation is prec*(ymax-ymin) down to the specified minimum horizontal spacing.

Definition at line 413 of file RooCurve.cxx.

Referenced by addPoints().

Double_t RooCurve::average ( Double_t  lo,
Double_t  hi 
) const

Return average curve value in [xFirst,xLast] by integrating curve between points and dividing by xLast-xFirst.

Definition at line 599 of file RooCurve.cxx.

Referenced by chiSquare(), and RooHist::makeResidHist().

void RooCurve::calcBandInterval ( const std::vector< RooCurve * > &  variations,
Int_t  i,
Double_t  Z,
Double_t lo,
Double_t hi,
Bool_t  approxGauss 
) const
protected

Definition at line 826 of file RooCurve.cxx.

Referenced by makeErrorBand().

void RooCurve::calcBandInterval ( const std::vector< RooCurve * > &  plusVar,
const std::vector< RooCurve * > &  minusVar,
Int_t  i,
const TMatrixD V,
Double_t  Z,
Double_t lo,
Double_t hi 
) const
protected

Retrieve variation points from curves.

Definition at line 795 of file RooCurve.cxx.

Double_t RooCurve::chiSquare ( const RooHist hist,
int  nFitParam 
) const

Calculate the chi^2/NDOF of this curve with respect to the histogram 'hist' accounting nFitParam floating parameters in case the curve was the result of a fit.

Definition at line 546 of file RooCurve.cxx.

Referenced by RooPlot::chiSquare().

Int_t RooCurve::findPoint ( Double_t  xvalue,
Double_t  tolerance = 1e-10 
) const

Find the nearest point to xvalue.

Return -1 if distance exceeds tolerance

Definition at line 663 of file RooCurve.cxx.

Referenced by average(), and interpolate().

Double_t RooCurve::getFitRangeBinW ( ) const
virtual

Get the bin width associated with this plotable object.

It is alwats zero for curves

Implements RooPlotable.

Definition at line 490 of file RooCurve.cxx.

Double_t RooCurve::getFitRangeNEvt ( Double_t  xlo,
Double_t  xhi 
) const
virtual

Return the number of events associated with the plotable object, in the given range.

It is always 1 for curves

Implements RooPlotable.

Definition at line 480 of file RooCurve.cxx.

Double_t RooCurve::getFitRangeNEvt ( ) const
virtual

Return the number of events associated with the plotable object, it is always 1 for curves.

Implements RooPlotable.

Definition at line 471 of file RooCurve.cxx.

void RooCurve::initialize ( void  )
protected

Perform initialization that is common to all curves.

Definition at line 240 of file RooCurve.cxx.

Referenced by RooCurve().

Double_t RooCurve::interpolate ( Double_t  xvalue,
Double_t  tolerance = 1e-10 
) const

Return linearly interpolated value of curve at xvalue.

If distance to nearest point is less than tolerance, return nearest point value instead

Definition at line 685 of file RooCurve.cxx.

Referenced by average(), isIdentical(), RooHist::makeResidHist(), and RooCurve().

Bool_t RooCurve::isIdentical ( const RooCurve other,
Double_t  tol = 1e-6 
) const

Return true if curve is identical to other curve allowing for given absolute tolerance on each point compared point.

Definition at line 864 of file RooCurve.cxx.

Referenced by RooUnitTest::runCompTests().

RooCurve * RooCurve::makeErrorBand ( const std::vector< RooCurve * > &  variations,
Double_t  Z = 1 
) const

Construct filled RooCurve represented error band that captures alpha% of the variations of the curves passed through argument variations, where the percentage alpha corresponds to the central interval fraction of a significance Z.

Definition at line 732 of file RooCurve.cxx.

Referenced by RooAbsReal::plotOnWithErrorBand().

RooCurve * RooCurve::makeErrorBand ( const std::vector< RooCurve * > &  plusVar,
const std::vector< RooCurve * > &  minusVar,
const TMatrixD C,
Double_t  Z = 1 
) const

Construct filled RooCurve represented error band represent the error added in quadrature defined by the curves arguments plusVar and minusVar corresponding to one-sigma variations of each parameter.

The resulting error band, combined used the correlation matrix C is multiplied with the significance parameter Z to construct the equivalent of a Z sigma error band (in Gaussian approximation)

Definition at line 764 of file RooCurve.cxx.

virtual void RooCurve::Print ( Option_t chopt = 0) const
inlinevirtual

Print graph values.

Reimplemented from TGraph.

Definition at line 59 of file RooCurve.h.

void RooCurve::printClassName ( std::ostream &  os) const
virtual

Print the class name of this curve.

Reimplemented from RooPrintable.

Definition at line 518 of file RooCurve.cxx.

void RooCurve::printMultiline ( std::ostream &  os,
Int_t  contents,
Bool_t  verbose = kFALSE,
TString  indent = "" 
) const
virtual

Print the details of this curve.

Reimplemented from RooPlotable.

Definition at line 528 of file RooCurve.cxx.

void RooCurve::printName ( std::ostream &  os) const
virtual

Print name of object.

Reimplemented from RooPrintable.

Definition at line 498 of file RooCurve.cxx.

void RooCurve::printTitle ( std::ostream &  os) const
virtual

Print the title of this curve.

Reimplemented from RooPrintable.

Definition at line 509 of file RooCurve.cxx.

void RooCurve::shiftCurveToZero ( Double_t  prevYMax)
protected

Find lowest point in curve and move all points in curve so that lowest point will go exactly through zero.

Definition at line 254 of file RooCurve.cxx.

Referenced by RooCurve().

Member Data Documentation

Bool_t RooCurve::_showProgress
protected

Definition at line 91 of file RooCurve.h.

Referenced by addPoints(), addRange(), and RooCurve().

Collaboration diagram for RooCurve:
[legend]

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