Locked History Actions

Diff for "ANAROOT/Manual/reference"

Differences between revisions 1 and 2
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
ANAROOT/UIコマンド/referenceについて、ここに記述してください。 <<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);
}}}

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);