Geant4の使い方

Geant4は高エネルギー物理学分野で利用されている測定器シミュレーションのツールキットです。

日本ではKEKを中心としたGeant4日本グループが定期的に初心者向け講習会を開催しています。 僕も2009年12月に開催された講習会に参加しましたが、プログラミング超初心者だったので、 自分がわからないこともわからないレベルでかなり苦労(というか挫折)した覚えがあります。

宇宙線測定のアウトリーチ活動を進めるにつれて、簡単でよいので測定器シミュレーションができたらもっと楽しいだろうなと思い、使い方の理解&整理に再挑戦してみます。 ここでは、Geant4日本グループが公開している初心者講習会資料を参考にしています。

インストール

基本的に自分でビルドしてインストールする必要があります。 spackというスパコン向けのパッケージ管理ツールでのインストールを試してみたので、おまけ程度に載せておきます。

エラー対処

遭遇したエラーと対処方法をまとめました。

知っておきたかったこと

例題したい

実験したい

ステップ操作したい

マクロしたい

マネージャー操作したい

ジオメトリ操作したい

1auto* rm = G4RunManagerFactory::CreateRunManager();
2auto* detector = new DetectorConstruction;
3rm->SetUserInitialization(detector);

SensitiveDetectorしたい

マテリアル操作したい

1auto nm = new G4NistManager::Instance();
2auto air = nm->FindOrBuildMaterial("G4_AIR");

相互作用したい

1auto* rm = G4RunManagerFactory::CreateRunManager();
2auto* physics = new FTFP_BERT{};
3rm->SetUserInitialization(physics);

入射粒子したい

記録したい

可視化したい

乱数したい

対話モードしたい

外部ライブラリしたい

リファレンス