virtual | ~THnBase() |
void | TObject::AbstractMethod(const char* method) const |
void | Add(const THnBase* h, Double_t c = 1.) |
void | Add(const TH1* hist, Double_t c = 1.) |
void | AddBinContent(const Int_t* x, Double_t v = 1.) |
virtual void | AddBinContent(Long64_t bin, Double_t v = 1.) |
virtual void | AddBinError2(Long64_t bin, Double_t e2) |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | Browse(TBrowser* b) |
void | CalculateErrors(Bool_t calc = kTRUE) |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
virtual void | TNamed::Clear(Option_t* option = "") |
virtual TObject* | TNamed::Clone(const char* newname = "") const |
virtual Int_t | TNamed::Compare(const TObject* obj) const |
Double_t | ComputeIntegral() |
virtual void | TNamed::Copy(TObject& named) const |
virtual ROOT::THnBaseBinIter* | CreateIter(Bool_t respectAxisRange) const |
virtual void | TObject::Delete(Option_t* option = "")MENU |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
void | Divide(const THnBase* h) |
void | Divide(const THnBase* h1, const THnBase* h2, Double_t c1 = 1., Double_t c2 = 1., Option_t* option = "") |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
virtual void | TObject::Dump() constMENU |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
Long64_t | Fill(const Double_t* x, Double_t w = 1.) |
Long64_t | Fill(const char*[] name, Double_t w = 1.) |
virtual void | TNamed::FillBuffer(char*& buffer) |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
TFitResultPtr | Fit(TF1* f1, Option_t* option = "", Option_t* goption = "") |
TAxis* | GetAxis(Int_t dim) const |
virtual Long64_t | GetBin(const Int_t* idx) const |
virtual Long64_t | GetBin(const Double_t* x) const |
virtual Long64_t | GetBin(const char*[] name) const |
virtual Long64_t | GetBin(const Int_t* idx, Bool_t = kTRUE) |
virtual Long64_t | GetBin(const Double_t* x, Bool_t = kTRUE) |
virtual Long64_t | GetBin(const char*[] name, Bool_t = kTRUE) |
Double_t | GetBinContent(const Int_t* idx) const |
virtual Double_t | GetBinContent(Long64_t bin, Int_t* idx = 0) const |
Double_t | GetBinError(const Int_t* idx) const |
Double_t | GetBinError(Long64_t linidx) const |
virtual Double_t | GetBinError2(Long64_t linidx) const |
Bool_t | GetCalculateErrors() const |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
Double_t | GetEntries() const |
virtual const char* | TObject::GetIconName() const |
TObjArray* | GetListOfAxes() |
const TObjArray* | GetListOfAxes() const |
TList* | GetListOfFunctions() |
virtual const char* | TNamed::GetName() const |
virtual Long64_t | GetNbins() const |
Int_t | GetNdimensions() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
void | GetRandom(Double_t* rand, Bool_t subBinRandom = kTRUE) |
Double_t | GetSumw() const |
Double_t | GetSumw2() const |
Double_t | GetSumwx(Int_t dim) const |
Double_t | GetSumwx2(Int_t dim) const |
virtual const char* | TNamed::GetTitle() const |
virtual UInt_t | TObject::GetUniqueID() const |
Double_t | GetWeightSum() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TNamed::Hash() const |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
virtual void | TObject::Inspect() constMENU |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | IsFolder() const |
Bool_t | IsInRange(Int_t* coord) const |
Bool_t | TObject::IsOnHeap() const |
virtual Bool_t | TNamed::IsSortable() const |
Bool_t | TObject::IsZombie() const |
virtual void | TNamed::ls(Option_t* option = "") const |
void | TObject::MayNotUse(const char* method) const |
Long64_t | Merge(TCollection* list) |
void | Multiply(const THnBase* h) |
void | Multiply(TF1* f, Double_t c = 1.) |
virtual Bool_t | TObject::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
void | TObject::operator delete(void* ptr) |
void | TObject::operator delete(void* ptr, void* vp) |
void | TObject::operator delete[](void* ptr) |
void | TObject::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) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | Print(Option_t* option = "") const |
void | PrintBin(Int_t* coord, Option_t* options) const |
void | PrintBin(Long64_t idx, Option_t* options) const |
void | PrintEntries(Long64_t from = 0, Long64_t howmany = -1, Option_t* options = 0) const |
TH1D* | Projection(Int_t xDim, Option_t* option = "") const |
TH2D* | Projection(Int_t yDim, Int_t xDim, Option_t* option = "") const |
TH3D* | Projection(Int_t xDim, Int_t yDim, Int_t zDim, Option_t* option = "") const |
THnBase* | ProjectionND(Int_t ndim, const Int_t* dim, Option_t* option = "") const |
virtual Int_t | TObject::Read(const char* name) |
void | RebinnedAdd(const THnBase* h, Double_t c = 1.) |
virtual void | TObject::RecursiveRemove(TObject* obj) |
virtual void | Reset(Option_t* option = "") |
void | TObject::ResetBit(UInt_t f) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(ostream& out, Option_t* option = "") |
void | Scale(Double_t c) |
void | SetBinContent(const Int_t* idx, Double_t v) |
virtual void | SetBinContent(Long64_t bin, Double_t v) |
void | SetBinEdges(Int_t idim, const Double_t* bins) |
void | SetBinError(const Int_t* idx, Double_t e) |
void | SetBinError(Long64_t bin, Double_t e) |
virtual void | SetBinError2(Long64_t bin, Double_t e2) |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
static void | TObject::SetDtorOnly(void* obj) |
void | SetEntries(Double_t entries) |
virtual void | TNamed::SetName(const char* name)MENU |
virtual void | TNamed::SetNameTitle(const char* name, const char* title) |
static void | TObject::SetObjectStat(Bool_t stat) |
virtual void | SetTitle(const char* title) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
virtual void | ShowMembers(TMemberInspector& insp) const |
virtual Int_t | TNamed::Sizeof() const |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
virtual void | Sumw2() |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
virtual void | TObject::UseCurrentStyle() |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
void | AddInternal(const THnBase* h, Double_t c, Bool_t rebinned) |
Bool_t | CheckConsistency(const THnBase* h, const char* tag) const |
THnBase* | CloneEmpty(const char* name, const char* title, const TObjArray* axes, Bool_t keepTargetAxis) const |
TH1* | CreateHist(const char* name, const char* title, const TObjArray* axes, Bool_t keepTargetAxis) const |
static THnBase* | CreateHnAny(const char* name, const char* title, const TH1* h1, Bool_t sparse, Int_t chunkSize = 1024 * 16) |
static THnBase* | CreateHnAny(const char* name, const char* title, const THnBase* hn, Bool_t sparse, Int_t chunkSize = 1024 * 16) |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
virtual void | FillBin(Long64_t bin, Double_t w) |
void | FillBinBase(Double_t w) |
void | Init(const char* name, const char* title, const TObjArray* axes, Bool_t keepTargetAxis, Int_t chunkSize = 1024 * 16) |
virtual void | InitStorage(Int_t* nbins, Int_t chunkSize) |
void | TObject::MakeZombie() |
Bool_t | PrintBin(Long64_t idx, Int_t* coord, Option_t* options) const |
TObject* | ProjectionAny(Int_t ndim, const Int_t* dim, Bool_t wantNDim, Option_t* option = "") const |
THnBase* | RebinBase(Int_t group) const |
THnBase* | RebinBase(const Int_t* group) const |
virtual void | Reserve(Long64_t) |
void | ResetBase(Option_t* option = "") |
virtual void | SetFilledBins(Long64_t) |
THnBase() | |
THnBase(const char* name, const char* title, Int_t dim, const Int_t* nbins, const Double_t* xmin, const Double_t* xmax) | |
void | UpdateXStat(const Double_t* x, Double_t w = 1.) |
static TObject::(anonymous) | TObject::kBitMask | |
static TObject::EStatusBits | TObject::kCanDelete | |
static TObject::EStatusBits | TObject::kCannotPick | |
static TObject::EStatusBits | TObject::kHasUUID | |
static TObject::EStatusBits | TObject::kInvalidObject | |
static TObject::(anonymous) | TObject::kIsOnHeap | |
static TObject::EStatusBits | TObject::kIsReferenced | |
static TObject::EStatusBits | TObject::kMustCleanup | |
static TObject::EStatusBits | TObject::kNoContextMenu | |
static TObject::(anonymous) | TObject::kNotDeleted | |
static TObject::EStatusBits | TObject::kObjInCanvas | |
static TObject::(anonymous) | TObject::kOverwrite | |
static TObject::(anonymous) | TObject::kSingleKey | |
static TObject::(anonymous) | TObject::kWriteDelete | |
static TObject::(anonymous) | TObject::kZombie |
TObjArray | fAxes | axes of the histogram |
TObjArray | fBrowsables | ! browser-helpers for each axis |
Double_t | fEntries | number of entries, spread over chunks |
Double_t* | fIntegral | ! array with bin weight sums |
enum(anonymous) | fIntegralStatus | ! status of integral |
TString | TNamed::fName | object identifier |
Int_t | fNdimensions | number of dimensions |
TString | TNamed::fTitle | object title |
Double_t | fTsumw | total sum of weights |
Double_t | fTsumw2 | total sum of weights squared; -1 if no errors are calculated |
TArrayD | fTsumwx | total sum of weight*X for each dimension |
TArrayD | fTsumwx2 | total sum of weight*X*X for each dimension |
static THnBase::(anonymous) | kInvalidInt | |
static THnBase::(anonymous) | kNoInt | |
static THnBase::(anonymous) | kValidInt |
Construct a THnBase with "dim" dimensions, "nbins" holds the number of bins for each dimension; "xmin" and "xmax" the minimal and maximal value for each dimension. The arrays "xmin" and "xmax" can be NULL; in that case SetBinEdges() must be called for each dimension.
Create a new THnBase object that is of the same type as *this, but with dimensions and bins given by axes. If keepTargetAxis is true, the axes will keep their original xmin / xmax, else they will be restricted to the range selected (first / last).
Initialize axes and name.
Fit a THnSparse with function f since the data is sparse by default a likelihood fit is performed merging all the regions with empty bins for betetr performance efficiency Since the THnSparse is not drawn no graphics options are passed Here is the list of possible options = "I" Use integral of function in bin instead of value at bin center = "X" Use chi2 method (default is log-likelihood method) = "U" Use a User specified fitting algorithm (via SetFCN) = "Q" Quiet mode (minimum printing) = "V" Verbose mode (default is between Q and V) = "E" Perform better Errors estimation using Minos technique = "B" Use this option when you want to fix one or more parameters and the fitting function is like "gaus", "expo", "poln", "landau". = "M" More. Improve fit results = "R" Use the Range specified in the function range
Generate an n-dimensional random tuple based on the histogrammed distribution. If subBinRandom, the returned tuple will be additionally randomly distributed within the randomized bin, using a flat distribution.
Project all bins into a ndim-dimensional THn / THnSparse (whatever *this is) or if (ndim < 4 and !wantNDim) a TH1/2/3 histogram, keeping only axes in dim (specifying ndim dimensions). If "option" contains "E" errors will be calculated. "A" ranges of the taget axes will be ignored. "O" original axis range of the taget axes will be kept, but only bins inside the selected range will be filled.
Scale contents and errors of this histogram by c: this = this * c It does not modify the histogram's number of entries.
Add contents of h scaled by c to this histogram: this = this + c * h Note that if h has Sumw2 set, Sumw2 is automatically called for this if not already set. In contrast to Add(), RebinnedAdd() does not require consistent binning of this and h; instead, each bin's center is used to determine the target bin.
Performs the operation: this = this*c*f1 if errors are defined, errors are also recalculated. Only bins inside the function range are recomputed. IMPORTANT NOTE: If you intend to use the errors of this histogram later you should call Sumw2 before making this operation. This is particularly important if you fit the histogram after calling Multiply()
Replace contents of this histogram by multiplication of h1 by h2 this = (c1*h1)/(c2*h2) Note that if h1 or h2 have Sumw2 set, Sumw2 is automatically called for this if not already set. The resulting errors are calculated assuming uncorrelated content. However, if option ="B" is specified, Binomial errors are computed. In this case c1 and c2 do not make real sense and they are ignored.
Consistency check on (some of) the parameters of two histograms (for operations).
Set the axis # of bins and bin limits on dimension idim
Change (i.e. set) the title. If title is in the form "stringt;string0;string1;string2 ..." the histogram title is set to stringt, the title of axis0 to string0, of axis1 to string1, of axis2 to string2, etc, just like it is done for TH1/TH2/TH3. To insert the character ";" in one of the titles, one should use "#;" or "#semicolon".
Combine the content of "group" neighboring bins into a new bin and return the resulting THnBase. For group=2 and a 3 dimensional histogram, all "blocks" of 2*2*2 bins will be put into a bin.
Combine the content of "group" neighboring bins for each dimension into a new bin and return the resulting THnBase. For group={2,1,1} and a 3 dimensional histogram, pairs of x-bins will be grouped.
Print one bin. If "idx" is != -1 use that to determine the bin, otherwise (if "idx" == -1) use the coordinate in "bin". If "options" contains: '0': only print bins with an error or content != 0 Return whether the bin was printed (depends on options)
Print "howmany" entries starting at "from". If "howmany" is -1, print all. If "options" contains: 'x': print in the order of axis bins, i.e. (0,0,...,0), (0,0,...,1),... '0': only print bins with content != 0
Print a THnBase. If "option" contains: 'a': print axis details 'm': print memory usage 's': print statistics 'c': print its content, too (this can generate a LOT of output!) Other options are forwarded to PrintEntries().
Project all bins into a 1-dimensional histogram, keeping only axis "xDim". If "option" contains "E" errors will be calculated. "A" ranges of the taget axes will be ignored. "O" original axis range of the taget axes will be kept, but only bins inside the selected range will be filled.
Project all bins into a 2-dimensional histogram, keeping only axes "xDim" and "yDim". WARNING: just like TH3::Project3D("yx") and TTree::Draw("y:x"), Projection(y,x) uses the first argument to define the y-axis and the second for the x-axis! If "option" contains "E" errors will be calculated. "A" ranges of the taget axes will be ignored.
{xDim, yDim}
Project all bins into a 3-dimensional histogram, keeping only axes "xDim", "yDim", and "zDim". If "option" contains "E" errors will be calculated. "A" ranges of the taget axes will be ignored. "O" original axis range of the taget axes will be kept, but only bins inside the selected range will be filled.
{xDim, yDim, zDim}