ROOT logo
ROOT » ROOFIT » ROOFITCORE » RooCurve

class RooCurve: public TGraph, public RooPlotable



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:

  RooPlot *p= y.plotOn(x.frame());
  p->getAttMarker("curve_y")->SetMarkerStyle(20);
  p->setDrawOptions("curve_y","PL");
  p->Draw();

Function Members (Methods)

public:
RooCurve()
RooCurve(const RooCurve&)
RooCurve(const char* name, const char* title, const RooCurve& c1, const RooCurve& c2, Double_t scale1 = 1., Double_t scale2 = 1.)
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, RooCurve::WingMode wmode = Extended, Int_t nEvalError = -1, Int_t doEEVal = kFALSE, Double_t eeVal = 0)
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, RooCurve::WingMode wmode = Extended, Int_t nEvalError = -1, Int_t doEEVal = kFALSE, Double_t eeVal = 0)
virtual~RooCurve()
voidTObject::AbstractMethod(const char* method) const
voidaddPoint(Double_t x, Double_t y)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTGraph::Apply(TF1* f)
Double_taverage(Double_t lo, Double_t hi) const
virtual voidTGraph::Browse(TBrowser* b)
virtual voidTObject::Browse(TBrowser* b)
virtual Double_tTGraph::Chisquare(const TF1* f1) const
Double_tchiSquare(const RooHist& hist, int nFitParam) const
static TClass*Class()
static TClass*RooPlotable::Class()
static TClass*RooPrintable::Class()
static TClass*TGraph::Class()
static TClass*TAttMarker::Class()
static TClass*TAttFill::Class()
static TClass*TAttLine::Class()
static TClass*TNamed::Class()
static TClass*TObject::Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual Int_tTObject::Compare(const TObject* obj) const
static Bool_tTGraph::CompareArg(const TGraph* gr, Int_t left, Int_t right)
static Bool_tTGraph::CompareRadius(const TGraph* gr, Int_t left, Int_t right)
static Bool_tTGraph::CompareX(const TGraph* gr, Int_t left, Int_t right)
static Bool_tTGraph::CompareY(const TGraph* gr, Int_t left, Int_t right)
virtual voidTGraph::ComputeRange(Double_t& xmin, Double_t& ymin, Double_t& xmax, Double_t& ymax) const
voidTAttMarker::Copy(TAttMarker& attmarker) const
voidTAttFill::Copy(TAttFill& attfill) const
voidTAttLine::Copy(TAttLine& attline) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Copy(TObject& object) const
TObject*RooPlotable::crossCast()
virtual Int_tRooPrintable::defaultPrintContents(Option_t* opt) const
static ostream&RooPrintable::defaultPrintStream(ostream* os = 0)
virtual RooPrintable::StyleOptionRooPrintable::defaultPrintStyle(Option_t* opt) const
virtual voidTObject::Delete(Option_t* option = "")MENU
Int_tTAttLine::DistancetoLine(Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
virtual Int_tTGraph::DistancetoPrimitive(Int_t px, Int_t py)
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTGraph::Draw(Option_t* chopt = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTGraph::DrawGraph(Int_t n, const Int_t* x, const Int_t* y, Option_t* option = "")
virtual voidTGraph::DrawGraph(Int_t n, const Float_t* x, const Float_t* y, Option_t* option = "")
virtual voidTGraph::DrawGraph(Int_t n, const Double_t* x = 0, const Double_t* y = 0, Option_t* option = "")
virtual voidTGraph::DrawPanel()MENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual Double_tTGraph::Eval(Double_t x, TSpline* spline = 0, Option_t* option = "") const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTGraph::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTGraph::Expand(Int_t newsize)
virtual voidTGraph::Expand(Int_t newsize, Int_t step)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TGraph::FindObject(const char* name) const
virtual TObject*TGraph::FindObject(const TObject* obj) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Int_tfindPoint(Double_t value, Double_t tolerance = 1e-10) const
virtual Int_tTGraph::Fit(const char* formula, Option_t* option = "", Option_t* goption = "", Axis_t xmin = 0, Axis_t xmax = 0)MENU
virtual Int_tTGraph::Fit(TF1* f1, Option_t* option = "", Option_t* goption = "", Axis_t xmin = 0, Axis_t xmax = 0)MENU
virtual voidTGraph::FitPanel()MENU
virtual Double_tTGraph::GetCorrelationFactor() const
virtual Double_tTGraph::GetCovariance() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Bool_tTGraph::GetEditable() const
virtual Double_tTGraph::GetErrorX(Int_t bin) const
virtual Double_tTGraph::GetErrorXhigh(Int_t bin) const
virtual Double_tTGraph::GetErrorXlow(Int_t bin) const
virtual Double_tTGraph::GetErrorY(Int_t bin) const
virtual Double_tTGraph::GetErrorYhigh(Int_t bin) const
virtual Double_tTGraph::GetErrorYlow(Int_t bin) const
virtual Double_t*TGraph::GetEX() const
virtual Double_t*TGraph::GetEXhigh() const
virtual Double_t*TGraph::GetEXhighd() const
virtual Double_t*TGraph::GetEXlow() const
virtual Double_t*TGraph::GetEXlowd() const
virtual Double_t*TGraph::GetEY() const
virtual Double_t*TGraph::GetEYhigh() const
virtual Double_t*TGraph::GetEYhighd() const
virtual Double_t*TGraph::GetEYlow() const
virtual Double_t*TGraph::GetEYlowd() const
virtual Color_tTAttFill::GetFillColor() const
virtual Style_tTAttFill::GetFillStyle() const
virtual Double_tgetFitRangeBinW() const
virtual Double_tRooPlotable::getFitRangeBinW() const
virtual Double_tgetFitRangeNEvt() const
virtual Double_tRooPlotable::getFitRangeNEvt() const
virtual Double_tgetFitRangeNEvt(Double_t xlo, Double_t xhi) const
virtual Double_tRooPlotable::getFitRangeNEvt(Double_t xlo, Double_t xhi) const
TF1*TGraph::GetFunction(const char* name) const
TH1F*TGraph::GetHistogram() const
virtual const char*TObject::GetIconName() const
virtual Color_tTAttLine::GetLineColor() const
virtual Style_tTAttLine::GetLineStyle() const
virtual Width_tTAttLine::GetLineWidth() const
TList*TGraph::GetListOfFunctions() const
virtual Color_tTAttMarker::GetMarkerColor() const
virtual Size_tTAttMarker::GetMarkerSize() const
virtual Style_tTAttMarker::GetMarkerStyle() const
Double_tTGraph::GetMaximum() const
Int_tTGraph::GetMaxSize() const
virtual Double_tTGraph::GetMean(Int_t axis = 1) const
Double_tTGraph::GetMinimum() const
Int_tTGraph::GetN() const
virtual const char*TNamed::GetName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Int_tTGraph::GetPoint(Int_t i, Double_t& x, Double_t& y) const
virtual Double_tTGraph::GetRMS(Int_t axis = 1) const
virtual const char*TNamed::GetTitle() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Double_t*TGraph::GetX() const
TAxis*TGraph::GetXaxis() const
Double_t*TGraph::GetY() const
TAxis*TGraph::GetYaxis() const
const char*RooPlotable::getYAxisLabel() const
Double_tRooPlotable::getYAxisMax() const
Double_tRooPlotable::getYAxisMin() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTGraph::InitExpo(Double_t xmin = 0, Double_t xmax = 0)
virtual voidTGraph::InitGaus(Double_t xmin = 0, Double_t xmax = 0)
virtual voidTGraph::InitPolynom(Double_t xmin = 0, Double_t xmax = 0)
virtual Int_tTGraph::InsertPoint()MENU
virtual voidTObject::Inspect() constMENU
Double_tinterpolate(Double_t x, Double_t tolerance = 1e-10) const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual TClass*RooPlotable::IsA() const
virtual TClass*RooPrintable::IsA() const
virtual TClass*TGraph::IsA() const
virtual TClass*TAttMarker::IsA() const
virtual TClass*TAttFill::IsA() const
virtual TClass*TAttLine::IsA() const
virtual TClass*TNamed::IsA() const
virtual TClass*TObject::IsA() const
virtual Bool_tTGraph::IsEditable() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tisIdentical(const RooCurve& other, Double_t tol = 1e-6) const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tTObject::IsSortable() const
virtual Bool_tTAttFill::IsTransparent() const
Bool_tTObject::IsZombie() const
virtual voidTGraph::LeastSquareFit(Int_t m, Double_t* a, Double_t xmin = 0, Double_t xmax = 0)
virtual voidTGraph::LeastSquareLinearFit(Int_t n, Double_t& a0, Double_t& a1, Int_t& ifail, Double_t xmin = 0, Double_t xmax = 0)
virtual voidTNamed::ls(Option_t* option = "") const
virtual voidTObject::ls(Option_t* option = "") const
RooCurve*makeErrorBand(const vector<RooCurve*>& variations, Double_t Z = 1) const
RooCurve*makeErrorBand(const vector<RooCurve*>& plusVar, const vector<RooCurve*>& minusVar, const TMatrixD& V, Double_t Z = 1) const
voidTObject::MayNotUse(const char* method) const
virtual Int_tTGraph::Merge(TCollection* list)
virtual voidTAttMarker::Modify()
virtual voidTAttFill::Modify()
virtual voidTAttLine::Modify()
static voidRooPrintable::nameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
RooCurve&operator=(const RooCurve&)
TGraph&TGraph::operator=(const TGraph&)
TAttLine&TAttLine::operator=(const TAttLine&)
TNamed&TNamed::operator=(const TNamed& rhs)
TObject&TObject::operator=(const TObject& rhs)
virtual voidTGraph::Paint(Option_t* chopt = "")
virtual voidTObject::Paint(Option_t* option = "")
voidTGraph::PaintGraph(Int_t npoints, const Double_t* x, const Double_t* y, Option_t* chopt)
voidTGraph::PaintGrapHist(Int_t npoints, const Double_t* x, const Double_t* y, Option_t* chopt)
virtual voidTGraph::PaintStats(TF1* fit)
virtual voidTObject::Pop()
virtual voidPrint(Option_t* options = 0) const
virtual voidTGraph::Print(Option_t* chopt = "") const
virtual voidTNamed::Print(Option_t* option = "") const
virtual voidRooPrintable::printAddress(ostream& os) const
virtual voidRooPrintable::printArgs(ostream& os) const
virtual voidprintClassName(ostream& os) const
virtual voidRooPrintable::printClassName(ostream& os) const
virtual voidRooPrintable::printExtras(ostream& os) const
virtual voidprintMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
virtual voidRooPlotable::printMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
virtual voidprintName(ostream& os) const
virtual voidRooPrintable::printName(ostream& os) const
virtual voidRooPrintable::printStream(ostream& os, Int_t contents, RooPrintable::StyleOption style, TString indent = "") const
virtual voidprintTitle(ostream& os) const
virtual voidRooPrintable::printTitle(ostream& os) const
virtual voidRooPrintable::printTree(ostream& os, TString indent = "") const
virtual voidRooPrintable::printValue(ostream& os) const
virtual Int_tTObject::Read(const char* name)
virtual voidTGraph::RecursiveRemove(TObject* obj)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual Int_tTGraph::RemovePoint()MENU
virtual Int_tTGraph::RemovePoint(Int_t ipoint)
virtual voidTAttFill::ResetAttFill(Option_t* option = "")
virtual voidTAttLine::ResetAttLine(Option_t* option = "")
virtual voidTAttMarker::ResetAttMarker(Option_t* toption = "")
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTAttFill::SaveFillAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1001)
virtual voidTAttLine::SaveLineAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1, Int_t widdef = 1)
virtual voidTAttMarker::SaveMarkerAttributes(ostream& out, const char* name, Int_t coldef = 1, Int_t stydef = 1, Int_t sizdef = 1)
virtual voidTGraph::SavePrimitive(ostream& out, Option_t* option = "")
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidTGraph::Set(Int_t n)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidTGraph::SetEditable(Bool_t editable = kTRUE)TOGGLE GETTER
virtual voidTAttFill::SetFillAttributes()MENU
virtual voidTAttFill::SetFillColor(Color_t fcolor)
virtual voidTAttFill::SetFillStyle(Style_t fstyle)
virtual voidTGraph::SetHistogram(TH1* h)
virtual voidTAttLine::SetLineAttributes()MENU
virtual voidTAttLine::SetLineColor(Color_t lcolor)
virtual voidTAttLine::SetLineStyle(Style_t lstyle)
virtual voidTAttLine::SetLineWidth(Width_t lwidth)
virtual voidTAttMarker::SetMarkerAttributes()MENU
virtual voidTAttMarker::SetMarkerColor(Color_t tcolor = 1)
virtual voidTAttMarker::SetMarkerSize(Size_t msize = 1)
virtual voidTAttMarker::SetMarkerStyle(Style_t mstyle = 1)
virtual voidTGraph::SetMaximum(Double_t maximum = -1111)MENU
virtual voidTGraph::SetMinimum(Double_t minimum = -1111)MENU
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTGraph::SetPoint(Int_t i, Double_t x, Double_t y)
virtual voidTGraph::SetTitle(const char* title = "")MENU
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidRooPlotable::setYAxisLabel(const char* label)
voidRooPlotable::setYAxisLimits(Double_t ymin, Double_t ymax)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidRooPlotable::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidRooPrintable::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTGraph::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTAttMarker::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTAttFill::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTAttLine::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTNamed::ShowMembers(TMemberInspector& insp, char* parent)
virtual voidTObject::ShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
virtual voidTGraph::Sort(Bool_t (*)(const TGraph*, Int_t, Int_t) greater = &TGraph::CompareX, Bool_t ascending = kTRUE, Int_t low = 0, Int_t high = -1111)
virtual voidStreamer(TBuffer& b)
virtual voidTGraph::Streamer(TBuffer& b)
virtual voidTNamed::Streamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
voidRooPlotable::StreamerNVirtual(TBuffer& b)
voidRooPrintable::StreamerNVirtual(TBuffer& b)
voidTGraph::StreamerNVirtual(TBuffer& b)
voidTAttMarker::StreamerNVirtual(TBuffer& b)
voidTAttFill::StreamerNVirtual(TBuffer& b)
voidTAttLine::StreamerNVirtual(TBuffer& b)
voidTNamed::StreamerNVirtual(TBuffer& b)
voidTObject::StreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidRooPlotable::updateYAxisLimits(Double_t y)
virtual voidTGraph::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
voidTGraph::Zero(Int_t& k, Double_t AZ, Double_t BZ, Double_t E2, Double_t& X, Double_t& Y, Int_t maxiterations)
protected:
voidaddPoints(const RooAbsFunc& func, Double_t xlo, Double_t xhi, Int_t minPoints, Double_t prec, Double_t resolution, RooCurve::WingMode wmode, Int_t numee = 0, Bool_t doEEVal = kFALSE, Double_t eeVal = 0., list<Double_t>* samplingHint = 0)
voidaddRange(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.)
virtual Double_t**TGraph::Allocate(Int_t newsize)
Double_t**TGraph::AllocateArrays(Int_t Narrays, Int_t arraySize)
voidcalcBandInterval(const vector<RooCurve*>& variations, Int_t i, Double_t Z, Double_t& lo, Double_t& hi, Bool_t approxGauss) const
voidcalcBandInterval(const vector<RooCurve*>& plusVar, const vector<RooCurve*>& minusVar, Int_t i, const TMatrixD& V, Double_t Z, Double_t& lo, Double_t& hi) const
virtual voidTGraph::CopyAndRelease(Double_t** newarrays, Int_t ibegin, Int_t iend, Int_t obegin)
virtual Bool_tTGraph::CopyPoints(Double_t** newarrays, Int_t ibegin, Int_t iend, Int_t obegin)
Bool_tTGraph::CtorAllocate()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual Int_tTGraph::DoFit(TF1* f1, Option_t* option, Option_t* goption, Axis_t xmin, Axis_t xmax)
Double_t**TGraph::ExpandAndCopy(Int_t size, Int_t iend)
virtual voidTGraph::FillZero(Int_t begin, Int_t end, Bool_t from_ctor = kTRUE)
voidinitialize()
voidTObject::MakeZombie()
voidshiftCurveToZero(Double_t prevYMax)
Double_t**TGraph::ShrinkAndCopy(Int_t size, Int_t iend)
virtual voidTGraph::SwapPoints(Int_t pos1, Int_t pos2)
static voidTGraph::SwapValues(Double_t* arr, Int_t pos1, Int_t pos2)

