$Id: README,v 1.5 2000/12/06 18:34:42 nartallo Exp $ ------------------------------------------------------------------- ========================================================= Geant4 - an Object-Oriented Toolkit for Simulation in HEP ========================================================= xray_telescope -------------- XrayTel is an advanced Geant4 example based on a realistic simulation of an X-ray Telescope. It is based on work carried out by a team of Geant4 experts to simulate the interaction between X-ray Telescopes XMM-Newton and Chandra with low energy protons present in the orbital radiation background. The X-ray mirrors are designed to collect x-ray photons at grazing-incidence angles and focus them onto detectors at the focal plane. However, this mechanism also seems to work for low energy protons which, if they reach the detectors in sufficient numbers, can cause damage. In this example, the geometry has been simplified by using a single mirror shell and no baffles, but all the dimensions and materials are realistic. The aim of this advanced example is to illustrate the use advanced GUI, visualisation, particle generation and analysis schemes available in Geant4: - the simulation can be run from GAG or the command prompt - macros are provided to display the geometry and particle tracks with OpenGL, DAWN Postscript or VRML visualisation - the generation of particles is done via the new General Particle Source - histograming facilities are provided for the Linux environment only with the Lizard system at present, other analysis systems such as OpenScientist and JAS will be implemented at a later stage In order to be able to use any of these packages, prior installation is necessary and a number of environment variables will have to be set. 1. Setting up the environment variables for GAG, Visualisation and Analysis options (example based on Linux at CERN) #set up GAG setenv G4UI_BUILD_GAG_SESSION 1 setenv G4UI_USE_GAG 1 #set up VRMLview setenv G4VIS_BUILD_VRMLFILE_DRIVER 1 setenv G4VIS_USE_VRML 1 setenv G4VIS_USE_VRMLFILE 1 setenv G4VRMLFILE_MAX_FILE_NUM 100 setenv G4VRMLFILE_VIEWER vrmlview #if installed setenv G4VIS_USE_VRML 1 setenv G4VIS_USE_VRMLFILE 1 setenv PATH ${PATH}:"/afs/cern.ch/sw/contrib/VRML/bin/Linux" #set up OpenGL or Mesa setenv G4VIS_BUILD_OPENGLX_DRIVER 1 setenv G4VIS_USE_OPENGLX 1 setenv OGLHOME /afs/cern.ch/sw/geant4/dev/Mesa/Linux-g++ #set up DAWN setenv G4VIS_BUILD_DAWN_DRIVER 1 setenv G4VIS_BUILD_DAWNFILE_DRIVER 1 setenv G4VIS_USE_DAWN 1 setenv G4VIS_USE_DAWNFILE 1 setenv PATH ${PATH}:"/afs/cern.ch/sw/geant4/dev/DAWN/Linux-g++" #set up Lizard setenv LIZARDROOT /usr/local/freeLizard/3.2.0 #get correct path setenv G4ANALYSIS_SYSTEM Lizard setenv G4ANALYSIS_USE 1 setenv G4ANALYSIS_USE_LIZARD 1 setenv G4ANALYSIS_BUILD 1 setenv G4ANALYSIS_BUILD_LIZARD 1 #add to the LD_LIBRARY_PATH setenv LD_LIBRARY_PATH /usr/local/freeLizard/3.2.0/Linux/lib:$OGLHOME/lib IMPORTANT WARNING! setenv G4ANALYSIS_BUILD 1 must always be set to build the example even if the analysis option is not required Sources ------- GAG can be obtained from http://erpc1.naruto-u.ac.jp/~geant4/ OpenGL Mesa needs to be installed prior to building Geant4 and can be downloaded from http://www.mesa3d.org/download.html DAWN can be obtained from http://133.7.51.8/dawn/ VRMLview for Linux can be obtained from 2. Run To execute a sample simulation with visualisation of proton tracks reaching the detector run: XrayTel opengl.mac for OpenGL display XrayTel vrml.mac for VRML display and output file XrayTel dawn.mac for dawn display and PS output file To execute a run without visualisation XrayTel test.mac If the Lizard analysis options are set, histograming windows will automatically open and the corresponding files will be created. A 2D histogram (scatter plot) will display in real time every proton hit that reaches the detector. A 1D histogram will display the energy distribution of the protons that reach the detector at the end of the run. The final energy and (x,y,z) position of the protons that reach the detector is output to a file "detector.hits". This file is created if it does not exist or appended to if it does. 3. Detector description The telescope and detector geometry is defined in XrayTelDetectorConstruction.cc 4. Physics processes The physics processes are in XrayTelPhysicsList.cc The main process in this example is MultipleScattering of the protons on the mirror surfaces. 5. Event generation This is done using the new General Particle Source. Documentation for this can be found in http://www.space.dera.gov.uk/space_env/gspm.html 6. Analysis At present the analysis package implemented is Lizard. As this is still under development only simple histograming is used. The main purpose of including this facility was to provide the basis for the implementation of AIDA interfaces between Geant4 and analysis packages, in particular Lizard, OpenScientist and JAS. More complex analysis features may be implemented in future releases. The current implementation of the analysis class is very preliminary and new tags of this example are anticipated to be released soon after the general release Lizard is not currently implemented on platforms other than Linux. To build and execute the example on other platforms the analysis environment variables must not be set, except for G4ANALYSIS_BUILD which is required for building the executable.