Base class for the AliTPCCalibViewer and AliTRDCalibViewer used for the calibration monitor Authors: Marian Ivanov (Marian.Ivanov@cern.ch) Jens Wiechula (Jens.Wiechula@cern.ch) Ionut Arsene (iarsene@cern.ch)
virtual | ~AliBaseCalibViewer() |
void | TObject::AbstractMethod(const char* method) const |
virtual const char* | AddAbbreviations(Char_t* c, Bool_t printDrawCommand = kFALSE) |
TFriendElement* | AddFriend(const Char_t* treename, const Char_t* filename) |
TFriendElement* | AddFriend(const Char_t* treename, TFile* file) |
TFriendElement* | AddFriend(TTree* tree, const Char_t* alias, Bool_t warn = kFALSE) |
TFriendElement* | AddReferenceTree(const Char_t* filename, const Char_t* treename = "tree", const Char_t* refname = "R") |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | TObject::Browse(TBrowser* b) |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
virtual void | TObject::Clear(Option_t* = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
virtual void | TObject::Copy(TObject& object) const |
virtual void | Delete(Option_t* option = "") |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | Draw(Option_t* opt = "") |
virtual Long64_t | Draw(const Char_t* varexp, const TCut& selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0) |
virtual Long64_t | Draw(const Char_t* varexp, const Char_t* selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0) |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
Int_t | DrawHisto1D(const Char_t* drawCommand, const Char_t* sector, const Char_t* cuts = 0, const Char_t* sigmas = "2;4;6", Bool_t plotMean = kTRUE, Bool_t plotMedian = kTRUE, Bool_t plotLTM = kTRUE) const |
virtual void | TObject::Dump() constMENU |
virtual Int_t | EasyDraw(const Char_t* drawCommand, const Char_t* sector, const Char_t* cuts = 0, const Char_t* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const |
virtual Int_t | EasyDraw(const Char_t* drawCommand, Int_t sector, const Char_t* cuts = 0, const Char_t* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const |
virtual Int_t | EasyDraw1D(const Char_t* drawCommand, const Char_t* sector, const Char_t* cuts = 0, const Char_t* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const |
virtual Int_t | EasyDraw1D(const Char_t* drawCommand, Int_t sector, const Char_t* cuts = 0, const Char_t* drawOptions = 0, Bool_t writeDrawCommand = kFALSE) const |
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 |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
TString* | Fit(const Char_t* drawCommand, const Char_t* formula, const Char_t* cuts, Double_t& chi2, TVectorD& fitParam, TMatrixD& covMatrix) |
void | FormatHistoLabels(TH1* histo) const |
TString& | GetAbbreviation() |
TString& | GetAppendString() |
static Int_t | GetBin(Float_t value, Int_t nbins, Double_t binLow, Double_t binUp) |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
virtual const char* | TObject::GetIconName() const |
virtual TObjArray* | GetListOfNormalizationVariables(Bool_t printList = kFALSE) const |
virtual TObjArray* | GetListOfVariables(Bool_t printList = kFALSE) |
static Double_t | GetLTM(Int_t n, Double_t* array, Double_t* sigma = 0, Double_t fraction = 0.9) |
virtual const char* | TObject::GetName() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
virtual const char* | TObject::GetTitle() const |
TTree* | GetTree() const |
virtual UInt_t | TObject::GetUniqueID() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TObject::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 |
static TH1F* | Integrate(TH1F* histogram, Float_t mean = 0, Float_t sigma = 0, Float_t sigmaMax = 0, Float_t sigmaStep = -1) |
Int_t | Integrate(const Char_t* drawCommand, const Char_t* sector, const Char_t* cuts = 0, Float_t sigmaMax = 5, Bool_t plotMean = kTRUE, Bool_t plotMedian = kTRUE, Bool_t plotLTM = kTRUE, const Char_t* sigmas = "", Float_t sigmaStep = -1) const |
static TH1F* | Integrate(Int_t n, Float_t* array, Int_t nbins, Float_t binLow, Float_t binUp, Float_t mean = 0, Float_t sigma = 0, Float_t sigmaMax = 0, Float_t sigmaStep = -1) |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | TObject::IsOnHeap() const |
virtual Bool_t | TObject::IsSortable() const |
Bool_t | TObject::IsZombie() const |
virtual void | TObject::ls(Option_t* option = "") const |
void | TObject::MayNotUse(const char* method) const |
virtual Bool_t | TObject::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static 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) |
AliBaseCalibViewer& | operator=(const AliBaseCalibViewer& param) |
virtual void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | TObject::Print(Option_t* option = "") const |
virtual Int_t | TObject::Read(const char* name) |
virtual void | TObject::RecursiveRemove(TObject* obj) |
void | TObject::ResetBit(UInt_t f) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
void | SetAbbreviation(const Char_t* abr) |
void | SetAppendString(const Char_t* str) |
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) |
static void | TObject::SetObjectStat(Bool_t stat) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
virtual void | ShowMembers(TMemberInspector&) |
static TH1F* | SigmaCut(TH1F* histogram, Float_t mean, Float_t sigma, Float_t sigmaMax, Float_t sigmaStep = -1, Bool_t pm = kFALSE) |
static TH1F* | SigmaCut(Int_t n, Double_t* array, Double_t mean, Double_t sigma, Int_t nbins, Double_t* xbins, Double_t sigmaMax) |
Int_t | SigmaCut(const Char_t* drawCommand, const Char_t* sector, const Char_t* cuts = 0, Float_t sigmaMax = 5, Bool_t plotMean = kTRUE, Bool_t plotMedian = kTRUE, Bool_t plotLTM = kTRUE, Bool_t pm = kFALSE, const Char_t* sigmas = "", Float_t sigmaStep = -1) const |
static TH1F* | SigmaCut(Int_t n, Float_t* array, Float_t mean, Float_t sigma, Int_t nbins, Float_t binLow, Float_t binUp, Float_t sigmaMax, Float_t sigmaStep = -1, Bool_t pm = kFALSE) |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
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 |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
void | DrawLines(TH1F* cutHistoMean, TVectorF nsigma, TLegend* legend, Int_t color, Bool_t pm) const |
void | DrawLines(TGraph* graph, TVectorF nsigma, TLegend* legend, Int_t color, Bool_t pm) const |
void | TObject::MakeZombie() |
enum TObject::EStatusBits { | kCanDelete | |
kMustCleanup | ||
kObjInCanvas | ||
kIsReferenced | ||
kHasUUID | ||
kCannotPick | ||
kNoContextMenu | ||
kInvalidObject | ||
}; | ||
enum TObject::[unnamed] { | kIsOnHeap | |
kNotDeleted | ||
kZombie | ||
kBitMask | ||
kSingleKey | ||
kOverwrite | ||
kWriteDelete | ||
}; |
TString | fAbbreviation | the abreviation for '.fElements' |
TString | fAppendString | '.fElements', stored in a TStrig |
TFile* | fFile | file that contains a calPads tree (e.g. written by AliTPCCalPad::MakeTree(...) |
TObjArray* | fListOfObjectsToBeDeleted | Objects, that will be deleted when the destructor ist called |
TTree* | fTree | tree containing visualization data (e.g. written by AliTPCCalPad::MakeTree(...) |
Bool_t | fTreeMustBeDeleted | decides weather the tree must be deleted in destructor or not |
Inheritance Chart: | ||||||||||||
|
AliBaseCalibViewer destructor all objects will be deleted, the file will be closed, the pictures will disappear
Should be called from AliBaseCalibViewerGUI class only. If you use Delete() do not call the destructor. All objects (except those contained in fListOfObjectsToBeDeleted) will be deleted, the file will be closed.
formats title and axis labels of histo removes '.fElements'
add a reference tree to the current tree
by default the treename is 'tree' and the reference treename is 'R'
fit an arbitrary function, specified by formula into the data, specified by drawCommand and cuts returns chi2, fitParam and covMatrix returns TString with fitted formula
returns the LTM and sigma
Returns the 'bin' for 'value' The interval between 'binLow' and 'binUp' is divided into 'nbins' equidistant bins avoid index out of bounds error: 'if (bin < binLow) bin = binLow' and vice versa
Creates a cumulative histogram , where you can see, how much of the data are inside sigma-intervals around the mean value The data of the distribution are given in 'histogram' 'mean' and 'sigma' are and of the distribution in 'histogram', to be specified by the user sigmaMax: up to which sigma around the mean/median/LTM the histogram is generated (in units of sigma, ) sigmaStep: the binsize of the generated histogram, -1 means, that the maximal reasonable stepsize is used pm: Decide weather (first case) or arbitrary (secound case) The actual work is done on the array.
{ Float_t mean = 0; Float_t sigma = 1.5; Float_t sigmaMax = 4; gROOT->SetStyle("Plain"); TH1F *distribution = new TH1F("Distribution1", "Distribution f(x, #mu, #sigma)", 1000,-5,5); TRandom rand(23); for (Int_t i = 0; i <50000;i++) distribution->Fill(rand.Gaus(mean, sigma)); Float_t *ar = distribution->GetArray(); TCanvas* macro_example_canvas = new TCanvas("cAliBaseCalibViewer", "", 350, 350); macro_example_canvas->Divide(0,3); TVirtualPad *pad1 = macro_example_canvas->cd(1); pad1->SetGridy(); pad1->SetGridx(); distribution->Draw(); TVirtualPad *pad2 = macro_example_canvas->cd(2); pad2->SetGridy(); pad2->SetGridx(); TH1F *shist = AliTPCCalibViewer::SigmaCut(distribution, mean, sigma, sigmaMax); shist->SetNameTitle("Cumulative","Cumulative S(t, #mu, #sigma)"); shist->Draw(); TVirtualPad *pad3 = macro_example_canvas->cd(3); pad3->SetGridy(); pad3->SetGridx(); TH1F *shistPM = AliTPCCalibViewer::SigmaCut(distribution, mean, sigma, sigmaMax, -1, kTRUE); shistPM->Draw(); return macro_example_canvas; }
Creates a histogram , where you can see, how much of the data are inside sigma-intervals around the mean value
The data of the distribution are given in 'array', 'n' specifies the length of the array
'mean' and 'sigma' are and of the distribution in 'array', to be specified by the user
'nbins': number of bins, 'binLow': first bin, 'binUp': last bin
sigmaMax: up to which sigma around the mean/median/LTM the histogram is generated (in units of sigma, )
sigmaStep: the binsize of the generated histogram
Here the actual work is done.
SigmaCut for variable binsize NOT YET IMPLEMENTED !!!
Easy drawing of data, in principle the same as EasyDraw1D Difference: A line for the mean / median / LTM is drawn in 'sigmas' you can specify in which distance to the mean/median/LTM you want to see a line in sigma-units, separated by ';' example: sigmas = "2; 4; 6;" at , and a line is drawn. "plotMean", "plotMedian" and "plotLTM": what kind of lines do you want to see?
Creates a histogram, where you can see, how much of the data are inside sigma-intervals around the mean/median/LTM with drawCommand, sector and cuts you specify your input data, see EasyDraw sigmaMax: up to which sigma around the mean/median/LTM the histogram is generated (in units of sigma) sigmaStep: the binsize of the generated histogram plotMean/plotMedian/plotLTM: specifies where to put the center
Creates an integrated histogram , out of the input distribution distribution , given in "histogram" "mean" and "sigma" are and of the distribution in "histogram", to be specified by the user sigmaMax: up to which sigma around the mean/median/LTM you want to integrate if "igma == 0" and "sigmaMax == 0" the whole histogram is integrated "sigmaStep": the binsize of the generated histogram, -1 means, that the maximal reasonable stepsize is used The actual work is done on the array.
Creates an integrated histogram , out of the input distribution distribution , given in "histogram" "mean" and "sigma" are and of the distribution in "histogram", to be specified by the user sigmaMax: up to which sigma around the mean/median/LTM you want to integrate if "igma == 0" and "sigmaMax == 0" the whole histogram is integrated "sigmaStep": the binsize of the generated histogram, -1 means, that the maximal reasonable stepsize is used The actual work is done on the array.
{ Float_t mean = 0; Float_t sigma = 1.5; Float_t sigmaMax = 4; gROOT->SetStyle("Plain"); TH1F *distribution = new TH1F("Distribution2", "Distribution f(x, #mu, #sigma)", 1000,-5,5); TRandom rand(23); for (Int_t i = 0; i <50000;i++) distribution->Fill(rand.Gaus(mean, sigma)); Float_t *ar = distribution->GetArray(); TCanvas* macro_example_canvas = new TCanvas("macro_example_canvas_Integrate", "", 350, 350); macro_example_canvas->Divide(0,2); TVirtualPad *pad1 = macro_example_canvas->cd(1); pad1->SetGridy(); pad1->SetGridx(); distribution->Draw(); TVirtualPad *pad2 = macro_example_canvas->cd(2); pad2->SetGridy(); pad2->SetGridx(); TH1F *shist = AliTPCCalibViewer::Integrate(distribution, mean, sigma, sigmaMax); shist->SetNameTitle("Cumulative","Cumulative S(t, #mu, #sigma)"); shist->Draw(); return macro_example_canvas_Integrate; }
Creates an integrated histogram , out of the input distribution distribution , given in "histogram" "mean" and "sigma" are and of the distribution in "histogram", to be specified by the user sigmaMax: up to which sigma around the mean/median/LTM you want to integrate if "igma == 0" and "sigmaMax == 0" the whole histogram is integrated "sigmaStep": the binsize of the generated histogram, -1 means, that the maximal reasonable stepsize is used Here the actual work is done.
easy drawing of data, use '~' for abbreviation of '.fElements'
easy drawing of data, use '~' for abbreviation of '.fElements' easy drawing of data, use '~' for abbreviation of '.fElements'
easy drawing of data, use '~' for abbreviation of '.fElements'
formats title and axis labels of histo, removes '.fElements'