Data Members

private:
enum WingMode { NoWings
Straight
Extended
};
enum TGraph::[unnamed] { kClipFrame
kNotEditable
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
enum RooPrintable::ContentsOption { kName
kClassName
kValue
kArgs
kExtras
kAddress
kTitle
kCollectionHeader
};
enum RooPrintable::StyleOption { kInline
kSingleLine
kStandard
kVerbose
kTreeStructure
};
protected:
static Int_tRooPrintable::_nameLength
Double_tRooPlotable::_normValue
TStringRooPlotable::_yAxisLabel
Double_tRooPlotable::_ymax
Double_tRooPlotable::_ymin
Color_tTAttFill::fFillColorfill area color
Style_tTAttFill::fFillStylefill area style
TList*TGraph::fFunctionsPointer to list of functions (fits and user)
TH1F*TGraph::fHistogramPointer to histogram used for drawing axis
Color_tTAttLine::fLineColorline color
Style_tTAttLine::fLineStyleline style
Width_tTAttLine::fLineWidthline width
Color_tTAttMarker::fMarkerColorMarker color index
Size_tTAttMarker::fMarkerSizeMarker size
Style_tTAttMarker::fMarkerStyleMarker style
Int_tTGraph::fMaxSize!Current dimension of arrays fX and fY
Double_tTGraph::fMaximumMaximum value for plotting along y
Double_tTGraph::fMinimumMinimum value for plotting along y
TStringTNamed::fNameobject identifier
Int_tTGraph::fNpointsNumber of points <= fMaxSize
TStringTNamed::fTitleobject title
Double_t*TGraph::fX[fNpoints] array of X points
Double_t*TGraph::fY[fNpoints] array of Y points

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooCurve()
 Default constructor
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, RooCurve::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. 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.
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, RooCurve::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.
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

~RooCurve()
 Destructor
void initialize()
 Perform initialization that is common to all curves
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
void addPoints(const RooAbsFunc& func, Double_t xlo, Double_t xhi, Int_t minPoints, Double_t prec, Double_t resolution, RooCurve::WingMode wmode, Int_t numee = 0, Bool_t doEEVal = kFALSE, Double_t eeVal = 0., list<Double_t>* samplingHint = 0)
 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).
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). 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.
void addPoint(Double_t x, Double_t y)
 Add a point with the specified coordinates. Update our y-axis limits.
