========================================================= 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] [] -h -H -? Usage help -b Force non-interactive mode -v Verbose output 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 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 [integer] Description: Enables the print out of the event number at the beginning of the event (1 out of 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: [string] Description: Fix the environment type to the 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: [string], [string] Description: Configure the selected environment type setting the attribute to the value . Each environment type has its own attributes. Attributes are detailed in Chapter 5.4 Command: /radmon/detector/ClearEnvironmentAttribute Parameters: [string] Description: Removes the attribute 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: [string] Description: Creates a multilayer with name Command: /radmon/detector/RemoveMultilayer Parameters: [string] Description: If defined and without placed instances, removes the multilayer named . 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: [string], [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: [string], [length] Description: Defines the multilayer height Command: /radmon/detector/AppendLayerToMultilayer Parameters: [string],