Warning, /geant4/examples/extended/eventgenerator/pythia/decayer6/README is written in an unsupported language. File is not indexed.
0001 ------------------------------------------------------------
0002
0003 Example of the external decayer implementation with PYTHIA6
0004 -----------------------------------------------------------
0005
0006 The complete PYTHIA6 documentation can be found at:
0007 http://home.thep.lu.se/~torbjorn/pythiaaux/recent.html
0008
0009 The PYTHIA6 external decayer was originally developed within
0010 the AliRoot framework, by Andreas Morsch (CERN).
0011 The dependence on the ALICE software was taken off
0012 by Christian Holm Christensen,
0013 The dependence on the Root framework and the integration in
0014 the Geant4 framework was done by Ivana Hrivnacova (IPN Orsay).
0015
0016 ------------------------------------------------------------
0017
0018 The use of the external decayer is demonstrated with using the
0019 classes from common examples repository, see below their complete list.
0020
0021 The G4Pythia6Decayer class provides the implementation of the
0022 G4VExternalDecayer interface with using PYTHIA6. In order
0023 to be able to use PYTHIA6, which is written in FORTRAN,
0024 a C++ interface class Pythia6 is provided. This class
0025 interfaces only the PYTHIA6 functions relevant to decay.
0026
0027 The G4Pythia6Decayer is instantiated in the P6DExtDecayerPhysics builder,
0028 in the ConstructProcess() function where the external decayer is set
0029 to G4Decay process for all particles.
0030 To demonstrate the decay with external decayer,
0031 the B- meson is defined in ExG4PrimaryGeneratorAction01,
0032 as it has no own decay table defined within Geant4.
0033
0034 With PYTHIA6, it is possible to force a selected decay
0035 type. This selection can be chosen interactively via
0036 the implemented Geant4 UI command:
0037
0038 /pythia6Decayer/forceDecayType decayType
0039
0040 where the available decay types are listed in the EDecayType
0041 enumaration.
0042
0043 The classes Pythia6, G4Pythia6Decayer, G4Pythia6DecayerMessenger
0044 are independent from the example classes and can be reused
0045 in another user application.
0046
0047 Installation:
0048
0049 1. Download the PYTHIA6 source file from the PYTHIA6 download site:
0050 http://www.hepforge.org/downloads/pythia6
0051
0052 2A.) With CMake: Build pythia6 library
0053
0054 For a convenience a CMake file for building Pythia6 library from
0055 the source is provided in
0056 examples/extended/eventgenerator/CMakeLists.txt.pythia6.
0057 Build the pythia6 library following the instructions in this file
0058 and then define the environment variables:
0059 PYTHIA6 the path where pythia6 library is installed
0060 PYTHIA6_VERSION the pythia version
0061
0062 2B.) With GNUmake: Define the environment variables:
0063 PYTHIA6 the path to pythia-versionX.f source code
0064 PYTHIA6_VERSION the pythia version
0065
0066 e.g. If you download pythia-6.4.26.f.gz and unzip it in $HOME,
0067 then you have to set:
0068 export PYTHIA6=$HOME
0069 export PYTHIA6_VERSION="6.4.26"
0070
0071 Pythia6 will be then compiled together with example code.
0072
0073 3. Compilation:
0074 Then the example is compiled in a standard way, see examples/README_HowToRun.
0075 Note that with GNUmake build, an additional step 'gmake setup' is
0076 needed before 'gmake'.
0077
0078 Execution:
0079
0080 % pythia6_decayer pythia6_decayer.in
0081
0082 This example uses the following user action classes from the extended examples common
0083 repository available in common subdirectory:
0084 DetectorConstruction
0085 GunPrimaryGeneratorAction