猫でもわかるGeant4 記述:岸本慎  武藤啓太郎 

目次
1.Geant4とは?
2.Geant4を動かすために必要なファイル
3.インストール作業(CLHEP STLport OpenGL,Mesa DAWN )
4.インストール作業(Geant4)


1.Geant4とは?
Geant4はCERNで開発されている高エネルギー物理実験の測定器シミュレータで、
荷電粒子または粒子が物質中で引き起こす様々な相互作用をシミュレーションすることが可能です
Geant4はC++で記述されており、大規模な測定器をシミュレーションする事も可能であり、
特に放射線 高エネルギー関連の学生には有用なシミュレーターで検出器の評価等を行う事もできます
福井大学放射線研究室でも放射線医療機器(陽子線治療)の評価、新型検出器の開発において積極的に用いています


2.Geant4を動かすために必要なファイル

Vine Linux 4.0とSuseLinuxを対象にしている
(注意)VineはOpenGL SuseはMesaを利用する。他は同じ方法
Geant4を使用するには以下のファイルが必要。

 CLHEP (高エネルギークラスライブラリ)
 http://wwwasd.web.cern.ch/wwwasd/lhc++/INSTALLATION/clhep.html

 STLport (無料のSTL)
 http://www.stlport.org/download.html

 Mesa もしくは OpenGL(DAWNの起動に必要)

 DAWN (Visualization)
 http://geant4.kek.jp/~tanaka/DAWN/About_DAWN.html

 Geant4
 http://geant4.web.cern.ch/geant4/support/download.shtml


3.インストール作業(CLHEP STLport OpenGL,Mesa DAWN )

(1)CLHEP
CLHEPをダウンロードし(今回はclhep-1.9.2.2.tgz)
/usr/へ移動させ、端末で展開。実行

CLHEPのmakeは時間がかかる(30分ぐらい)
(注)
ここで、/usr/local/libにlibCLHEP-g++.1.9.2.2.aというファイルが生成される
CLHEPのバージョンが古い場合、Geant4のコンパイルのときに「libCLHEP.a」がないというエラーが起きるが
このエラーはlibCLHEP.aへのリンクが張られていないために起きる。
新しいCLHEPはリンクが張られるはずだが一応チェックしておくと良い。
/usr/local/lib/ に libCLHEP.a が存在しない場合は以下のようにリンクをする

(2)STLport
今回はSTLport-4.6.2.tar.gzをダウンロードした
/usr以下でSTLport-4.6.2.tar.gzを解凍。

(3)Mesa OpenGL
 (3−1)OpenGL VineLinux
apt-get か apt-get をGUIで利用できるsynapticでXOrg-libs、XOrg-devel、XOrg-gl-develをインストールする

 (3−2)Mesa SuseLinux
SUSEにはOpenGLでなく、Mesaが最初からはいっているため
Mesaを使用する。 YaST2を起動し、Mesa-develをインストール。

(4)DAWN
ここでも/usr以下にdawn_3_88a.tazを展開
DAWNをダウンロードし、/usr/へ移動させ、端末で展開、実行

この後設定を聞かれる。データの位置に依るが
以下のように入力する

********************************************************
* Configure script to generate Makefile of DAWN *
* ------ with OpenGL mode *
* *
* (Note: If you do not want to incorporate OpenGL *
* mode, use the other script "configure_nogl".) *
********************************************************


Input C++ compiler name (e.g. g++, no default).
:
g++

Input optimization option (e.g. -O2, no default)
:

Input Tcl/Tk window shell name
(e.g. wish, no default):
wish

Input include directory of Xlib "with -I":
(e.g. -I/usr/X11R6/include)
Hit return key if path is already set properly. )
:
-I/usr/X11R6/include

Input lib directory of Xlib "with -L":
(e.g. -L/usr/X11R6/lib)
Hit return key if path is already set properly.)
:
-L/usr/X11R6/lib

