絶望2

「絶望2」の編集履歴(バックアップ)一覧はこちら

絶望2」(2008/02/11 (月) 04:48:37) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

>現在の最新版ver1.3.7(本家) >detuned version(本家からいくつか機能を取り除いて安全性を重視したもの) ***使い方 適当なディレクトリで解凍。 ROOTを起動したら .L xxx/yyy/zzz/zetsubou.C+ (zetsubou.C のある場所を指定) "+"をつけるとROOT様が正しくコンパイルして下さる。("++"としてもよい。) zetsubou_C.soという共有ライブラリが作られる。 ただしROOTのバージョンが古いと失敗するかも。 次回からは gSystem -> Load("/xxx/yyy/zzz/zetsubou_C.so"); で使える。 毎回このコマンドを打つのがメンドイ人。rootlogon.Cというファイルを作って作業ディレクトリにいれときましょう。中身の書き方は現物(下にアップロード)を見て。 ○オブジェクトを宣言 zetsubouクラスのオブジェクトを好きなように宣言。ここではA2の習慣で"as"を使ってるが、別に"z"でも"he"でもよい。 zetsubou as こうするとオブジェクト"as"にzetsubouクラスの内容が反映され、"as.DrawHist(..."のようにして定義された関数が使用可能になる。 ○一次元ヒストの書き方 例:as.DrawHist("run0200.dat","run0200","E","h3",100,3000,4000) 左から読むファイル名。つけたいタイトル。EかdEどちらのブランチか選択。ヒストのオブジェクト名、h0,h1,・・・,h10と名づけるとキャンバスの名前も対応してc0,c1・・・となっていく。ビンの数。min。max。 h3->なんたらかんたら でヒストを操れる。 範囲選択: as.DrawHist("run0200.dat","run0200","dE","h0",100,0,1000,100,3000) 対応するブランチの範囲を後ろにつけたす。 ver1.3よりタイトル省略可。この場合タイトルは自動で"run0200"とかになる。 ver1.3.2より斜め切り機能追加 as.HistCut(X1,Y1,X2,Y2,X3,Y3,X4,Y4); をヒストを書いた後に実行すると任意の四角で切れる。左下、右下、右上、左上の順に頂点の座標を指定。 キャンバス名が"c1"なら c1->SaveAs("*****.ps")でスクリーンショット作成可。jpg等も作成可。 ○散布図 + E、dEの全体ヒスト as.DrawScat("run0200.dat","run0200 ","s1") "s1"のところは散布図のオブジェクト名。これも好きなように名づけて。 さらに範囲をしぼったものを右下に表示 as.DrawScat("run0200.dat","run0200 ","s1",100,2000,100,1000) ver1.3よりタイトル省略可。 ○フィット シングルガウシアン手抜き:as.gfit(xmin,xmax) シングルガウシアン:as.gfit(xmin,xmax,height,mean,sigma) 等など。 フィットすると画面にevent数が表示。これはビン幅に依らない仕様。 他χ2乗、NDF、meanなぞも表示。 「ランダウ分布とガウシアンのたたみ込み積分したものでフィット」機能も一応ついてるが初期値の見当のつけかたがさっぱり。 as.lgfit(xmin,xmax,width,MP,area,gsigma) ○TTreeを使いたい TTree *tr=as.GetTree() ("tr"のところは好きなもので) これでtr->(種々のコマンド)使用可 今回は初めにTreeを作ってからヒストを書く仕様なので。 tr->Print() :今treeに入ってるデータのサイズ表示 tr->Scan() :生データ表示 ヒストをひとつ書けば、それに対応したtreeが出来上がってる。ヒストを書かずにtreeを使いたい場合 as.MakeTree("run0200.dat") TTree *tr=as.GetTree() で作成可。 ○設定変更 基本zetsubou.Cのコンストラクタ部分(19行目から始まる関数)を変えればOK キャンバスの大きさ。 Hist_canvas_width,Hist_canvas_length,Scat_canvas_width,Scat_canvas_lengthの値を変える フィットの線の色 fitlinecolor ○Tspfit TSpectrumクラスを利用した自動フィット。 まずフィットしたいピークがあるヒストを書く。この段階で割と範囲をしぼっとくのが大事。 次に as.Tspfit(範囲min,範囲max) で、フィットしたい範囲を指定。最大で3つまで勝手にピークをみつけてガウシアンでフィットする。 ◆うまくいかない場合。 -ヒストの範囲を変える -as.Tspfit(範囲min,範囲max,threshold)でthresholdの値を変える。デフォルト値が0.1で0〜1の範囲で変えられる。threshold*highest_peak以下のピークはフィットされない。 -as.Tspfit(範囲min,範囲max,threshold,resolution)でresolutionの値を変える。デフォルト値1。 -あきらめてgfitでフィット ○上にテキスト追加(ver1.3.4)(本家のみ) as.Text("*****")で画面上部にテキスト追加。 一次元ヒストにのみ対応 #image(sample1.png,width=696,height=572)
>現在の最新版ver1.3.8(本家) >detuned version(本家からいくつか機能を取り除いて安全性を重視したもの) ***使い方 適当なディレクトリで解凍。 ROOTを起動したら .L xxx/yyy/zzz/zetsubou.C+ (zetsubou.C のある場所を指定) "+"をつけるとROOT様が正しくコンパイルして下さる。("++"としてもよい。) zetsubou_C.soという共有ライブラリが作られる。 ただしROOTのバージョンが古いと失敗するかも。 次回からは gSystem -> Load("/xxx/yyy/zzz/zetsubou_C.so"); で使える。 毎回このコマンドを打つのがメンドイ人。rootlogon.Cというファイルを作って作業ディレクトリにいれときましょう。中身の書き方は現物(下にアップロード)を見て。 ○オブジェクトを宣言 zetsubouクラスのオブジェクトを好きなように宣言。ここではA2の習慣で"as"を使ってるが、別に"z"でも"he"でもよい。 zetsubou as こうするとオブジェクト"as"にzetsubouクラスの内容が反映され、"as.DrawHist(..."のようにして定義された関数が使用可能になる。 ○一次元ヒストの書き方 例:as.DrawHist("run0200.dat","run0200","E","h3",100,3000,4000) 左から読むファイル名。つけたいタイトル。EかdEどちらのブランチか選択。ヒストのオブジェクト名、h0,h1,・・・,h10と名づけるとキャンバスの名前も対応してc0,c1・・・となっていく。ビンの数。min。max。 h3->なんたらかんたら でヒストを操れる。 範囲選択: as.DrawHist("run0200.dat","run0200","dE","h0",100,0,1000,100,3000) 対応するブランチの範囲を後ろにつけたす。 ver1.3よりタイトル省略可。この場合タイトルは自動で"run0200"とかになる。 ver1.3.2より斜め切り機能追加 as.HistCut(X1,Y1,X2,Y2,X3,Y3,X4,Y4); をヒストを書いた後に実行すると任意の四角で切れる。左下、右下、右上、左上の順に頂点の座標を指定。 キャンバス名が"c1"なら c1->SaveAs("*****.ps")でスクリーンショット作成可。jpg等も作成可。 ○散布図 + E、dEの全体ヒスト as.DrawScat("run0200.dat","run0200 ","s1") "s1"のところは散布図のオブジェクト名。これも好きなように名づけて。 さらに範囲をしぼったものを右下に表示 as.DrawScat("run0200.dat","run0200 ","s1",100,2000,100,1000) ver1.3よりタイトル省略可。 ○フィット シングルガウシアン手抜き:as.gfit(xmin,xmax) シングルガウシアン:as.gfit(xmin,xmax,height,mean,sigma) 等など。 フィットすると画面にevent数が表示。これはビン幅に依らない仕様。 他χ2乗、NDF、meanなぞも表示。 「ランダウ分布とガウシアンのたたみ込み積分したものでフィット」機能も一応ついてるが初期値の見当のつけかたがさっぱり。 as.lgfit(xmin,xmax,width,MP,area,gsigma) ○TTreeを使いたい TTree *tr=as.GetTree() ("tr"のところは好きなもので) これでtr->(種々のコマンド)使用可 今回は初めにTreeを作ってからヒストを書く仕様なので。 tr->Print() :今treeに入ってるデータのサイズ表示 tr->Scan() :生データ表示 ヒストをひとつ書けば、それに対応したtreeが出来上がってる。ヒストを書かずにtreeを使いたい場合 as.MakeTree("run0200.dat") TTree *tr=as.GetTree() で作成可。 ○設定変更 基本zetsubou.Cのコンストラクタ部分(19行目から始まる関数)を変えればOK キャンバスの大きさ。 Hist_canvas_width,Hist_canvas_length,Scat_canvas_width,Scat_canvas_lengthの値を変える フィットの線の色 fitlinecolor ○Tspfit TSpectrumクラスを利用した自動フィット。 まずフィットしたいピークがあるヒストを書く。この段階で割と範囲をしぼっとくのが大事。 次に as.Tspfit(範囲min,範囲max) で、フィットしたい範囲を指定。最大で3つまで勝手にピークをみつけてガウシアンでフィットする。 ◆うまくいかない場合。 -ヒストの範囲を変える -as.Tspfit(範囲min,範囲max,threshold)でthresholdの値を変える。デフォルト値が0.1で0〜1の範囲で変えられる。threshold*highest_peak以下のピークはフィットされない。 -as.Tspfit(範囲min,範囲max,threshold,resolution)でresolutionの値を変える。デフォルト値1。 -あきらめてgfitでフィット ○上にテキスト追加(ver1.3.4)(本家のみ) as.Text("*****")で画面上部にテキスト追加。 一次元ヒストにのみ対応 #image(sample1.png,width=696,height=572)

表示オプション

横に並べて表示:
変化行の前後のみ表示: