ピクセル検出器データの解析
目次
解析環境の準備
シェルの設定
シェル設定ファイル(~/.zshrc)に以下の2行を追加する。ファイルの最後の方にあればよい。
export ATLAS_LOCAL_ROOT_BASE=/cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase alias setupATLAS='source ${ATLAS_LOCAL_ROOT_BASE}/user/atlasLocalSetup.sh'
これでsetupATLASというコマンドを実行できるようになり、これを実行することでいつでもATLASのソフトウェア環境の準備をできる。
AnalysisBaseを用いた環境設定
ATLASで使う解析用のソフトウェア用にディレクトリを用意する。空のディレクトリ(ここではaswとする)を作って、その下にさらにsource, build, runというディレクトリを作る。 sourceの下にソフトウェアのソースコードを管理する。buildはCMakeでソフトウェアをコンパイルするための作業ディレクトリで、runはプログラムを実行するディレクトリである。 まず解析を始めるにあたって環境設定のために以下のコマンドを実行する。
setupATLAS lsetup git
これはどのディレクトリで行ってもよい。次にasw/sourceに移動してgitからソースコードを取ってくる。 初めてgitによりATLASのオフラインソフトウェア(athena)を使う場合はathenaのgitレポジトリから 自分専用のレポジトリを予め作る(fork)必要がある。そのための手順はgitlab forkを参照。
cd asw/source git clone https://:@gitlab.cern.ch:8443/tkohno/athena.git cd athena git remote add upstream https://:@gitlab.cern.ch:8443/atlas/athena.git
これには数分かかることもある。この後念のため手元(ローカル)のコードを最新版に更新する。
git fetch remote
予めコンパイルされたATLASのソフトウェアのライブラリやプログラムがこの段階で 使えるようになっている。ただし、普通は自分が行う解析用にプログラムを書く必要がある。
自分のコードを加える
ソフトウェアをダウンロードしてきたら、開発環境を用意する。
cd asw/source asetup AnalysisBase,2.6.2,here
プログラムをコンパイルする作業用ディレクトリに移動する。そして、package_filters.txtというファイルの雛形をasw/にコピーしてくる。
cd asw/build cp ../source/athena/Projects/WorkDir/package_filters_example.txt ../package_filters.txt
package_filters.txtは実際にコンパイルするパッケージ(ライブラリ)のリストである。
コードをコンパイルする
コンパイルにはcmake, make, make installを順番に実行する必要がある。cmakeはMakefileを生成するため、makeは実際に各ライブラリをコンパイルするため、そしてmake installはコンパイルしたライブラリを適切なディレクトリにコピーするためである。 作業はasw/buildディレクトリ内で行う。
cd asw/build cmake -DATLAS_PACKAGE_FILTER_FILE=../package_filters.txt ../source/athena/Projects/WorkDir make make install
Gitを利用した解析環境の準備
例:PixelAnalysisEnv
Gitlabに解析環境を整えたプロジェクトを作成した。Gitlabへのリンク このプロジェクト自体は中身がほぼ空で、
- " Athena
という2つのプロジェクトをsubmoduleとして含んだものである。
事前準備
mkdir asw cd asw mkdir source build run cd source git clone --recursive https://gitlab.cern.ch/ochanomizu/PixelAnalysisEnv cd PixelAnalysisEnv git checkout
毎回、開発を始める前に行うこと
setupATLAS lsetup git cd asw/build asetup AnalysisBase,21.2.0,here cmake -DATLAS_PACKAGE_FILTER_FILE=../source/PixelAnalysisEnv/package_filters.txt ../source/PixelAnalysisEnv make
プログラムを走らせる前に必要な設定
cd asw/build source x86_64-slc6-gcc62-opt/setup.sh (source $BINARY_TAG/setup.sh) cd asw/run runTrackHitCount
何回も走らせ直すときはディレクトリを削除する必要があるので
cd asw/run rm -fr submitDir
をやってから走らせる。