Warning, /geant4/examples/extended/exoticphysics/phonon/README is written in an unsupported language. File is not indexed.
0001
0002 =================================================================
0003 Phonon propagation in Geant4
0004 =================================================================
0005 Daniel Brandt - SLAC
0006 dbrandt@slac.stanford.edu
0007
0008 This example demonstrates how phonon propagation in cryogenic crystals
0009 can be simulated in Geant4.
0010
0011 1.INTRODUCTION
0012
0013 Phonon propagation is different from most other Geant4 propagation
0014 simulations in a number of respects:
0015
0016 -Phonons are massless particles moving slower than the speed of light
0017
0018 -Phonon propagation and momentum vectors are not parallel
0019
0020 -Events isotropic in phonon-momentum space are not isotropic in real
0021 space.
0022
0023 This example will simulate the propagation of acoustic phonons through
0024 a Germanium crystal, providing processes to simulate phonon scattering
0025 off isotopic impurities, mode mixing between polarization states and
0026 anharmonic downconversion (phonon splitting). As such it provides all
0027 the physics required to realistically simulate phonon propagation in
0028 cryogenically cold semiconductor crystals.
0029
0030 2. GEOMETRY
0031
0032 In this example the geometry is a cylindrical Germanium crystal
0033 centered at (0,0,0) with Almuninium end caps. Phonons absorbed in the
0034 Al end caps are counted by the sensitive detector.
0035
0036 3. PRIMARY EVENT
0037
0038 The primary event is a single phonon of energy 7.5 meV at the center of
0039 the Ge crystal. The polarization type (fast transvere, slow transverse or
0040 longitudinal) is determined randomly according to the density of states
0041 in Germanium. The direction of propagation is than determined by by the
0042 User Stacking Action class XPhononStackingAction.
0043
0044 4. EXECUTION & OUTPUT
0045
0046 The executable must be run from within the source directory of the example
0047 to ensure that it can find the path for crystal data files. Alternatively
0048 the search path for the crystal maps can be set in the setting the
0049 G4LATTICEDATA environment variable. If this variable does not exist, it
0050 defaults to ./CrystalMaps.
0051
0052 Data files for each crystal material are stored in a named subdirectory
0053 under $G4LATTICEDATA/, along with a config.txt file which specifies the
0054 numerical constants for the lattice. This example includes germanium [111]
0055 in CrystalMaps/Ge/.
0056
0057 Upon execution, the vis.mac visualization macro will automatically be
0058 executed. For the visualization to work, OpenGL support must be installed.
0059 The macro will automatically generate a single Primary Event (7.5 meV phonon)
0060 at the center of the crystal.
0061
0062 The trajectory colour will indicate the polarization state of the phonon:
0063 Longitudinal: blue
0064 Fast Transverse: green
0065 Slow Transverse: red
0066
0067 A small circle will be drawn wherever a phonon is absorbed into the
0068 Aluminium. All events within the Aluminium are written into plain-text
0069 space-sparated-value (ssv) files.
0070
0071 timing.ssv
0072 ------------
0073 COLUMN 1: Time phonon was absorbed in ns since start of run
0074 COLUMN 2: Energy of phonon absorbed
0075
0076 caustic.ssv
0077 ------------
0078 COLUMN 1: x-position of absobrtion in mm
0079 COLUMN 2: y-position of absobrtion in mm
0080 COLUMN 3: z-position of absobrtion in mm
0081
0082 Every time a phonon is simulated, the information is appended to timing.ssv
0083 and caustic.ssv. If the files do not exist they will be created.
0084
0085 5. TESTING
0086
0087 In order to test the example, it can be run as
0088 ./XGeBox run.in > test.out
0089
0090 This will create a single primary event and then cause the example to
0091 terminate automatically, with all screen output redirected to test.out.
0092
0093 If all went well, test.out should be identical to run.out provided with
0094 this example. Also, the files caustic.ssv and timing.ssv should have been
0095 created and be identical to caustic.out and timing.out respectively.
0096
0097 After the first time the example runs, it will append to caustic.ssv and
0098 timing.ssv. If the testing should be re-run, then caustic.ssv and timing.ssv
0099 will have to be deleted.