Locked History Actions

Diff for "ANAROOT/Manual"

Differences between revisions 28 and 29
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= UI command =
Line 6: Line 8:
= 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
== 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
Line 14: Line 17:
push: Add RIDF file to stack. Check stack by status() command. === push ===
Add RIDF file to stack. Check stack by status() command.
Line 20: Line 24:
pop: Remove RIDF file from stack. Check stack by status() command. === pop ===
Remove RIDF file from stack. Check stack by status() command.
Line 26: Line 31:
start: Start analysis. Construct() of TArtAnaLoop will be called for the first time. === start ===
Start analysis. Construct() of TArtAnaLoop will be called for the first time.
Line 31: Line 37:
stop: Stop analysis. You can resume by start() command. === stop ===
Stop analysis. You can resume by start() command.
Line 36: Line 43:
next: Skip remaining event of current RIDF file and go to next RIDF file. === next ===
Skip remaining event of current RIDF file and go to next RIDF file.
Line 41: Line 49:
end: End current analysis. Destruct() of TArtAnaLoop will be called. === end ===
End current analysis. Destruct() of TArtAnaLoop will be called.
Line 46: Line 55:
clear: Clear all histograms and destruct TArtAnaLoopManager. === clear ===
Clear all histograms and destruct TArtAnaLoopManager.
Line 51: Line 61:
status: Print status of current Analysis. === status ===
Print status of current Analysis.
Line 57: Line 68:
= Commands for Histogram Management =

fetch: Read all TH1 object in file(filename) to current ROOT directory.
== Commands for Histogram Management ==

=== fetch ===
Read all TH1 object in file(filename) to current ROOT directory.
Line 65: Line 77:
hstore: Write all TH1 object in current ROOT directory to file(filename) === hstore ===
Write all TH1 object in current ROOT directory to file(filename)
Line 71: Line 84:
hdel: Delete TH1 objects in current ROOT directory. === hdel ===
Delete TH1 objects in current ROOT directory.
Line 79: Line 93:
ls: Show list of hist in current directory. === ls ===
Show list of hist in current directory.
Line 84: Line 99:
ht, htp, hn, hb: Move to next pad and ... === ht, htp, hn, hb ===
Move to next pad and ...
Line 94: Line 110:
hht, hhtp, hhn, hhb: Not Moving version of ht, htp, hn, hb. === hht, hhtp, hhn, hhb ===
Not Moving version of ht, htp, hn, hb.
Line 99: Line 116:
lg, ln, lgx, lgy, lgz, lnx, lny, lnz: Set/Unset log scale === lg, ln, lgx, lgy, lgz, lnx, lny, lnz ===
Set/Unset log scale
Line 117: Line 135:
size: Change size of canvas. === size ===
Change size of canvas.
Line 123: Line 142:
cd, cdn, cdb: cd to... === cd, cdn, cdb ===
cd to...
Line 130: Line 150:
zone: Divide canvas(not gPad). === zone ===
Divide canvas(not gPad).
Line 135: Line 156:
xval(gui), yval(gui), xyval(gui): Print values where you click. === xval(gui), yval(gui), xyval(gui) ===
Print values where you click.
Line 142: Line 164:
zoom, zoom(gui), unzoom: zoom and unzoom === zoom, zoom(gui), unzoom ===
zoom and unzoom
Line 149: Line 172:
hsta: Print statics of current hist. === hsta ===
Print statics of current hist.
Line 154: Line 178:
xsta(gui): Print statics of selected region === xsta(gui) ===
Print statics of selected region
Line 159: Line 184:
cpro(gui): Cut out selected region of TH2 === cpro(gui) ===
Cut out selected region of TH2
Line 164: Line 190:
・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. === 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.
Line 179: Line 206:
chbin: Change bin. === chbin ===
Change bin.
Line 185: Line 213:
pfx, pfy: profile of hist. === pfx, pfy ===
profile of hist.
Line 191: Line 220:
prx, pry: projection of hist === prx, pry ===
projection of hist
Line 197: Line 227:
slx, sly: slice of hist === slx, sly ===
slice of hist
Line 204: Line 235:
bnx, bny: projection bins between first and last === bnx, bny ===
projection bins between first and last
Line 211: Line 243:
blow(gui), blowxyz, blowx, blowy, blowz: blow hist. === blow(gui), blowxyz, blowx, blowy, blowz ===
blow hist.
Line 223: Line 256:
scale, add, multiply, divide: operations on histograms === scale, add, multiply, divide ===
operations on histograms
Line 233: Line 267:
mami: change min and max. === mami ===
change min and max.
Line 239: Line 274:
print: print current canvas to file. === print ===
print current canvas to file.
Line 245: Line 281:
update: Update canvas. Use in your macros. === update ===
Update canvas. Use in your macros.
Line 250: Line 287:
raisewindow: Raise Window. Use in your macros. === raisewindow ===
Raise Window. Use in your macros.
Line 255: Line 293:
wait: Press ENTER to continue. Use in your macros. === wait ===
Press ENTER to continue. Use in your macros.
Line 260: Line 299:
watch: like UNIX command === watch ===
like UNIX command

UI command

ANAROOT/UIコマンドについて、ここに記述します。 要望等は別スレッドで。

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