部門 > ROOT > hadd

「部門/ROOT/hadd」の編集履歴(バックアップ)一覧に戻る

部門/ROOT/hadd - (2011/10/06 (木) 00:44:00) のソース

複数のROOTファイルを結合するコマンドは、hadd。
ROOTを立ち上げる必要がなく、コマンドラインから実行できるので簡単だし、シェルスクリプトも書きやすい。
>hadd out.root 1.root 2.root
とか。
*シェルスクリプト書いてみた。
K本研以外の人にはあんまり関係ないと思われる。ELE_AnalyzerというのはELEGANTという検出器に使われてたもの(?)
生データをHBKに変換するときにあるサイズ以上だと分割されてしまうので、それぞれをROOTに変換してからhaddで結合する。
#highlight(){{#!/bin/bash
./ELE_Analyzer $1
declare -i i
i=1
while [  -f $1_00$i.hbk ]; #ファイルが存在する番号までループを回す
do
h2root $1_00$i.hbk
rm $1_00$i.hbk
source="$source $1_00$i.root" #ROOTファイルを結合するときの元となるファイルを集めた文字列
i=$i+1
done
hadd $1.root $source 
rm $source}}
*参考リンク
-http://root.cern.ch/drupal/content/how-merge-histogram-files (公式情報)