89 lines
2.8 KiB
Plaintext
89 lines
2.8 KiB
Plaintext
|
|
RE03 - An extended example for run and event
|
|
--------------------------------------------
|
|
|
|
Contact : M.Asai (SLAC/JLab), A.Kimura (AIT), T.Aso (TNCMT)
|
|
|
|
1. Introduction
|
|
|
|
This example demonstrates how to use UI-command base scoring.
|
|
It create parallel world(s) for defining scoring mesh(es).
|
|
|
|
Due to some performance overhead, this functionality is not
|
|
provided by default. To get it included, the pointer to
|
|
G4ScoringManager must be accessed. The access to the static
|
|
method G4ScoringManager::GetScoringManager() activates this
|
|
functionality.
|
|
|
|
1.1 Geometry and primary particle
|
|
|
|
It has just one water box in the world volume filled by air.
|
|
No detector in the mass geometry. Particle gun shoots a gamma
|
|
into the water box.
|
|
|
|
1.2 Physics
|
|
|
|
The physics list is taken from referenced physics-list QGS_BIC
|
|
in Geant4.
|
|
|
|
2. Macro files
|
|
|
|
2.1 "run.mac"
|
|
|
|
"run.mac" is the main macro file of this example for both
|
|
batch and interactive modes.
|
|
|
|
In interactive mode, trajectories are not visualized by default
|
|
for the sake of execution speed. To visualize them, comment out
|
|
lines of /vis/disable and /vis/enable in "run.mac".
|
|
|
|
In addition, in sub-event parallel mode, only the trajectories
|
|
created in the master thread are visualized by default.
|
|
Un-comment the line of /run/trajectoriesToBeMerged in "vis.mac"
|
|
to visualize all trajectories.
|
|
|
|
"draw.mac" is used by "run.mac" to visualize a score.
|
|
|
|
2.2 Other macro files
|
|
|
|
"run2.mac" through "run4.mac" macro files should be used
|
|
independently. They demonstrate additional functionalities of
|
|
command-based scoring. Each macro file create its own scoring
|
|
parallel world(s).
|
|
|
|
- "run2.mac" : defining three box meshes of different sizes
|
|
and granurarities touching to each other
|
|
- "run3.mac" : defining two box meshes of different sizes and
|
|
granurarities overlaying one over the other to demonstrate
|
|
changing granurarity of a box mesh
|
|
- "run4.mac" " defining a cylindrical mesh
|
|
|
|
IMPORTANT: DO NOT use more than one of these macro files in
|
|
one execution of this example.
|
|
|
|
"drawSlice.mac" and "drawCylinderSlice.mac" are used internally
|
|
from "run*.mac" to draw a single slice of the corresponding mesh.
|
|
|
|
3. RE03ActionInitialization
|
|
|
|
This UserActionInitialization class works for all Geant4 run
|
|
modes, i.e. sequential mode, event-level paralle mode and
|
|
sub-event-level parallel mode.
|
|
|
|
4. RE03UserScoreWriter
|
|
|
|
G4ScoringManager has a default score writer which dumps every
|
|
entry of one quantity of a mesh for all quantities of the mesh
|
|
one by one in CSV format. To alternate the file format the user
|
|
can implement his/her own score writer deriving from G4VUserScoreWriter
|
|
base class and set it to G4ScoringManager. To demonstrate this,
|
|
RE03UserScoreWriter is included in this example. To use this
|
|
alternative writer, un-comment its instantiation in RE03.cc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|