細かいことのメモ
解決法で悩んだ時は英語でググることも重要
TF1 *fstep = new TF1("fstep","x>[0]");
などとすれば良い
TH1D *h1 = new TH1D("h1","title ;x axis name [unit];y axis name [unit]",bin number,first,last);
もちろん、
h1->SetTitle("title ; x axis name [unit];y axis name [unit]");
でも良い
ヒストグラムの積分範囲の指定は、bin番号で行う。ヒストグラムの-10から24まで積分したい場合は
int minbin = h1->GetXaxis()->FindBin(-10);
int maxbin = h1->GetXaxis()->FindBin(24);
h1->Integral(minbin, maxbin);
例えばcolzオプションで書いた場合のカラーパレットをいつも指定したい場合
毎回
gStyle->SetPalette()
するのはめんどくさい
ディレクトリ内に./.rootlogon.Cというファイルを作ればrootを立ち上げたときにその中をやってくれるが、そのディレクトリにいないともちろん読み込んでくれない。
(ちなみに、
[1]gEnv->Print()
とすれば
Rint.Logon: rootlogon.C
というのが見えるはず
これはその場所にrootlogon.Cがあれば読み込んでくれるという意味)
そこで、.rootlogon.Cを~/以下に作り、毎回それを読み込むように指定する
まずは~/.rootrcに
Rint.Load: ~/.rootlogon.C
と書き込む
これで~/.rootlogon.C を毎回起動時に読み込み、中身を実行してくれる
あとは ~/.rootlogon.Cを作り、中に
{
gStyle->SetPalette(1)
}
などと実行したいコマンドを書けば良い
C++だけど。多分Makefileの変数がおかしいか変数の二重定義っぽい
const int size=100;
TGraph *gr[size];
for(int k=0;k<size;k++){
gr[k]=new TGraph();
}
double var=0;
TRandom3 *r = new TRandom3( time(NULL) ); //time(NULL): set seed using clock
var = r->Gaus(0,1); //mean 0, sigma 1 gaussian