Locked History Actions

Diff for "ANAROOT/Manual"

Differences between revisions 34 and 35
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:

<<TableOfContents(3)>>

== Commands for Analysis Management ==

=== book ===
Register "analoop" and "anafile" to TArtAnaLoopManager. If you want to usr your own analoop class or not to use anafile, please contact to Tanaka@Tokyo Institute of Technology
{{{
void book(TArtAnaLoop* analoop, const char* anafilename = 0);
// ex. book(new TArtAnaLoopUser, "ana/user.ana");
}}}

=== push ===
Add RIDF file to stack. Check stack by status() command.
{{{
void push(const char* filename = 0, int eventnumber = -1);
// ex. push("ridf/run0001.ridf");
}}}

=== pop ===
Remove RIDF file from stack. Check stack by status() command.
{{{
void pop(int i);
// ex. pop(1)
}}}

=== start ===
Start analysis. Construct() of TArtAnaLoop will be called for the first time.
{{{
void start();
}}}

=== stop ===
Stop analysis. You can resume by start() command.
{{{
void stop();
}}}

=== next ===
Skip remaining event of current RIDF file and go to next RIDF file.
{{{
void next();
}}}

=== end ===
End current analysis. Destruct() of TArtAnaLoop will be called.
{{{
void end();
}}}

=== clear ===
Clear all histograms and destruct TArtAnaLoopManager.
{{{
void clear();
}}}

=== status ===
Print status of current Analysis.
{{{
void status();
}}}


== Commands for Histogram Management ==

=== fetch ===
Read all TH1 object in file(filename) to current ROOT directory.
{{{
void fetch(char* filename);
// ex. fetch("root/hist.root");
}}}

=== hstore ===
Write all TH1 object in current ROOT directory to file(filename)
{{{
void hstore(char* filename);
// ex. hstore("ridf/hist2.root");
}}}

=== hdel ===
Delete TH1 objects in current ROOT directory.
{{{
void hdel(); // delete all
void hdel(int id); //delete by id
void hdel(int idstart, int idend); //delete hist between idstart and idend
// ex. hdel(2,4);
}}}

=== ls ===
Show list of hist in current directory.
{{{
void ls();
}}}

=== ht, htp, hn, hb ===
Move to next pad and ...
{{{
void ht(int id, Option_t* option = ""); // draw hist by id. You can use draw option like "same".
void ht(int idstart, int idend); // draw hist from idstart to idend.
void htp(); // draw current hist.
void hn(); // draw next hist.
void hb(); // draw previous hist.
// ex. hn(); ht(3,"same");
}}}

=== hht, hhtp, hhn, hhb ===
Not Moving version of ht, htp, hn, hb.
{{{
(same as above command)
}}}

=== lg, ln, lgx, lgy, lgz, lnx, lny, lnz ===
Set/Unset log scale
{{{
void lg(); //do lgx, lgy, and lgz
void ln(); //do lnx, lny, and lnz
void lgx(); //set xaxis of all pad to logscale
void lgy(); //set yaxis of all pad to logscale
void lgz(); //set zaxis of all pad to logscale
void lgx(Int_t subpadnumber); //set xaxis of pad at subpadnumber to logscale
void lgy(Int_t subpadnumber); //set xaxis of pad at subpadnumber to logscale
void lgz(Int_t subpadnumber); //set xaxis of pad at subpadnumber to logscale
void lnx(); //unset lgx of all pad
void lny(); //unset lgy of all pad
void lnz(); //unset lgz of all pad
void lnx(Int_t subpadnumber); //unset lgx of supadnumber
void lny(Int_t subpadnumber); //unset lgy of supadnumber
void lnz(Int_t subpadnumber); //unset lgz of supadnumber
}}}

=== size ===
Change size of canvas.
{{{
void size(UInt_t ww, UInt_t wh);
// ex. size(600,600);
}}}

=== cd, cdn, cdb ===
cd to...
{{{
void cd(Int_t subpadnumber = 0); // subpadnumber(0 is assigned to root canvas)
void cdn(); // next subpad
void cdb(); // previous subpad
}}}

=== zone ===
Divide canvas(not gPad).
{{{
void zone(Int_t nx = 1, Int_t ny = 1, Float_t xmargin = 0.01, Float_t ymargin = 0.01, Int_t color = 0);
}}}

=== xval(gui), yval(gui), xyval(gui) ===
Print values where you click.
{{{
Double_t xval(); // only x-axis value
Double_t yval(); // only y-axis value
void xyval(); // both x- and y-axis value
}}}