Input the first include directory of OpenGL "with -I":
(e.g. -I/usr/X11R6/include)
Hit return key if path is already set properly. )
:

Input the second include directory of OpenGL "with -I":
(e.g. -I/usr/X11R6/include/GL
Hit return key if path is already set properly. )
:
-I/usr/include/GL

Input lib directory of OpenGL "with -L":
(e.g. -L/usr/X11R6/lib
Hit return key if path is already set properly.)
:
-L/usr/lib

Select OpenGL/Mesa or old Masa (0: OpenGL/Mesa , 1: Old Mesa (ver.3.0)):
0

Input directory to install executable files
(e.g. /usr/local/bin, no default ):
/usr/local/bin

Select a system (0: Defalut, 1: AIX, 2: IRIX, 3: Solaris, 4: RedHat/FedoraCore):
4

Do you use remote-visualization function? (y/n, no default)
(Select n if your compilation fails for FRClientServer.cc)
:
n

すると、端末に以下のような表示が、確認しよう

C++ compiler : g++
Optimization level :
Tcl/Tk window shell : wish
Xlib include directory : -I/usr/X11R6/include
Xlib lib directory : -L/usr/X11R6/lib
OpenGL include directory:
-I/usr/include/GL
OpenGL lib directory : -L/usr/lib
OpenGL libraries : -lGLU -lGL
Socket libraries :
System name : RedHat
Remote visualization : n


終わったら、makeする。

インストールが終了したら動作確認

操作windowがでるのでページを切り替えて x から epsファイルを選択
displayに設定してOK(描画する) ワイヤーが見えたらOK.


4.Geant4のインストール
rootで作業していたがこれからは自分のアカウントで作業する。

(1)Geant4ファイルの展開
自分のホームディレクトリに本体を展開。

architecture.gmkの以下の部分を編集する

(2)bashの編集
bashはhomeの下にあるので、

bashの最後に以下を追加する Geant4 STLportのバージョンに気をつけること

(3)Geant4のmake

makeには非常に時間がかかる(3時間ぐらいかかる)
Geant4にはexampleがあるのでmakeをしてみる
makeが終了したら、exampleを実行し、動作確認。

とし、さっぱりしてから設定を変えてやり直し

(注)ここで、
libCLHEP-1.9.9.2.aがないといわれたら、
$ cd /usr/local/lib
$ ln -s libCLHEP-g++.1.9.2.2.a libCLHEP.a
libCLHEP-1.9.9.2.soがないといわれたら、環境設定の見直し。
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
が間違っていないかを確認。)

(4)vis.macの書き換え
Geant4の可視化をするためにはヴィジュアルマクロの設定を書き換える必要がある
/vis/open DAWNFILE の次に /vis/open OGLIXが起動するようになっているが、
これは動かないので、コメントアウトする。

(5)Geant4の動作確認
 (3)のmakeが通ったら、デスクトップ上に作業フォルダ(example3)を作成し

Geant4を起動
作業フォルダ(example3)には(4)のvis.macを入れておく

DAWNのdisplayが出たら、パネルの>>をクリック。
Device sectionをEPSに、PostScript previewerにdisplayと書きこみ、
Save Defaultをクリック。次から使うたびにLoad Defaultする。
これで描画windowを左クリックすればいろいろ遊べる。
OKをクリックすれば端末にGeant4起動。>Idle と出るから、ここでいろいろ命令する。

(6)Geant4の簡単な設定

・粒子の変更

・粒子のエナジーの変更

・イベント開始

いろいろ遊ぶといい。
helpと打つとhelpが出るので確認すると良い
確認したい命令の数字を打ち込んでエンター
0でhelp終了

大量にRunすると
描画データが大量に作成されファイルサイズ超過で途中で止まる。
/vis/disableで描画しないようにする

Geant4を終了するときは、

で終了

自分でexampleの中身を変更するときは
必ずフォルダごとバックアップをとっておくこと