雛型プログラムの実行
Last update: 2003/07/17
gmake と叩けば ZZ ができるはずです。
では、./ZZ と叩いてみます。
すると、atlasj> というプロンプトがでます。
終了するためには、quit、exit、end、terminate、q、.q、のどれかを打ちこみます。
次に入力パラメータとして使えるキーワードは次の6つです。
input
treename
output
from
to
user_
inputは解析用のデータファイルの場所を入力するために使います。
treenameはROOTファイルの中のどのツリーを解析するのか、という情報を与えるときに使います。
h2rootで変換した場合、treenameには
atlasj_atlfast h102
athena_atlfast ATLFAST/h51
athena_dc1 CBNT/h3333
と決まった値を使います。
outputは必要なイベントだけ保存したいときに出力するROOTファイル名です。
ヒストグラムを保存するためのキーワードではありません。
fromとtoを使用すれば解析するイベントに制限を与えることができます。
単純に前からの番号で、ゼロ始まりの数え方です。
user_はユーザー定義の入力パラメータを与えるための接頭語です。
例えば、user_rootfileとすればプログラム中でGetParam("rootfile")とすれば
その値(必ずstd:string)を得ることができます。
最後に実行を始めるためには、process か run を打ち込みます。
(現状では解析した後のプロンプトは戻って来ません...。終わってしまいます...。)
では、実際に打ち込んでみましょう。以下の赤い部分を打ち込みます。
./ZZ
atlasj> treename h102
atlasj> treename: h102
atlasj> input /atlas/tutorial2/atlfast/runatlf/root/v2a/pythia6_tauola/higgs/hpro-ggf_hd-zz_hm0200_cteq5l_llumi_n0001.root
atlasj> input: /atlas/tutorial2/atlfast/runatlf/root/v2a/pythia6_tauola/higgs/hpro-ggf_hd-zz_hm0200_cteq5l_llumi_n0001.root
atlasj> process
大量のDoitという文字が現れた後、Finalizationという文字を出力して終るはずです。
これはZZ.cxxでそのようなメッセージが出るように書いているためです。
では、始めから5イベントだけ行ってみます。
./ZZ
atlasj> treename h102
atlasj> treename: h102
atlasj> input /atlas/tutorial2/atlfast/runatlf/root/v2a/pythia6_tauola/higgs/hpro-ggf_hd-zz_hm0200_cteq5l_llumi_n0001.root
atlasj> input: /atlas/tutorial2/atlfast/runatlf/root/v2a/pythia6_tauola/higgs/hpro-ggf_hd-zz_hm0200_cteq5l_llumi_n0001.root
atlasj> to 4
atlasj> to: 4
atlasj> process
Initialization
Doit
Doit
Doit
Doit
Doit
Finalization
始めからということなのでfromを書く必要はありません。
次に、以下の4行を書いたファイルをsignal.scriptという名前で準備します。
treename h102
input /atlas/tutorial2/atlfast/runatlf/root/v2a/pythia6_tauola/higgs/hpro-ggf_hd-zz_hm0200_cteq5l_llumi_n0001.root
to 999
process
(processの後は1度だけ改行を入れてください。それ以上の空行を作るとログが無限に大きくなることがあります。注意してください。)
csh系なら
./ZZ < signal.script >& log
sh系なら
./ZZ < signal.script > log 2>&1
と実行します。この方法を用いれば何度もプロンプトに打ち込む必要はありません。
Go to the next page
Go to the previous page
Go to the main page
jtanaka