= EventGeneratorExample = == Event generatorについて == == ソフトウェアのインストール == 使用する外部ソフトウェア || 名前 || バージョン || 用途 || ホームページ || || MG5_aMC || 2.4.0 || ハードな散乱過程の記述 || || LHAPDF || 6.1.6 || 陽子のパートン分布 || || HepMC || 2.06.08 || 共通のデータ構造を規定したC++ライブラリ || || Pythia8 || 8.2.19 || パートン・シャワー、ハドロン化 || || !FastJet || 3.2.0 || ジェット・アルゴリズム || 自分たちで開発したパッケージ || !McData || ROOT TTreeに保存するためのデータ構造と変換のための関数たち || || !ExPythia || Pythia8のメイン関数を少し修正したもの || !McDataと!ExPythiaはお茶大のSubversionレポジトリで管理されている。 お茶大のレポジトリを使用する際は、CppTutorialの最初の方を参照するとよい。 {{{ svn co ${OCHA_SVN}/Lab/Phenomenology/trunk dev }}} とすると、手元のディレクトリにdev/というディレクトリが新たに作られ、その下に!McDataと!ExPythiaがある。これらのパッケージではPH_SW_DIRと呼ばれる環境変数に設定されたディレクトリにソフトウェアをインストールする。環境変数の設定はセットアップ・スクリプトで行うとよいが、以下のコマンドで設定できる。また、実行時のパスの設定も行う。 {{{ export PH_SW_DIR=/tmp/$USER # ここに適切なディレクトリを設定する export PATH=${PH_SW_DIR}/bin:${PATH} export LD_LIBRARY_PATH=${PH_SW_DIR}/lib:${LD_LIBRARY_PATH} }}} その他のソフトウェアをダウンロード、伊ストールするにはExPythia/files/install_sw.shを使うと便利である。 このファイルの上の方にあるディレクトリを適当に設定すれば {{{ ./install_sw.sh }}} とすれば数分~数10分で全てのパッケージのインストールが終了する。 その後、!McDataと!ExPythiaもコンパイル、インストールする。 == 事象生成 == 事象を生成するには、次のようにいくつかの手順が必要だが、それらをまとめて行うためのスクリプトをExPythia/files/generate_events.shに用意してある。 * MG5_aMCによるハードな散乱過程による事象の生成 * LHE形式のファイルの解凍 * Pythia8でLHEファイルを読み込みパートン・シャワー、ハドロン化を行う これら一連の手続きを実行するには、 {{{ generate_events.sh 'p p > j j' /tmp/$USER abc.root }}} のように、スクリプトの引数に(1)散乱過程、(2)出力ディレクトリ、(3)出力ROOTファイル名を指定する。 == 事象データの解析 == {{{ > root root [0] .L libMcData.so root [1] TFile* f = TFile::Open("abc.root"); root [2] TTree* t = dynamic_cast(f->Get("LHEF")); root [3] t->Draw("Jet.v4().Pt()"); }}} === 粒子に関する情報 === || PID || PDG ID [[http://pdg.lbl.gov/2015/reviews/rpp2015-rev-monte-carlo-numbering.pdf|MCNumbering]]参照 || || Status || 粒子のステータス番号 || || Mother1 || 親粒子の番号 || || Mother2 || 親粒子の番号 || || !ColorLine1,!ColorLine2 || カラーの流れ。あまり使わない || || Px, Py, Pz, E || 4元運動量 || || M || 質量 || || PT || 横運動量 || || Eta || 擬ラピディティ || || Phi || 極座標におけるφ || || Rapidity || ラピディティ || || Lifetime || 寿命?|| || Spin || || 粒子のステータスは || status==1 || 終状態の安定粒子 || || status==2 || 終状態の不安定粒子(崩壊した粒子)|| || その他 || 個々のgeneratorによって違う || 始状態の粒子については、いくつか事象のデータを確認して調べる必要がある。 終状態の粒子の解析は基本的には、status==1の粒子のみを用いて行う。これらの粒子が実際に実験で測定器に入ってくるものである。 === ジェットに関する情報 === || !PdgId || PDG ID || || Status || ステータス || || P[4] || 4元運動量 || || NConstituents || ジェットに属する粒子の数 || || !FlavourTag || フレーバー同定の結果 || === 未実装の変数 === * 粒子の崩壊モードを辿れるように、粒子の生成座標、崩壊座標の情報を加える。フレーバー同定の研究に必要。 * ジェットとそれを構成する粒子との関係 === 調べること === 陽子・陽子衝突によるジェット生成過程について、 1. 終状態の粒子数、粒子のpT, eta, phi分布 1. |eta|<2.5に含まれる粒子の数、pt, eta, phi分布(測定可能な領域) 1. |eta|<2.5に含まれる粒子のPDG ID。崩壊前の粒子についても。 1. |eta|<2.5に含まれるジェットのpt, eta, phi分布 1. |eta|<2.5, pt>30 GeVのジェットが生成する場合の始状態のパートンの組み合わせ 1. |eta|<2.5, pt>30 GeVのジェットが複数存在する場合、それらの相関(エネルギー、eta, phi, dR) 1. |eta|<2.5, pt>30 GeVのジェットについて、粒子の個数、ジェットに広がり、終状態のパートンとの相関 さらにサンプルを増やして30 GeVから1 TeVまでのジェットについて調べる 1. ジェットの元となったパートンの種類によってジェットの性質に違いがあるか 1. ジェットのフレーバー同定のために、ジェットを構成する粒子の2次生成点を調べる