155 lines
6.1 KiB
Plaintext
155 lines
6.1 KiB
Plaintext
|
|
Examples for event biasing
|
|
--------------------------
|
|
|
|
This directory includes example applications to demonstrate the usage of
|
|
different biasing techniques supported in Geant4, or possible from the
|
|
user applications.
|
|
|
|
|
|
General remark to biasing
|
|
-------------------------
|
|
The tools provided for importance sampling (or geometrical splitting and
|
|
Russian roulette) require the user to have a good understanding of the
|
|
physics in the problem. This is because the user has to decide which
|
|
particle types have to be biased, define the regions (physical volumes,
|
|
replicas) and assign importances to that regions. If this is not done
|
|
properly it can not be expected that the results describe a real
|
|
experiment. The examples given here only demonstrate how to use the tools
|
|
technically. They don't intend to produce physical correct results.
|
|
|
|
General remark to scoring
|
|
-------------------------
|
|
A interface G4VPScorer is provided for the user. The user may create his
|
|
own class to perform the desired scoring. The user defined class
|
|
therefore should inherit from the interface G4VPScorer.
|
|
There are two example scorers G4PScorer and G4PIScorer provided.
|
|
When scoring is done in a "scoring" or in a "importance" geometry
|
|
special action has to be taken to prevent counting of
|
|
"collisions" with boundaries of the tracking geometry as interactions.
|
|
This is differently handled when scoring is done in the tracking geometry.
|
|
The scorers B01Scorer and B02Scorer show the difference in that case.
|
|
The Scorer B06Scorer checks for consistency of importance and weight.
|
|
|
|
Known problems
|
|
--------------
|
|
In the following scenario it can happen that a particle is not
|
|
biased and it's weight is therefore not changed even if it crosses
|
|
a boundary where biasing should happen.
|
|
The importance sampling creates particles on boundaries
|
|
between volumes. If the GPIL method of a physical process returns
|
|
0 as step length for a particle on a boundary and if the PostStepDoIt of
|
|
that process changes the direction of the particle to go back in the
|
|
former volume the biasing won't be invoked.
|
|
This will produce particles with weights that do not correspondent to the
|
|
importance of the current volumes.
|
|
|
|
|
|
I. Examples for scoring without biasing
|
|
=======================================
|
|
|
|
I. 1. Example B01
|
|
-----------------
|
|
This example shows how to use scoring in the "tracking" geometry.
|
|
It scores several values for neutrons for every physical volume
|
|
in the tracking geometry.
|
|
All scored values are printed after the running. In addition a more
|
|
exclusive output of selected values is printed. The way the
|
|
last output is produced shows how to extract certain values from all
|
|
scored values.
|
|
|
|
|
|
I. 2. Example B02
|
|
-----------------
|
|
This example shows how to use scoring in a "parallel" or "scoring"
|
|
geometry. In this example a tracking and a scoring geometry is
|
|
constructed. Gammas are scored in the scoring geometry. The scored values
|
|
are dumped to the screen after the run. How to access the score values
|
|
more exclusively is shown in example B01.
|
|
|
|
|
|
II. Examples for biasing without scoring
|
|
========================================
|
|
|
|
II. 1. Example B03
|
|
------------------
|
|
This example shows how to use biasing in the "tracking" geometry.
|
|
It does not do scoring. The importances are setup during the
|
|
mass detector construction in the file:
|
|
B03/src/B03DetectorConstruction.cc.
|
|
|
|
|
|
II. 2. Example B04
|
|
------------------
|
|
This example shows how to use biasing according to a "parallel"
|
|
or "importance" geometry. The importances are setup during the
|
|
construction of the parallel geometry in the file:
|
|
B04/src/B04ImportanceDetectorConstruction.cc.
|
|
|
|
|
|
|
|
III. Examples for biasing and scoring
|
|
=====================================
|
|
|
|
III. 1. Example B05
|
|
-------------------
|
|
Biasing and Scoring in the "tracking" geometry.
|
|
The importances are setup during the mass detector construction
|
|
in the file: B05/src/B05DetectorConstruction.cc.
|
|
Scoring is done with G4PIScorer from transportation. G4PIScorer
|
|
scores several values for all the physical volumes of a geometry.
|
|
It also checks that the importance value times track weight = 1,
|
|
which should hold in "simple" cases.
|
|
|
|
|
|
III. 2. Example B06
|
|
-------------------
|
|
Biasing and scoring in a "parallel" geometry.
|
|
The importances are setup during the construction of the parallel geometry
|
|
in the file B06/src/B06ImportanceDetectorConstruction.cc.
|
|
Customised scorer B06Scorer and printer B06ScorePrinter are used.
|
|
|
|
|
|
|
|
III. 3. Example B07
|
|
-------------------
|
|
Biasing neutrons and gammas in a "parallel" geometry.
|
|
The physics list used in this example creates only processes for
|
|
gammas and neutrons. Other particles that my be produced
|
|
will have no processes and can therefore not produce
|
|
any particles.
|
|
The idea is to have the simulation performing somewhat like a
|
|
transportation Monte Carlo that only knows about neutrons and gammas and
|
|
is only used in a limited energy range.
|
|
|
|
|
|
IV. Example for weight window sampling
|
|
-------------------------------------
|
|
|
|
|
|
IV.1 Example B08
|
|
----------------
|
|
This is an example using importance sampling and weight window biasing
|
|
together with scoring in a parallel geometry. Only the sampler
|
|
for importance, weight window sampling and scoring in a parallel geometry
|
|
exists at the moment.
|
|
The example setup:
|
|
A 180 cm long concrete shield is divided into 18 cells of 10 cm each.
|
|
The cells are created in a parallel geometry. Importance values
|
|
can be applied via an init.mac file. Scoring is done according to the
|
|
cells for neutrons and gammas.
|
|
Since this example intents to show the weight window sampling
|
|
the primary neutrons are created with the relatively high
|
|
energy of 300 MeV. Neutrons with this energy
|
|
penetrate the concrete (according to the chosen physics list)
|
|
relatively easy. So no importance sampling would be necessary.
|
|
The high energy is selected to show the effect of the weight window
|
|
sampling. High energetic secondaries which are not importance sampled
|
|
may create neutrons which have a weight different from the inverse of
|
|
the importance in the cell. If a finite weight window is chosen this
|
|
results in relative average weights of the tracks in a given cell not
|
|
equal to one.
|
|
If the upper and lower limit of the weight window is set to 1
|
|
the relative weights are 1.
|
|
|