1361 lines
58 KiB
Plaintext
1361 lines
58 KiB
Plaintext
|
|
=========================================================
|
|
Geant4 - Radiation monitor example
|
|
=========================================================
|
|
|
|
README
|
|
---------------------
|
|
|
|
0. INTRODUCTION
|
|
|
|
The Radiation monitor example derives from a Geant4 application whose scope
|
|
is to study of the effects of a chip carrier on silicon radiation monitoring
|
|
devices used in the LHC environment. Further details are available at the
|
|
|
|
http://www.ge.infn.it/~geant4/hep/radmon
|
|
|
|
website.
|
|
|
|
|
|
|
|
1. HOW TO BUILD
|
|
|
|
Run gmake from the
|
|
|
|
$G4INSTALL/examples/advanced/radiation_monitor
|
|
|
|
directory. The executable
|
|
|
|
$G4WORKDIR/bin/Radmon
|
|
|
|
will be built.
|
|
|
|
If you set the environment variable G4VIS_USE, the geant4 visualisation
|
|
module will be build.
|
|
|
|
If you set the environment variable G4ANALYSIS_USE, the analysis will be
|
|
built. Analysis module is based on AIDA 3.2.1 and was tested with PI 1.3.5.
|
|
Probably analysis will run also on previous AIDA versions, but it is no
|
|
garateed
|
|
|
|
|
|
|
|
2. COMMAND LINE SYNTAX
|
|
|
|
Run
|
|
|
|
$G4WORKDIR/bin/Radmon -h
|
|
|
|
for command line help. The following output will be printed out
|
|
_____________________________________________________________________________
|
|
|
|
Usage: Radmon [-h|-H|-?] [-b] [-v] [<filename>]
|
|
|
|
-h -H -? Usage help
|
|
-b Force non-interactive mode
|
|
-v Verbose output
|
|
<filename> Name of the macro to be run
|
|
|
|
If ".startup.mac" is present, it will be run before anything else.
|
|
_____________________________________________________________________________
|
|
|
|
-v options adds some extra messages during initialization phase.
|
|
At the end of initialization, .startup.mac file is run (if present) and then
|
|
<filename> is run (if specified on the command line). After having run these
|
|
two files, if -b option is omitted, the interactive session starts.
|
|
|
|
|
|
|
|
3. USER INTERFACE
|
|
|
|
Geometry, Materials, Physics, Beam type, Sensible volumes, Quantities to be
|
|
stored for the analysis are all defined interactively (or in macro files)
|
|
through the user interface. This allows a high level of flexibility in the
|
|
setup definition, without need to rebuild the code. Gemetry types, Physics
|
|
list, Beam types, Quantities to be stored for the analysis are all
|
|
modularired using abstract classes. If current modules satisfy your
|
|
requirements, you will not need to add code, but only to modify macro files
|
|
or insert commands interactively through command line.
|
|
|
|
3.1 RADMON PROPRETARY UI COMMANDS
|
|
|
|
The introduced user interface commands are:
|
|
|
|
/radmon/application/EnableRunsDump
|
|
/radmon/application/DisableRunsDump
|
|
/radmon/application/DumpEventsEvery
|
|
/radmon/application/DisableEventsDump
|
|
/radmon/application/EnableTracksVisualisation
|
|
/radmon/application/DisableTracksVisualisation
|
|
/radmon/detectorFactory/Dump
|
|
/radmon/detector/EnableEnvironment
|
|
/radmon/detector/DisableEnvironment
|
|
/radmon/detector/SetEnvironmentType
|
|
/radmon/detector/SetEnvironmentAttribute
|
|
/radmon/detector/ClearEnvironmentAttribute
|
|
/radmon/detector/CreateMultilayer
|
|
/radmon/detector/RemoveMultilayer
|
|
/radmon/detector/SetMultilayerWidth
|
|
/radmon/detector/SetMultilayerHeight
|
|
/radmon/detector/AppendLayerToMultilayer
|
|
/radmon/detector/RemoveLayerFromMultilayer
|
|
/radmon/detector/RemoveAllLayersFromMultilayer
|
|
/radmon/detector/SetLayerThickness
|
|
/radmon/detector/SetLayerType
|
|
/radmon/detector/SetLayerAttribute
|
|
/radmon/detector/ClearLayerAttribute
|
|
/radmon/detector/CreatePlacement
|
|
/radmon/detector/RemovePlacement
|
|
/radmon/detector/SetPlacementPosition
|
|
/radmon/detector/SetPlacementRotation
|
|
/radmon/detector/SetRelativePlacementPosition
|
|
/radmon/detector/SetRelativePlacementRotation
|
|
/radmon/detector/DumpLayout
|
|
/radmon/detector/Load
|
|
/radmon/detector/Save
|
|
/radmon/materials/CreateElement
|
|
/radmon/materials/CreateMaterial
|
|
/radmon/materials/AddComponentByAtoms
|
|
/radmon/materials/AddComponentByFraction
|
|
/radmon/materials/SetMaterialColor
|
|
/radmon/materials/SetMaterialTrasparency
|
|
/radmon/materials/SetMaterialVisibility
|
|
/radmon/materials/SetMaterialStyle
|
|
/radmon/materials/Dump
|
|
/radmon/materials/Insert
|
|
/radmon/materials/Save
|
|
/radmon/subPhysicsListFactory/Dump
|
|
/radmon/physics/AddPhysicsList
|
|
/radmon/physics/RemovePhysicsList
|
|
/radmon/physics/SetPhysicsListAttribute
|
|
/radmon/physics/ClearPhysicsListAttribute
|
|
/radmon/physics/DumpLayout
|
|
/radmon/physics/Load
|
|
/radmon/physics/Save
|
|
/radmon/generatorsFactory/Dump
|
|
/radmon/generator/InsertSource
|
|
/radmon/generator/SetRelativeSourceIntensity
|
|
/radmon/generator/RemoveSource
|
|
/radmon/generator/AppendSourceAlgorithm
|
|
/radmon/generator/SetSourceAlgorithmType
|
|
/radmon/generator/RemoveSourceAlgorithm
|
|
/radmon/generator/SetSourceAlgorithmAttribute
|
|
/radmon/generator/ClearSourceAlgorithmAttribute
|
|
/radmon/generator/Load
|
|
/radmon/generator/Save
|
|
/radmon/generator/DumpLayout
|
|
/radmon/dataAnalysisFactory/Dump
|
|
/radmon/analysis/SetOutputFileName
|
|
/radmon/analysis/SetOutputFileFormat
|
|
/radmon/analysis/CreateSensitiveDetector
|
|
/radmon/analysis/SetSensitiveDetectorType
|
|
/radmon/analysis/RemoveSensitiveDetector
|
|
/radmon/analysis/CreateSensitiveDetectorType
|
|
/radmon/analysis/RemoveSensitiveDetectorType
|
|
/radmon/analysis/AppendDataAnalysisToSensitiveDetectorType
|
|
/radmon/analysis/SetDataAnalysisType
|
|
/radmon/analysis/RemoveDataAnalysis
|
|
/radmon/analysis/SetDataAnalysisAttribute
|
|
/radmon/analysis/ClearDataAnalysisAttribute
|
|
/radmon/analysis/DumpLayout
|
|
/radmon/analysis/Load
|
|
/radmon/analysis/Save
|
|
|
|
Details of the commands will be given in each specific section.
|
|
|
|
A common feature to all the code is the presence of 'attributes'. Each
|
|
module of geometry, physics, beam type, analysis can have specific
|
|
parameters that define its behaviour. These parameters are set through
|
|
'attributes'. Next sections will document for each implemented module, the required and optional
|
|
attributes, their meaning and their format.
|
|
|
|
Everything in the Radmon application is case sensitive.
|
|
|
|
|
|
|
|
4. APPLICATION
|
|
|
|
Application commands sets the behaviour of helper user actions:
|
|
|
|
Command: /radmon/application/EnableRunsDump
|
|
Parameters: [none]
|
|
Description: Enables the print out of the run number at the begin of the run
|
|
|
|
Command: /radmon/application/DisableRunsDump
|
|
Parameters [none]
|
|
Description: Disables the print out of the run number
|
|
|
|
Command: /radmon/application/DumpEventsEvery
|
|
Parameters <n> [integer]
|
|
Description: Enables the print out of the event number at the beginning of
|
|
the event (1 out of <n> events)
|
|
|
|
Command: /radmon/application/DisableEventsDump
|
|
Parameters [none]
|
|
Description: Disables the print out of the event number
|
|
|
|
Command: /radmon/application/EnableTracksVisualisation
|
|
Parameters [none]
|
|
Description: Enables the display of the tracks at the end of the run
|
|
Requires: G4VIS_USE environment variable at build time
|
|
See also: /vis/scene/endOfEventAction [Geant4 built-in UI command]
|
|
|
|
Command: /radmon/application/DisableTracksVisualisation
|
|
Parameters [none]
|
|
Description: Disables the display of the tracks
|
|
Requires: G4VIS_USE environment variable at build time
|
|
|
|
|
|
|
|
5. GEOMETRY
|
|
|
|
Geometry is completely built interactively. Two concepts are available:
|
|
|
|
- Environment
|
|
- Multi-layers
|
|
|
|
5.1 ENVIRONMENT
|
|
|
|
Defines the geometry in which "multi-layers" will be placed. The environment
|
|
defines the world volume and eventually other volumes that are not
|
|
"multi-layers" volumes. For example the "TestBeam" environment type
|
|
(currently not implemented) will define all the geometries of the test beam
|
|
except from the tested chips+packagings.
|
|
|
|
Command: /radmon/detector/DisableEnvironment
|
|
Parameters: [none]
|
|
Description: Disables the usage of specific environments. The world volume
|
|
will be a sphere of RADMON_VACUUM (vacuum) large enough to contain
|
|
all the placed multi-layers
|
|
|
|
Command: /radmon/detector/EnableEnvironment
|
|
Parameters: [none]
|
|
Description: Enables the usage of a specific environment. The enviroment is
|
|
defined through the next commands
|
|
|
|
Command: /radmon/detector/SetEnvironmentType
|
|
Parameters: <type> [string]
|
|
Description: Fix the environment type to the type <type>. For a list of
|
|
available strings use /radmon/detectorFactory/Dump command
|
|
See also: /radmon/detectorFactory/Dump (Chapter 5.3)
|
|
|
|
Command: /radmon/detector/SetEnvironmentAttribute
|
|
Parameters: <name> [string], <value> [string]
|
|
Description: Configure the selected environment type setting the attribute
|
|
<name> to the value <value>. Each environment type has its own
|
|
attributes. Attributes are detailed in Chapter 5.4
|
|
|
|
Command: /radmon/detector/ClearEnvironmentAttribute
|
|
Parameters: <name> [string]
|
|
Description: Removes the attribute <name> from the environment
|
|
configuration.
|
|
|
|
5.2 MULTILAYERS
|
|
|
|
Multilayers are wafer made up of different layers. Several multilayers can
|
|
be defined. A instance of a multilayer is called placed multilayer. A placed
|
|
multilayer has a position and a rotation relative to the world volume. More
|
|
placed multilayers can be instanced for each multilayer type.
|
|
|
|
5.2.1 MULTILAYERS
|
|
|
|
Command: /radmon/detector/CreateMultilayer
|
|
Parameters: <name> [string]
|
|
Description: Creates a multilayer with name <name>
|
|
|
|
Command: /radmon/detector/RemoveMultilayer
|
|
Parameters: <name> [string]
|
|
Description: If defined and without placed instances, removes the multilayer
|
|
named <name>. If the multilayer has placed instances. You will
|
|
have to remove the placed instances with
|
|
/radmon/detector/RemovePlacement command.
|
|
See Also: /radmon/detector/RemovePlacement (Chapter 5.2.2)
|
|
|
|
Command: /radmon/detector/SetMultilayerWidth
|
|
Parameters: <name> [string], <width> [length]
|
|
Description: Defines the multilayer width. the second argument is a space
|
|
separated string with a real number and a unit of length
|
|
|
|
Command: /radmon/detector/SetMultilayerHeight
|
|
Parameters: <name> [string], <height> [length]
|
|
Description: Defines the multilayer height
|
|
|
|
Command: /radmon/detector/AppendLayerToMultilayer
|
|
Parameters: <name> [string], <label> [string]
|
|
Description: Adds a layer to the multilayer named <name>. The layer will be
|
|
referenced by the label <label>
|
|
The multilayer thickness is alogn the z axis. Width is along x
|
|
axis and height along y axis. Appended layers are placed
|
|
consecutively along the z direction. The first appended layer
|
|
has a z coordinate lower than the second appended layer.
|
|
AppendLayerToMultilayer stacks the layers on top of the previous
|
|
ones. The origin of reference system for the multilayer is
|
|
placed in its center.
|
|
|
|
Example:
|
|
|
|
/radmon/detector/AppendLayerToMultilayer mly1 ly1
|
|
/radmon/detector/AppendLayerToMultilayer mly1 ly2
|
|
/radmon/detector/AppendLayerToMultilayer mly1 ly3
|
|
|
|
Width mly1
|
|
<----------------------------------------->
|
|
_________________________________________ ...
|
|
| | ^
|
|
| ly3 | | Thickness ly3
|
|
|_________________ z ^ __________________|...v
|
|
| | ly2 | ^ Thickness ly2
|
|
|_________________ +---> x _____________|...v
|
|
| O | ^
|
|
| ly1 | | Thickness ly1
|
|
| | |
|
|
|_________________________________________|...v
|
|
|
|
|
|
Command: /radmon/detector/RemoveLayerFromMultilayer
|
|
Parameters: <name> [string], <label> [string]
|
|
Description: Removes the layer named <label> from the multilayer named
|
|
<name>
|
|
|
|
Command: /radmon/detector/RemoveAllLayersFromMultilayer
|
|
Parameters: <name> [string]
|
|
Description: Removes all the layers form the multilayer.
|
|
|
|
Command: /radmon/detector/SetLayerThickness
|
|
Parameters: <name> [string], <label> [string], <thickness> [length]
|
|
Description: Sets the thickness of a layer named <label> defined in
|
|
multilayer named <name> to <thickness>
|
|
|
|
Command: /radmon/detector/SetLayerType
|
|
Parameters: <name> [string], <label> [string], <type> [string]
|
|
Description: Defines the layer type for a layer named <label> defined in
|
|
multilayer named <name>. The type <type> must be one of the
|
|
available modules. (Chapter 5.4)
|
|
See also: /radmon/detectorFactory/Dump (Chapter 5.3)
|
|
|
|
Command: /radmon/detector/SetLayerAttribute
|
|
Parameters: <name> [string], <label> [string], <attribute> [string],
|
|
<value> [string]
|
|
Description: Sets the attribute <attribute> to value <value> for a layer
|
|
named <label> defined in multilayer named <name>.
|
|
See also: Chapter 5.4
|
|
|
|
Command: /radmon/detector/ClearLayerAttribute
|
|
Parameters: <name> [string], <label> [string], <attribute> [string]
|
|
Description: Removes the attribute <attribute> from a layer named <label>
|
|
defined in multilayer named <name>.
|
|
|
|
5.2.2 PLACED MULTILAYERS
|
|
|
|
Command: /radmon/detector/CreatePlacement
|
|
Parameters: <name> [string], <type> [string]
|
|
Description: Insert in the geometry a multilayer object named <type>. The
|
|
inserted instance of the multilayer will be referenced though
|
|
the label <name>
|
|
|
|
Command: /radmon/detector/RemovePlacement
|
|
Parameters: <name> [string]
|
|
Description: Removes the multilayer instance named <name> from the geometry
|
|
|
|
Command: /radmon/detector/SetPlacementPosition
|
|
Parameters: <name> [string], <x> [real], <y> [real], <z> [real],
|
|
<unit> [unit of length]
|
|
Description: Set the absolute position of the multilayer instance named
|
|
<name>
|
|
|
|
Command: /radmon/detector/SetPlacementRotation
|
|
Parameters: <name> [string], <theta> [real], <phi> [real], <delta> [real],
|
|
<unit> [unit of angle]
|
|
Description: Set the absolute direction of the multilayer instance named
|
|
<name>. The multilayer is rtated by an angle <delta> along the
|
|
axis defined by <theta> and <phi> angles
|
|
|
|
Command: /radmon/detector/SetRelativePlacementPosition
|
|
Parameters: <name> [string], <reference> [string], <x> [real], <y> [real],
|
|
<z> [real], <unit> [unit of length]
|
|
Description: Set the relative position of the multilayer instance named
|
|
<name> relative to the coordinates system of another placed
|
|
multilayer named <reference>
|
|
|
|
Command: /radmon/detector/SetRelativePlacementRotation
|
|
Parameters: <name> [string], <reference> [string], <theta> [real],
|
|
<phi> [real], <delta> [real], <unit> [unit of angle]
|
|
Description: Set the absolute direction of the multilayer instance named
|
|
<name> relative to the coordinates system of another placed
|
|
multilayer named <reference>. The multilayer is rtated by an
|
|
angle <delta> along the axis defined by <theta> and <phi>
|
|
angles
|
|
|
|
5.3 OTHER GEOMETRY COMMANDS
|
|
|
|
Command: /radmon/detectorFactory/Dump
|
|
Parameters: [none]
|
|
Description: Dumps the complete list of implemented geometry modules. A
|
|
geometry module can be used either for the definition of the
|
|
enviroment type or for the definition of a layer type. Further
|
|
details of the implemented geometry modules are available in
|
|
Chapter 5.4
|
|
|
|
Command: /radmon/detector/DumpLayout
|
|
Parameters: [none]
|
|
Description: Dumps all the details of the current geometry configuration
|
|
|
|
Command: /radmon/detector/Load
|
|
Parameters: <file name> [string]
|
|
Description: Loads the geometry data from <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
Command: /radmon/detector/Save
|
|
Parameters: <file name> [string]
|
|
Description: Stores the geometry data in <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
5.4 AVAILABLE GEOMETRY MODULES
|
|
|
|
Available geometry modules are the following:
|
|
|
|
FlatVolume
|
|
FlatVolumeWithHole
|
|
FlatVolumeWithGround
|
|
FlatVolumeWithGroundAndKeyMarks
|
|
FlatVolumeWithGroundAndKeyMarksAndHole
|
|
FlatVolumeWithTracks
|
|
FlatVolumeWithPins
|
|
FlatVolumeWithTracksAndHole
|
|
FlatVolumeWithPads
|
|
CarvedFlatVolume
|
|
CarvedFlatVolumeWithHole
|
|
CarvedFlatVolumeWithTracks
|
|
CarvedFlatVolumeWithPins
|
|
CarvedFlatVolumeWithTracksAndHole
|
|
CarvedFlatVolumeWithGround
|
|
CarvedFlatVolumeWithGroundAndKeyMarks
|
|
CarvedFlatVolumeWithGroundAndKeyMarksAndHole
|
|
|
|
Technically any geometry model could be used in the environment type
|
|
definition, but the only one that is really relevant is FlatVolume. All the
|
|
other modules are implemented for specific packagin geometry requirements:
|
|
|
|
The * symbol used in next definitions is used to group modules categories.
|
|
|
|
Modules: *FlatVolume* (modules containing FlatVolume word)
|
|
Description: Builds a uniform box
|
|
Attributes: Width defines the box width (size along x). This
|
|
attribute is needed only when the module is used
|
|
in the environment definition.
|
|
Height defines the box height (size along y). This
|
|
attribute is needed only when the module is used
|
|
in the environment definition. Sa
|
|
Thickness defines the box thickness (size along z). This
|
|
attribute is needed only when the module is used
|
|
in the environment definition
|
|
Material Defines the material type. Materials names are
|
|
defined through materials commands (Chapter 6)
|
|
VisAttributes [OPTIONAL] Defines the visualization style of the
|
|
volume. This attribute is optional. If omitted
|
|
devault material visualization style will be used
|
|
(Chapter 6)
|
|
SensitiveDetector [OPTIONAL] Refers to a defined sensitive
|
|
detector. When particles will pass through
|
|
this volume, information will be stored according to
|
|
the configuration of the referred sensitive
|
|
detector. See Chapter 9 for further details.
|
|
|
|
Width, Height and Thikness sizes are defined by a space separated string
|
|
containing a real number followed by a unit of measure for length. Example:
|
|
'10.5 cm'
|
|
|
|
VisAttributes has the following format:
|
|
|
|
- [OPTIONAL] Either word hidden or word visible can be present. If hidden
|
|
the volume will be invisible, if visible the volume will be shown
|
|
- [OPTIONAL] Either word solid or word wireframe can be present. If solid
|
|
the volume will be drawn as a solid volume. If wireframe, the volume will be
|
|
drawn as a wireframe solid.
|
|
- [OPTIONAL] 3 or 4 real numbers between 0 and 1. The 3 numbers are the red,
|
|
green and blue color components. Optionally the 4th component is the alpha
|
|
channel.
|
|
|
|
Example: 'solid visible 1. 1. 0. 0.5' a visible solid volume yellow and 50%
|
|
transparent.
|
|
|
|
Modules: Carved*
|
|
Description: Carves the border of the box with circular holes the holes span
|
|
through the whole box thickness. Holes can be plated with
|
|
another material along the z direction. Plating thickness is
|
|
set through attributes
|
|
Attributes: HolesAlongWidth the number (integer) of holes to apply along
|
|
the x direction for each side of the box
|
|
HolesAlongHeight the number (integer) of holes to apply along
|
|
the y direction for each side of the box
|
|
HolesRadius radius of the holes
|
|
HolesStep separation between two holes
|
|
DepositOnHolesThickness [OPTIONAL] thickness of the plating
|
|
DepositOnHolesMaterial [OPTIONAL] material used for the
|
|
plating
|
|
DepositOnHolesVisAttributes [OPTIONAL] visualisation attributes
|
|
used to display the plating
|
|
|
|
__ |
|
|
\
|
|
\ |
|
|
HOLE | |
|
|
| <-------> HolesRadius
|
|
/ :____ :
|
|
__/.... | \ :
|
|
| ^ |__ * \ : * = DEPOSIT
|
|
| | HolesStep \ \:
|
|
|__.....v \ |
|
|
\ ^ HOLE | |
|
|
\ | HolesRadius /: |
|
|
HOLE |..v __/.:./:......
|
|
| | :/ : ^ DepositOnHolesThickness
|
|
/ |____/..:......v
|
|
__/ | : :
|
|
| | <--> DepositOnHolesThickness
|
|
|________ _ _ _ _ _ _
|
|
|
|
|
|
|
Modules: *WithGround*
|
|
Description: Inserts a box inside the original one, centered and made of
|
|
another material. The box spans through the whole thickness of
|
|
the mother volume
|
|
Attributes: GroundWidth width of the ground box
|
|
GroundScaleWidth [ALTERNATIVE] width of the ground box given
|
|
as a fraction (real number only)
|
|
GroundHeight height of the ground box
|
|
GroundScaleHeight [ALTERNATIVE] height of the ground box
|
|
given as a fraction
|
|
GroundMaterial material used for the ground box
|
|
GroundVisAttributes [OPTIONAL] visualisation attributes used to
|
|
display the box
|
|
|
|
Modules: *WithHole, *AndHole
|
|
Description: Makes a hole inside the original volume. The hole is centered
|
|
and spans through the whole thickness of the mother volume
|
|
Attributes: HoleWidth width of the hole box
|
|
HoleScaleWidth [ALTERNATIVE] width of the hole box given
|
|
as a fraction
|
|
HoleHeight height of the hole box
|
|
HoleScaleHeight [ALTERNATIVE] height of the hole box given
|
|
as a fraction
|
|
|
|
Modules: *WithTracks
|
|
Description: Adds tracks from the borders to de center tracks thickness
|
|
spans through the whole thickness of the mother volume.
|
|
Attributes: HolesAlongWidth See Carved*
|
|
HolesAlongHeight See Carved*
|
|
HolesRadius See Carved*
|
|
HolesStep See Carved*
|
|
TracksMaterial defines the material for the tracks
|
|
TracksVisAttributes [OPTIONAL] visualisation attributes used to
|
|
display the tracks
|
|
|
|
Modules: *WithPins
|
|
Description: Adds pins near the box borders. Pins thickness spans through
|
|
the whole thickness of the mother volume.
|
|
Attributes: HolesAlongWidth See Carved*
|
|
HolesAlongHeight See Carved*
|
|
HolesRadius See Carved*
|
|
HolesStep See Carved*
|
|
PinLength size of the pin in the direction orthogonal
|
|
to the mother volume border
|
|
MarkedPin a index between 1 and
|
|
(HolesAlongWidth+HolesAlongHeight)*2
|
|
identifing the pin to mark with a triangle
|
|
if 0 no pins will be marked
|
|
MarkedPinLength height of the triangle
|
|
PinsMaterial defines the material for the pins
|
|
PinsVisAttributes [OPTIONAL] visualisation attributes used to
|
|
display the pins
|
|
|
|
Modules: *WithPads
|
|
Description: Adds pads in the box. Pads thickness spans through the whole
|
|
thickness of the mother volume.
|
|
Attributes: PadsWidth_<index> width of the pads. Index must be >0
|
|
PadsHeight_<index> height of the pads. Index must be >0
|
|
PadsMaterial_<index> material of the pads. Index must be >0
|
|
PadsVisAttributes_<index> [OPTIONAL] visualisation attributes
|
|
of the pads. Index must be >0
|
|
PadsPosition_<index> position of the pads
|
|
|
|
Pad position is a list of pads. Each pad is devined by 3 numbers grouped
|
|
togheter by round brakets and separated by comma. The first number is the
|
|
position along x relative to the center, the second one is the position
|
|
along y relative to the center and the third (optional is a rotation angle).
|
|
Example: '(0.315 mm, 0.315 mm) (0.105 mm, 0.315 mm, 10 deg)'
|
|
|
|
Modules: *AndKeyMarks
|
|
Description: Adds marks used to identify the pin #1.
|
|
Attributes: HolesAlongWidth See Carved*
|
|
HolesAlongHeight See Carved*
|
|
HolesRadius See Carved*
|
|
HolesStep See Carved*
|
|
GroundWidth See *WithGround*
|
|
GroundScaleWidth See *WithGround*
|
|
GroundHeight See *WithGround*
|
|
GroundScaleHeight See *WithGround*
|
|
GroundMaterial See *WithGround*
|
|
GroundVisAttributes See *WithGround*
|
|
MarkedPinRadius the mark is a circular hole. This attribute
|
|
defines thee hole radius
|
|
MarkedPinStep the shift from the box border of the mark
|
|
center in the direction orthogonal to the
|
|
border itself
|
|
MarkedPin See *WithPins
|
|
|
|
|
|
|
|
6. MATERIALS
|
|
|
|
A material is defined specifing its elements, their fraction and the mass
|
|
density. An element is defined by its molecular density, its atomic number.
|
|
Materials and elements can be added interactively within Geant4 but cannot
|
|
be removed once added.
|
|
|
|
Command: /radmon/materials/CreateElement
|
|
Parameters: <name> [string], <abbreviation> [string], <z> [integer],
|
|
<molar density> [real], <unit> [molar density unit]
|
|
Description: Creates an element according to the provided parameters
|
|
|
|
Command: /radmon/materials/CreateMaterial
|
|
Parameters: <name> [string], <mass density> [real],
|
|
<unit> [mass density unit], <n> [integer]
|
|
Description: Creates a material ccording to the provided parameters. <n> is
|
|
the number of components. Components are then defined through
|
|
AddComponent* commands. All <n> components must be defined
|
|
using the same command (either AddComponentByAtoms or
|
|
AddComponentByFraction)
|
|
See also: /radmon/materials/AddComponentByAtoms,
|
|
/radmon/materials/AddComponentByFraction
|
|
|
|
Command: /radmon/materials/AddComponentByAtoms
|
|
Parameters: <name> [string], <element> [string], <nAtoms> [integer]
|
|
Description: Defines the amount of atoms of the component. <element> must be
|
|
a previously defined element
|
|
|
|
Command: /radmon/materials/AddComponentByFraction
|
|
Parameters: <name> [string], <component> [string], <fraction> [real]
|
|
Description: Defines the fraction of a specific component. <component> must
|
|
be a previously defined element or material. Fractions must sum
|
|
to 1
|
|
|
|
Command: /radmon/materials/SetMaterialColor
|
|
Parameters: <name> [string], <red> [real], <green> [real], <blue> [real]
|
|
Description: Defines the default color for this material
|
|
|
|
Command: /radmon/materials/SetMaterialTrasparency
|
|
Parameters: <name> [string], <alpha> [real]
|
|
Description: Defines the default alpha channel level for this material
|
|
|
|
Command: /radmon/materials/SetMaterialVisibility
|
|
Parameters: <name> [string], <mode> [string]
|
|
Description: Defines the default visibility for this material. <mode> must
|
|
be hidden or visible
|
|
|
|
Command: /radmon/materials/SetMaterialStyle
|
|
Parameters: <name> [string], <mode> [string]
|
|
Description: Defines the default style for this material. <mode> must be
|
|
solid or wireframe
|
|
|
|
Command: /radmon/materials/Dump
|
|
Parameters: [none]
|
|
Description: Dumps all the details of the materials defined
|
|
|
|
Command: /radmon/materials/Load
|
|
Parameters: <file name> [string]
|
|
Description: Loads the materials from <file name> file. Previously defined
|
|
materials are kept
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
Command: /radmon/materials/Save
|
|
Parameters: <file name> [string]
|
|
Description: Stores the materials in <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
|
|
|
|
7. PHYSICS
|
|
|
|
Physics must be defined before /run/initialize command. After inizialization
|
|
of the Geant4 kernel no more changes can be applyed. Physics is defined
|
|
recalling several modules. A system to identify mutual exclusive physics
|
|
modules is provided. Even if not very used, physics modules can have
|
|
attributes too.
|
|
|
|
7.1 BASIC PHYSICS COMMANDS
|
|
|
|
Command: /radmon/physics/AddPhysicsList
|
|
Parameters: <name> [string]
|
|
Description: Inserts the physics module named <name>
|
|
|
|
Command: /radmon/physics/RemovePhysicsList
|
|
Parameters: <name> [string]
|
|
Description: Removes the physics module named <name>
|
|
|
|
Command: /radmon/physics/SetPhysicsListAttribute
|
|
Parameters: <name> [string], <attribute> [string],
|
|
<value> [string]
|
|
Description: Sets the attribute <attribute> to value <value> in module
|
|
<name>
|
|
|
|
Command: /radmon/physics/ClearPhysicsListAttribute
|
|
Parameters: <name> [string], <attribute> [string]
|
|
Description: Removes the attribute <attribute> from module <name>
|
|
|
|
7.2 OTHER PHYSICS COMMANDS
|
|
|
|
Command: /radmon/subPhysicsListFactory/Dump
|
|
Parameters: [none]
|
|
Description: Dumps all the available physics modules
|
|
|
|
Command: /radmon/physics/DumpLayout
|
|
Parameters: [none]
|
|
Description: Dumps the list of selected physics modules
|
|
|
|
Command: /radmon/physics/Load
|
|
Parameters: <file name> [string]
|
|
Description: Loads the physics from <file name> file.
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
Command: /radmon/physics/Save
|
|
Parameters: <file name> [string]
|
|
Description: Stores the physics in <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
7.3 PHYSICS MODELS
|
|
|
|
Available physics models are the following:
|
|
|
|
Module: ElectronEEDL
|
|
Description: MultipleScattering, eIonisation, eBremsstrahlung and
|
|
StepLimiter. All applied to electrons only
|
|
Attributes: [none]
|
|
|
|
Module: ElectronStandard
|
|
Description: MultipleScattering, LowEnergyIonisation,
|
|
LowEnergyBremsstrahlung and StepLimiter. All applied to
|
|
electrons only.
|
|
Attributes: [none]
|
|
|
|
Module: PhotonStandard
|
|
Description: PhotoElectricEffect, ComptonScattering, GammaConversion and
|
|
StepLimiter. All applied to photons only.
|
|
Attributes: [none]
|
|
|
|
Module: PhotonEPDL
|
|
Description: LowEnergyPhotoElectric, LowEnergyCompton,
|
|
LowEnergyGammaConversion and StepLimiter. All applied to
|
|
photons only.
|
|
Attributes: [none]
|
|
|
|
Module: PositronStandard
|
|
Description: MultipleScattering, eIonisation, eBremsstrahlung,
|
|
eplusAnnihilation and StepLimiter. All applied to positrons
|
|
only
|
|
Attributes: [none]
|
|
|
|
Module: MuonStandard
|
|
Description: MultipleScattering, MuIonisation, MuBremsstrahlung,
|
|
MuPairProduction and StepLimiter applied both to mu+ and mu-.
|
|
MuonMinusCaptureAtRest aplied to mu-.
|
|
Attributes: [none]
|
|
|
|
Module: TauStandard
|
|
Description: MultipleScattering, hIonisation and StepLimiter applied both to
|
|
tau+ and tau-.
|
|
Attributes: [none]
|
|
|
|
Module: Nuclear
|
|
Description: ElectroNuclearReaction for electrons and positrons
|
|
GammaNuclearReaction up to 3.5 GeV, it's not an aTheoFSGenerator between 3
|
|
GeV and 100 TeV for photons
|
|
Attributes: [none]
|
|
|
|
Module: Decay
|
|
Description: Unstable particles decay. G4Decay applied to all particles for
|
|
which it is pertinent
|
|
Attributes: [none]
|
|
|
|
Module: NeutronBinary
|
|
Description: Neutron processes. HadronElasticProcess, LCapture, LFission and
|
|
NeutronInelasticProcess based on BinaryCascade up to 10 GeV,
|
|
LENeutronInelastic between 8 and 25 GeV and QGSModel between 20
|
|
GeV and 100 TeV
|
|
Attributes: [none]
|
|
|
|
Module: NeutronBertini
|
|
Description: Neutron processes. HadronElasticProcess, LCapture, LFission and
|
|
NeutronInelasticProcess based on CascadeInterface up to 3.2 GeV,
|
|
LENeutronInelastic between 2.8 and 25 GeV and QGSModel between 20
|
|
GeV and 100 TeV
|
|
Attributes: [none]
|
|
|
|
Module: HadronsBinary
|
|
Description: Protons: HadronElasticProcess and ProtonInelasticProcess based
|
|
on BinaryCascade up to 10 GeV, LEProtonInelastic between 8 and
|
|
25 GeV and QGSModel between 20 GeV and 100 TeV.
|
|
Pi+: HadronElasticProcess, PionPlusInelasticProcess based on
|
|
PiNuclearCrossSection, LEPionPlusInelastic up to 25 GeV
|
|
and QGSModel between 20 GeV and 100 TeV.
|
|
Pi-: HadronElasticProcess, PionMinusInelasticProcess based on
|
|
PiNuclearCrossSection, LEPionMinusInelastic up to 25 GeV
|
|
and QGSModel between 20 GeV and 100 TeV.
|
|
Alpha: HadronElasticProcess, AlphaInelasticProcess based on
|
|
Tripathi, IonShen cross-sections, LEAlphaInelastic model up to
|
|
25 GeV and BinaryLightIonReaction between 80 MeV and 110 GeV
|
|
Attributes: [none]
|
|
|
|
Module: HadronsBertini
|
|
Description: Protons: HadronElasticProcess and ProtonInelasticProcess based
|
|
on CascadeInterface up to 3.2 GeV, LEProtonInelastic between 2.8
|
|
and 25 GeV and QGSModel between 20 GeV and 100 TeV.
|
|
Pi+: HadronElasticProcess, PionPlusInelasticProcess based on
|
|
PiNuclearCrossSection, CascadeInterface up to 3.2 GeV,
|
|
LEPionPlusInelastic between 2.8 GeV and 25 GeV and QGSModel
|
|
between 20 GeV and 100 TeV.
|
|
Pi-: HadronElasticProcess, PionMinusInelasticProcess based on
|
|
PiNuclearCrossSection, CascadeInterface up to 3.2 GeV,
|
|
LEPionMinusInelastic between 2.8 GeV and 25 GeV and QGSModel
|
|
between 20 GeV and 100 TeV.
|
|
Alpha: HadronElasticProcess, AlphaInelasticProcess based on
|
|
Tripathi, IonShen cross-sections, LEAlphaInelastic model up to
|
|
25 GeV and BinaryLightIonReaction between 80 MeV and 110 GeV
|
|
Attributes: [none]
|
|
|
|
Module: ICRUIonization
|
|
Description: Applied to all charged long-lived non-leptons particles.
|
|
MultipleScattering, hIonisation and StepLimiter
|
|
Attributes: [none]
|
|
|
|
Module: ProductionCuts
|
|
Description: Sets productions cuts for electrons, positrons and photons.
|
|
This module is enabled only if Cut attribute is defined.
|
|
Attributes: Cuts cut value a string space separated containing a real
|
|
number and a unit of length
|
|
|
|
|
|
|
|
8. GENERATORS
|
|
|
|
The primary generation is managed through the concepts od "source" and
|
|
"algorithm". With these two concepts it is possible to describe almost any kind of
|
|
radiation environment.
|
|
|
|
8.1 SOURCES
|
|
|
|
Each source is a copletely different particle generator. (with different
|
|
geometry, energy distribution, particle type etc). Usually in simple
|
|
radiation environment no more than a source will be needed.
|
|
|
|
Each source is labelled and has a real value that describes the relative
|
|
intensity. For each event the primary generator choose the source to use to
|
|
generate primaries based on the relative intensities. On each event only one
|
|
source fires primaries.
|
|
|
|
Sources are defined by the following commands:
|
|
|
|
Command: /radmon/generator/InsertSource
|
|
Parameters: <label> [string]
|
|
Description: Inserts a new source labelled <label>
|
|
|
|
Command: /radmon/generator/SetRelativeSourceIntensity
|
|
Parameters: <label> [string], <intensity> [real]
|
|
Description: Defines the source relative intensity. Meaningful only when
|
|
more than one source is defined
|
|
|
|
Command: /radmon/generator/RemoveSource
|
|
Parameters: <label> [string]
|
|
Description: Removes the source named <label>
|
|
|
|
8.2 SOURCE ALGORITHMS
|
|
|
|
Source algorithms are filters applied in sequence to the primaries in order
|
|
to define the particle type, the geometry of the source the direction of the
|
|
source and the energy of the primary particle.
|
|
|
|
As the algorithm are applyed in sequence you can obtain convolution-like
|
|
results. For example you can apply an algorithm that defines a particular
|
|
energy distribution and then a second one that applies a gaussian
|
|
distribution. You will obtain particles emitted by a distribution that is
|
|
the convolution of the two.
|
|
|
|
Algorithms non necessarely operate on one parameter (position of the
|
|
vertex, particle type, energy, direction). For example a algorithm that
|
|
generates primaries according a distribution funzion of energy and particle
|
|
type based on tables will be provided (currently not implemented).
|
|
|
|
Algorithms are class modules and can be easily extended by the developer
|
|
accordin to the requirements.
|
|
____________________________________________________________________________
|
|
| ____________________ ____________________ ____________________ |
|
|
Initial | | Ex: Gauss. Energy | | Ex: Fix. direction | | Ex: Particle is e+ | | Final
|
|
primary ==> | Source Algorithm 1 | => | Source Algorithm 2 | => | Source Algorithm 3 | ==> primary
|
|
| |____________________| |____________________| |____________________| |
|
|
|____________________________________________________________________________|
|
|
|
|
The initial primary is alwaya one geantino with 0 energy directed in the z
|
|
direction and with vertex in the origin. Applying algorithms you can change
|
|
the kind of source. For example in the figure above you will obtain a
|
|
positron with a specified fixed direction, with a energy that is distributed
|
|
according to a gaussian with specified mean and rms and still emitted from
|
|
the origin.
|
|
|
|
Command: /radmon/generator/AppendSourceAlgorithm
|
|
Parameters: <label> [string], <name> [string]
|
|
Description: Adds an algorithm to the source <label>. The algorithm will be
|
|
referenced in future commands using the name <name>
|
|
|
|
Command: /radmon/generator/SetSourceAlgorithmType
|
|
Parameters: <label> [string], <name> [string], <type> [string]
|
|
Description: The algorithm named <name> of source <label> is set to type
|
|
<type>. Type is the name of one of the available algorithms.
|
|
The list of available algorithms is given by
|
|
/radmon/generatorsFactory/Dump command. Chapter 8.4 provides
|
|
details of the currently implemented algoritms.
|
|
See also: /radmon/generatorsFactory/Dump (Chapter 8.3)
|
|
|
|
Command: /radmon/generator/RemoveSourceAlgorithm
|
|
Parameters: <label> [string], <name> [string]
|
|
Description: Removes the algorithm named <name> from source <label>
|
|
|
|
Commnad: /radmon/generator/SetSourceAlgorithmAttribute
|
|
Parameters: <label> [string], <name> [string], <attribute> [string],
|
|
<value> [string]
|
|
Description: Sets to <value> the attribute <attribute> of algorithm <name>
|
|
in source <label>. Required/optional attributes of each
|
|
algorithm type are listed in Chapter 8.4
|
|
|
|
Command: /radmon/generator/ClearSourceAlgorithmAttribute
|
|
Parameters: <label> [string], <name> [string], <attribute> [string]
|
|
Description: Removes attribute <attribute> from algorithm <name> in source
|
|
<label>
|
|
|
|
8.3 OTHER GENERATOR COMMANDS
|
|
|
|
Command: /radmon/generatorsFactory/Dump
|
|
Parameters: [none]
|
|
Description: Dumps all the available source algorithms
|
|
|
|
Command: /radmon/generator/DumpLayout
|
|
Parameters: [none]
|
|
Description: Dumps all the details of the sources and of their algorithms
|
|
|
|
Command: /radmon/generator/Load
|
|
Parameters: <file name> [string]
|
|
Description: Loads the generator data from <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
Command: /radmon/generator/Save
|
|
Parameters: <file name> [string]
|
|
Description: Stores the generator data in <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
8.4 SOURCE ALGORITMS IMPLEMENTED
|
|
|
|
Module: FixedPosition
|
|
Description: Shifts the position of the primary vertex of the value
|
|
specified
|
|
Attributes: Position The shift defined by a string with three real number
|
|
separated by spaces and followed by a unit of length
|
|
|
|
Module: FixedDirection
|
|
Description: Rotates the beam direction of a value specified
|
|
Attributes: Direction The rotation matrix is defined by an axis of
|
|
rotation and the angle of rotation. The Direction
|
|
attribute must be a string containig three real
|
|
numbers space separated and followed by a unit of
|
|
angle. The first two angles are theta and phi and
|
|
defines the axis, the third one is delta and defines
|
|
the rotation amount.
|
|
Example: Suppose this filter has in input a particle rirected
|
|
along z and has "Direction"="90. 0. 90. deg". This
|
|
means a rotation counter-clock wise of 90 degrees
|
|
along the x axis. This means a final direction of -y
|
|
|
|
Module: FixedEnergy
|
|
Description: Shifts the energy of the primary particle by a specified value
|
|
Attributes: Energy The energy shift is space separated string made up
|
|
of a real number and a unit of energy
|
|
|
|
Module: FixedParticle
|
|
Description: Sets the particle type to the specified particle
|
|
Attributes: Particle A string containing the name of a instantiated
|
|
particle.
|
|
|
|
Module: UniformSphere
|
|
Description: Shifts the position of the primaries on a sphere of specified
|
|
radius and rotates the direction of the primary so that a
|
|
primary with direction z is roteted on the radial direction of the sphere,
|
|
outward. A primary with initial direction -z, is rotated on the
|
|
radial direction of the sphere, inward. The distribution of the
|
|
position of the primaries on the sphere is uniform
|
|
Attributes: Radius A string containig the length of the radius
|
|
|
|
^
|
|
^ z r | 7
|
|
| \ ___ /
|
|
| / \
|
|
. ==> <-- | | -->
|
|
\___/
|
|
/ \
|
|
L | J
|
|
v
|
|
_______
|
|
/ \
|
|
/ | \
|
|
/ \ v / \
|
|
| J L |
|
|
. ==> | --> <-- |
|
|
| | 7 r |
|
|
| \ / ^ \ /
|
|
v -z \ | /
|
|
\_______/
|
|
|
|
Module: UniformPlane
|
|
Description: Shifts the position of the primaries on a plane of specified
|
|
width, height and direction. The distribution of the position
|
|
of the primaries on the plane is uniform.
|
|
Attributes: Width width of the plane (x direction)
|
|
Height height of the plane (y direction)
|
|
Direction as in FixedDirection algorith. Defines a rotation
|
|
matrix. It will be applied to the the initial
|
|
particle direction, to the width direction and to
|
|
the height direction.
|
|
|
|
|
|
|
|
9. ANALYSIS
|
|
|
|
This section is enabled only if G4ANALYSIS_USE is on. In order to store
|
|
data, you have to define which part of the geometry is made of sensible
|
|
volumes.
|
|
|
|
This is done setting the attribute "SensitiveDetector" to the volumes you
|
|
are interested in (Chapter 5.4) the value of the attribute
|
|
"SensitiveDetector" must match one of the sensitive detectors defined with
|
|
the following commands. You can set more than a volume to the same sensitive
|
|
detector. Data stored for that volumes will be acculuated togheter
|
|
|
|
As the other parts of the application, analysis is modularised too. You
|
|
can define which data you want to store. The list of the data you want to
|
|
store is collected in a entity called SensitiveDetectorType. A concrete
|
|
instance of this entity is called SensitiveDetector. As said before volumes
|
|
linked to the same SensitiveDetector accumulate data togheter. If you want
|
|
to collect the same kind of data but separately for let say two geometry
|
|
elements you'll have to define two Sensitive Detectors set them to the same
|
|
Sensitive detector type.
|
|
|
|
9.1 SENSITIVE DETECTOR TYPE
|
|
|
|
Command: /radmon/analysis/CreateSensitiveDetectorType
|
|
Parameters: <type> [string]
|
|
Description: Defines a new sensitive detector type, named <type>
|
|
|
|
Command: /radmon/analysis/RemoveSensitiveDetectorType
|
|
Parameters: <type> [string]
|
|
Description: Removes the sensitive detector type <type>
|
|
|
|
Command: /radmon/analysis/AppendDataAnalysisToSensitiveDetectorType
|
|
Parameters: <type> [string], <label> [string]
|
|
Description: Appends to the sensitive detector type <type>, an data
|
|
type that will be labelled <label>.
|
|
|
|
Command: /radmon/analysis/SetDataAnalysisType
|
|
Parameters: <type> [string], <label> [string], <module> [string]
|
|
Description: Sets the data labelled <label> of the sensitive detector type
|
|
<type> to the module <module>. This module will process Hits
|
|
and store data of interest for him. Modules will be detailed in
|
|
Chapter 9.4. A list of available modules can be obtained with
|
|
the command /radmon/dataAnalysisFactory/Dump
|
|
See also: /radmon/dataAnalysisFactory/Dump (Chapter 9.3)
|
|
|
|
Command: /radmon/analysis/RemoveDataAnalysis
|
|
Parameters: <type> [string], <label> [string]
|
|
Description: Removes the data type labelled <label>, present in sensitive
|
|
detector type <type>
|
|
|
|
Command: /radmon/analysis/SetDataAnalysisAttribute
|
|
Parameters: <type> [string], <label> [string], <attribute> [string],
|
|
<value> [string]
|
|
Description: Sets the attribute <attribute> to value <value> in the analysis
|
|
module labelled <label> of sensitive detector type <type>
|
|
|
|
Command: /radmon/analysis/ClearDataAnalysisAttribute
|
|
Parameters: <type> [string], <label> [string], <attribute> [string]
|
|
Description: Removes attribute <attribute> from module labelled <label> of
|
|
sensitive detector type <type>
|
|
|
|
9.2 SENSITIVE DETECTOR
|
|
|
|
As said in chapter 9.1 a concrete instance of a sensitive detector type is
|
|
called sensitive detector. These instances are the ones to be referenced
|
|
in the attribute "SensitiveDetector" of the geometry modules
|
|
|
|
Command: /radmon/analysis/CreateSensitiveDetector
|
|
Parameters: <name> [string]
|
|
Description: Creates a sensitive detector with name <name>
|
|
|
|
Command: /radmon/analysis/SetSensitiveDetectorType
|
|
Parameters: <name> [string], <type> [string]
|
|
Description: Sets the sensitive detector with name <name> to the sensitive
|
|
detector type <type>
|
|
|
|
Command: /radmon/analysis/RemoveSensitiveDetector
|
|
Parameters: <name> [string]
|
|
Description: Removes the sensitive detector named <name>
|
|
|
|
|
|
9.3 OTHER GENRATOR COMMANDS
|
|
|
|
Command: /radmon/analysis/SetOutputFileName
|
|
Parameters: <file name> [string]
|
|
Description: Set the output file name. If this command is called after some
|
|
events, the previous file is closed and a new one will be open
|
|
when the next event is run. When analysis command are run and
|
|
the analysis setup is modified. Always the old file is closed
|
|
and a new one is open when the next event happens. If
|
|
<file name> just exists on the system <file name>_n will be
|
|
used where n is the first number > 0 for which the file does
|
|
not exists on the system
|
|
|
|
Command: /radmon/analysis/SetOutputFileFormat
|
|
Parameters: <format> [string]
|
|
Description: This variable depends on the AIDA implementation. Possible
|
|
values for PI 1.3.5 are XML, ROOT, HBOOK
|
|
|
|
Command: /radmon/dataAnalysisFactory/Dump
|
|
Parameters: [none]
|
|
Description: Dumps all the available physics modules
|
|
|
|
Command: /radmon/analysis/DumpLayout
|
|
Parameters: [none]
|
|
Description: Dumps the list of selected physics modules
|
|
|
|
Command: /radmon/analysis/Load
|
|
Parameters: <file name> [string]
|
|
Description: Loads the physics from <file name> file.
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
Command: /radmon/analysis/Save
|
|
Parameters: <file name> [string]
|
|
Description: Stores the physics in <file name> file
|
|
Note: This command is not implemented. It is provided for further
|
|
developments
|
|
|
|
9.4 ANALYSIS MODULES
|
|
|
|
Module: DepositedEnergy
|
|
Description Stores the total energy deposited in the volumes on a Tuple
|
|
column called EnergyDeposit. The energy is store in MeV.
|
|
One entry per event is stored.
|
|
Attributes: [none]
|
|
|
|
|
|
|
|
10. PROVIDED MACROS
|
|
|
|
Code comes with a large set of basic macros in order to configure basic
|
|
funcionalities:
|
|
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/ApplyRelativePositioning.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultAnalysis.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultBeam.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultMaterials.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultOptions.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultPhysics.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultView.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsDummyGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsParameters.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/DirectionalBeam.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/EnvironmentGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingDummyGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingGeometry.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingParameters.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/RadiationEnvironmentBeam.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/macros/RelativePositioningPackaging.mac
|
|
$G4INSTALL/examples/advanced/radiation_monitor/.startup.mac
|
|
|
|
10.1 MACROS CALL PATH
|
|
|
|
If
|
|
|
|
$G4WORKDIR/bin/Radmon
|
|
|
|
is run from
|
|
|
|
$G4INSTALL/examples/advanced/radiation_monitor
|
|
|
|
the following macros are run in the following order. The three structure
|
|
helps undestanding which macro runs the other "sub"-macros.
|
|
|
|
.startup.mac
|
|
|- macros/DefaultOptions.mac
|
|
|
|
|
|- macros/DefaultPhysics.mac
|
|
|
|
-- Run Manager Initialization --
|
|
|
|
|- macros/DefaultBeam.mac
|
|
| \- macros/RadiationEnvironmentBeam.mac -or- macros/DirectionalBeam.mac
|
|
|
|
|
|- macros/DefaultMaterials.mac
|
|
|
|
|
|- [DISABLED] macros/DefaultView.mac
|
|
|
|
|
|- macros/DefaultGeometry.mac
|
|
| |- macros/EnvironmentGeometry.mac
|
|
| |- macros/DetectorsGeometry.mac -or- macros/DetectorsDummyGeometry.mac
|
|
| | \- macros/DetectorsParameters.mac \- macros/DetectorsParameters.mac
|
|
| |- macros/PackagingGeometry.mac -or- macros/PackagingDummyGeometry.mac
|
|
| | \- macros/PackagingParameters.mac \- macros/PackagingParameters.mac
|
|
| |- macros/RelativePositioningPackaging.mac
|
|
| \- macros/ApplyRelativePositioning.mac
|
|
|
|
|
\- macros/DefaultAnalysis.mac
|
|
|
|
10.2 MACROS DETAILS
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/.startup.mac
|
|
Description: Calls the macros collecting commands for each particular
|
|
section of the application. Calls /run/initialize after Physics
|
|
setup
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultOptions.mac
|
|
Description: Sets messaging options using Geant4 built-in commands and
|
|
Radmon commands
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultPhysics.mac
|
|
Description: Defines the physics list Low Energy modules for electrons and
|
|
photons, Standard modules for Positrons and Muons, Binary
|
|
models for hadrons, ICRU models for ions.
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultBeam.mac
|
|
Description: Calls one between RadiationEnvironmentBeam and DirectionalBeam
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/RadiationEnvironmentBeam.mac
|
|
Description: 250 MeV protons emitted from a sphere centered in the origin,
|
|
with radius 2 cm and with protons directed radially inward.
|
|
_______
|
|
/ \
|
|
/ | \
|
|
/ \ v / \
|
|
| J L |
|
|
| --> <-- |....
|
|
| 7 r | ^
|
|
\ / ^ \ / | 2 cm
|
|
\ | / |
|
|
\_______/.......v
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DirectionalBeam.mac
|
|
Description: 250 MeV protons emitted from a plane of size 1.2x1.2 cm^2,
|
|
placed at -2 cm on the z direction, orthogonal to the z
|
|
direction, with particles emitted parallel to the z direction
|
|
itself
|
|
|
|
^ y Beam direction
|
|
| /| -->
|
|
/ | ^ y 7 x
|
|
... / | 7 x | /
|
|
^ | . | / . --> z
|
|
| | | Origin
|
|
1.2 cm | | :/ :
|
|
| | : :
|
|
v...|/: :
|
|
<-------------------->
|
|
2 cm
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultMaterials.mac
|
|
Description: Defines materials needed by the geometry
|
|
Elements: H, C, N, O, Na, Al, Si, Ar, Ca, Fe, Cu, W, Au, Pb
|
|
Materials: Aluminum, Tungsten, Copper, Gold, Water, EpoxyGlass,
|
|
Air, Alumina
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultView.mac
|
|
Description: Opens a OPENGL Viewer. Commented parts opens a Raytracing
|
|
viewer.
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultGeometry.mac
|
|
Description: Calls EnvironmentGeometry, Detectors[Dummy]Geometry,
|
|
Packaging[Dummy]Geometry, defines and then places the
|
|
multilayers using RelativePositioningPackaging and
|
|
ApplyRelativePositioning
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/EnvironmentGeometry.mac
|
|
Description: A box of air of 5x5x5 cm3
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsGeometry.mac
|
|
Description: The detailed geometry of REM-TOT-500 and LAAS chips. See
|
|
http://www.ge.infn.it/~geant4/hep/radmon/ for a picture of the
|
|
chips. Chips dimensions are set using aliases. Aliases
|
|
definition is in DetectorsParameters
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsDummyGeometry.mac
|
|
Description: An alternative geometry for the detectors. This geometry is
|
|
simpler (less detailed) and fills the same volume (width,
|
|
height and thickness) the non-dummy geometry is usefull to
|
|
place relatively volumes using OGLSX viewer. This viewer does
|
|
not fully support booleans operations heavily used in
|
|
geometries defined in non-dummy macros
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DetectorsParameters.mac
|
|
Description: Aliases needed in the chip geometry definition
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingGeometry.mac
|
|
Description: The detailed geometry of MIL-STD-105D packaging. See
|
|
http://www.ge.infn.it/~geant4/hep/radmon/ for a picture of the
|
|
packaging. Packaging dimensions are set using aliases. Aliases
|
|
definition is in PackagingParameters
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingDummyGeometry.mac
|
|
Description: An alternative geometry for the packaging. This geometry is
|
|
simpler (less detailed) and fills the same volume (width,
|
|
height and thickness) of the non-dummy geometry is usefull to
|
|
place relatively volumes using OGLSX viewer. This viewer does
|
|
not fully support booleans operations heavily used in
|
|
geometries defined in non-dummy macros
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/PackagingParameters.mac
|
|
Description: Aliases needed in the packagin geometry definition
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/RelativePositioningPackaging.mac
|
|
Description: Relative positioning aliases. Needed in the relative
|
|
positioning of chips respect to the packaging. These aliases
|
|
are used by ApplyRelativePositioning macro
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/ApplyRelativePositioning.mac
|
|
Description: Sets the position of four chips (2 LAAS and 2 REM-TOT-500)
|
|
relative to the packaging position
|
|
|
|
Macro: $G4INSTALL/examples/advanced/radiation_monitor/macros/DefaultAnalysis.mac
|
|
Description: Sets REM-TOT-500 and LAAS volumes sensitive. Energy deposited
|
|
by particles transversing these volumes will be accumulated and
|
|
stored for each event in analysis.hbook file. An ntuple will be
|
|
created.
|
|
|
|
|
|
|
|
11. TO DO
|
|
- High precision neutron physics module
|
|
- Alternative analysis modules
|
|
- Improve analysis capabilities
|
|
- Alternative beam generation algorithms
|
|
_____________________________________________________________________________
|
|
|
|
Author: Riccardo Capra <capra@riccardo-capra.it>
|
|
Date: 06 December 2005
|
|
|
|
This file in HTML format and further details ared available at
|
|
http://www.ge.infn.it/~geant4/hep/radmon/
|