Geant4
ちょっと久しぶりに Geant4 を使うことになったので、Lion に Geant4 9.5 p01 を入れました。以前に使っていたのは 9.3 なのですが、かなり作法が変わってしまい困惑。ということで作業記録を。Snow Leopard に 9.3p01 を入れた記録はこちら。(2012.12.5 追…
Snow Leopard に Geant4 9.3p01 を先日入れたところ、~/.zshrc で $G4INSTALL/env.sh を読み込むたびに warning を吐くようになりました。 DYLD_LIBRARY_PATH is set to include CLHEP and Geant4 libraries. NOTE : you should verify that the correct pat…
Stanford に職場が移り、色々と新しい作業を始める前に、Snow Leopard に移行することにしました。新しい研究を始めてから環境移行すると面倒なので。 Snow Leopard Snow Leopard の DVD から、HDD を一旦消去して clean install した。QuickTime 7、Rosetta…
2010 年 2 月にG4TessellatedSolid を使った場合に optical photon の tracking に bug があると報告したのですが、2 ヶ月かかってようやく修正版のコードを作成してもらえました。担当の方は企業に勤めているそうで、時間を割くのはなかなか難しかったでし…
GDML を使って複雑な形状を Geant4 に取り込む場合、G4TessellatedSolid という形状が使われます。四角形や三角形を組み合わせた、何でもありのポリゴンです。好きな形状を使えるので自由度は高いのですが、最新版の Geant4 9.3 (もしくはそれ以前も) を使う…
Geant4 のソースコードがあまりにも汚く、さらに KEK に用意されている doxygen や LXR のページの可読性の低さに辟易し始めています。たしか 5 年前くらいだったか、ここで Coding Conventionsのないプログラムを解読することのストレスは、実感してみなく…
Geant4のmakeはGNU標準とは少し違うので、makeをmulti coreのCPUで並列化させて走らせたいときは、 $ ./configure $ make -j 4 $ make installとやるのではなく、 $ export MAKEFLAGS="-j 4" $ ./Configure -build $ ./Configure -install $ ./Configureのよ…
OS X Leopard に附属の X11 はいくつか変な挙動があるので、 非公式のX11 2.4.0 を自分の Mac には install して使っています。ところが、この 2.4.0 と Geant4 を組み合わせた場合にだけ、これまた変な挙動を示します。ここに既に bug report が上がってい…
HEPの人はあれだけ複雑なGeant4のgeometryをどうやって記述しているのかよく分からないのですが(どなたか教えて下さい Geant4 の大御所の方にお伺いしたところ、HEP の方々は結構手でゴリゴリと GDML を書いているそうです。CAD、STEP、GDML の変換はあまり…
反射材の入れ方のまとめ。ここでGeant4のopticalをやっている中の人に教えて頂きました。前にも書いたように、反射材の設定は、polishedかgroundか、frontpaintedかbackpaintedかの組み合わせで、合計4種類あります。 polishedfrontpainted 表面がツルツルに…
painting の種類の説明 G4LogicalBorderSurfaceとG4LogicalSkinSurfaceの違いについて、G4LogicalBorderSurfaceの2つの物質の向きについて 蔵重さんの全般的な解説 結晶の表面が複数種類の処理のときにどうするか 結晶の表面の巻き方の処理とか
シンチレータの周りを反射材で覆ったような状況を考える場合には、G4OpticalSurface::SetFinishを使って"painted"の指定をする必要があります。いくつかの種類があって、"polishdedfrontpainted"、"polishedbackpainted"、"groundfrontpainted"、"groundback…
G4MaterialPropertiesTableの設定には、"SPECULARLOBECONSTANT"、"SPECULARSPIKECONSTANT"、"BACKSCATTERCONSTANT"という名前を見ただけではよく分からない定数の設定項目があります。Geant4のdocumentやsource codeを読むだけでは直感的に分かりにくいので…
Geant4のoptical photonでは、G4OpticalSurfaceの設定によって散乱の仕方が変わります。"unified"の場合は、境界面を"polished"、"polishedackpainted"、"polishedfrontpainted"にしている場合、というparameter(単位はrad)を導入することで、その散乱「具…
Geant4であるプログラムを書いていたところ、segmentation faultとGDBの出力結果ではまりました。以下のコードをstepping actionの中で使おうとしたところ、 void SteppingAction::UserSteppingAction(const G4Step* step) { RunAction* action = (RunAction…