Double_t getFitRangeNEvt() const
 Return the number of events associated with the plotable object,
 it is always 1 for curves
Double_t getFitRangeNEvt(Double_t xlo, Double_t xhi) const
 Return the number of events associated with the plotable object,
 in the given range. It is always 1 for curves
Double_t getFitRangeBinW() const
 Get the bin width associated with this plotable object.
 It is alwats zero for curves
void printName(ostream& os) const
 Print the name of this curve
void printTitle(ostream& os) const
 Print the title of this curve
void printClassName(ostream& os) const
 Print the class name of this curve
void printMultiline(ostream& os, Int_t contents, Bool_t verbose = kFALSE, TString indent = "") const
 Print the details of this curve
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
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
Int_t findPoint(Double_t value, Double_t tolerance = 1e-10) const
 Find the nearest point to xvalue. Return -1 if distance
 exceeds tolerance
Double_t interpolate(Double_t x, 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
RooCurve* makeErrorBand(const 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
RooCurve* makeErrorBand(const vector<RooCurve*>& plusVar, const 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. 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)
void calcBandInterval(const vector<RooCurve*>& plusVar, const vector<RooCurve*>& minusVar, Int_t i, const TMatrixD& V, Double_t Z, Double_t& lo, Double_t& hi) const
 Retrieve variation points from curves
void calcBandInterval(const vector<RooCurve*>& variations, Int_t i, Double_t Z, Double_t& lo, Double_t& hi, Bool_t approxGauss) const
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.
RooCurve()
void Print(Option_t* options = 0) const
 Printing interface