=== zoom, zoom(gui), unzoom ===
zoom and unzoom
{{{
void zoom(double firstx, double lastx, double firsty = 0, double lasty = -1, double firstz = 0, double lastz = -1);
void zoom();
void unzoom();
}}}

=== hsta ===
Print statics of current hist.
{{{
void hsta();
}}}

=== xsta(gui) ===
Print statics of selected region
{{{
void xsta();
}}}

=== cpro(gui) ===
Cut out selected region of TH2
{{{
void cpro();
}}}

=== fit, fitp, fite, fitg, fitl, figa, xfitp(gui), xfite(gui), xfitg(gui), xfitl(gui) ===
Fit(p:polynomial, e:exponential g:gaussian, l:landau). General fit can be done by fit()(see ROOT Manual). You can access to fitting result via TFitResultPtr.
{{{
TFitResultPtr fit(const char* formula, Option_t* option = "S", Option_t* goption = "", Double_t xmin = 0, Double_t xmax = 0);
TFitResultPtr fitp(int n = 1, Double_t xmin = 0, Double_t xmax = 0, Option_t* option = "S", Option_t* goption = "");
TFitResultPtr fite(Double_t xmin = 0, Double_t xmax = 0, Option_t* option = "S", Option_t* goption = "");
TFitResultPtr fitg(Double_t xmin = 0, Double_t xmax = 0, Option_t* option = "S", Option_t* goption = "");
TFitResultPtr fitl(Double_t xmin = 0, Double_t xmax = 0, Option_t* option = "S", Option_t* goption = "");
void figa(); // auto fit by gaussian.

TFitResultPtr xfitp(int n = 1);
TFitResultPtr xfite();
TFitResultPtr xfitg();
TFitResultPtr xfitl();
}}}

=== chbin ===
Change bin.
{{{
void chbin(Int_t ngroupx, Int_t ngroupy = 1, Int_t ngroupz = 1);
// ex. chbin(2);
}}}

=== pfx, pfy ===
profile of hist.
{{{
void pfx();
void pfy();
}}}

=== prx, pry ===
projection of hist
{{{
void prx();
void pry();
}}}

=== slx, sly ===
slice of hist
{{{
void slx(Int_t num);
void sly(Int_t num);
// ex. sly(16);
}}}

=== bnx, bny ===
projection bins between first and last
{{{
void bnx(double firsty, double lasty, Option_t* option = "");
void bny(double firstx, double lastx, Option_t* option = "");
// ex. bnx(100,200);
}}}

=== blow(gui), blowxyz, blowx, blowy, blowz ===
blow hist.
{{{
void blow();
void blowxyz(double firstx = 0, double lastx = -1,
      double firsty = 0, double lasty = -1,
      double firstz = 0, double lastz = -1);
void blowx(double firstx = 0, double lastx = -1);
void blowy(double firsty = 0, double lasty = -1);
void blowz(double firstz = 0, double lastz = -1);
// ex. blowx(100, 300);
}}}

=== scale, add, multiply, divide ===
operations on histograms
{{{
void scale(Double_t c); //scale by factor c
void add(Int_t id1, Int_t id2, Double_t c1=1, Double_t c2=1); // add between two hist
void sub(Int_t id1, Int_t id2, Double_t c1=1, Double_t c2=1); // sub between two hist
void multiply(Int_t id1, Int_t id2, Double_t c1=1, Double_t c2=1); // multiply between two hist
void divide(Int_t id1, Int_t id2, Double_t c1=1, Double_t c2=1); // divide between two hist
// ex. add(1, 3, 1.3, 0.8);
}}}

=== mami ===
change min and max.
{{{
void mami(double min, double max);
// ex. mami(100,1000);
}}}

=== print ===
print current canvas to file.
{{{
void print(char* filename = "", Option_t* option = "");
// ex. print("temp.eps");
}}}

=== update ===
Update canvas. Use in your macros.
{{{
void update();
}}}

=== raisewindow ===
Raise Window. Use in your macros.
{{{
void raisewindow();
}}}

=== wait ===
Press ENTER to continue. Use in your macros.
{{{
void wait();
}}}

=== watch ===
like UNIX command
{{{
void watch(const char* command, UInt_t milliSec = 1000, Int_t num = 3);
// ex. ht(1); watch("hn();update();", 1000, 10);
}}}

UI commandについてのまとめ。 要望やanapaw likeな部分については以下のリンクから。