ROOTを使った解析

ROOTについて

ROOTは、CERNが開発しているデータ解析ツール群です。素粒子・原子核・宇宙線業界ではほぼデファクトスタンダードなツールですが、逆に他の業界で使用していると言う話はあまり聞きません。非常に高機能なライブラリがたくさん詰め込まれているので、使い慣れればとても便利なツールなのですが、その分少し習熟するのに時間がかかります。そのため、特に学部の3年生の学生実験で使用するのは、余程興味があってどうしても使いたい人以外にはお勧めしません。このページは、どちらかと言うと4年生や大学院生でKspectでデータを測定した時にROOTで解析する人のためのメモです。

サンプルコードと使い方

ここからダウンロードできます。

サンプルファイル置き場

使い方は、ライブラリとして読み込んで使うのが良いです。

root [0] .L spe2root.C+

root [1] spe2root("137Cs_sample.spe")

ファイル名の後に2次関数のキャリブレーションパラメータを入力できるようになっていて、ヒストグラムの各binの要素数でループを回して、それに乱数を加えてエネルギー校正したヒストグラムを作り出せるようになっています。

void spe2root(TString filename = "133Ba.spe", Double_t a0 = 0., Double_t a1 = 1., Double_t a2 = 0.)

動かすと入力ファイルの拡張子.speを.rootに変えたROOTのファイルを作ります。確認せずにファイルを上書きする仕様なので注意してください。中身は二つのヒストグラムが入っています。

  • TH1F h_raw : Raw ヒストグラム

  • TH1F h_cal: Calibrated ヒストグラム

エネルギー校正したヒストグラムはdynamic rangeが1.5MeV程度を想定しているので、適宜書き換えてください(キャリキャリブレーションパラメータから適当にdynamic rangeを推定するように書き換えると使いやすくなるな、そのうちやるかも)。