
     =========================================================
 		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/
