Adding calibAPI for manual calibration
[u/mrichter/AliRoot.git] / TEvtGen / README.txt
1 //------------------------------------------------------------------------------//
2    EvtGen is a particle decay simulator specifically designed for the needs of 
3    B-physics studies. Complete manual of EvtGen is available at:               
4    http://robbep.home.cern.ch/robbep/EvtGen/GuideEvtGen.pdf. Further information
5    can be found on the EvtGen official web site  http://evtgen.warwick.ac.uk/src/          
6    The EvtGen release installed here is taken from 
7    http://svnweb.cern.ch/guest/evtgen/tags/R01-03-00
8 //------------------------------------------------------------------------------//
9
10 [28/05/2014] 
11  1)This module contains: 
12
13    - EvtGen original code organized in four directories:
14      EvtGenBase-EvtGenModels-EvtGen-EvtGenExternal. 
15      EvtGenModels directory contains all models avilable in EvtGen to decay 
16      particles. EvtGenExternal contains the "interface" class with the external
17      packages
18  
19    - The interface classes AliGenEvtGen and AliDecayerEvtGen for AliRoot users:
20      the methods to decay particles are in AliDecayerEvtGen which represents 
21      the implementation of AliDecayer using EvtGen package
22
23  2)The external packages, interfaced with EvtGen by EvtGenExternal class,
24    are used to generate specific particle decays and  
25    are located in the TEvtGen subdirectories (except for Pythia8):
26
27    - HepMC (http://lcgapp.cern.ch/project/simu/HepMC/download/HepMC-2.06.08.tar.gz)
28      The HepMC package is an object oriented event record written in C++ for High Energy 
29      Physics Monte Carlo Generators.    
30  
31    - Tauola (http://tauolapp.web.cern.ch/tauolapp/resources/TAUOLA.1.1.4/TAUOLA.1.1.4.tar.gz)
32      C++ interface of Tauola code, specifically designed to generate tau decays. 
33
34    - Photos (http://photospp.web.cern.ch/photospp/resources/PHOTOS.3.54/PHOTOS.3.54.tar.gz)
35      C++ interface of Photos code, specifically designed to generate Final State Radiation.
36
37    - Pythia8 (available in $ALICE_ROOT/PYTHIA8/) 
38
39
40  3)The "default" decay table with all particles and all decay channels 
41    can be found in TEvtGen/EvtGen/DECAY.DEC. The definition of all 
42    particles is done in the table "evt.pdl". Both tables (DECAY.DEC and evt.pdl)
43    are loaded during the initialization of EvtGen. Several decay tables are available 
44    in the directory TEvtGen/EvtGen/DecayTable and are used to generate "forced" decay modes.
45    All parameters, models and BR used in these tables are not modified with respect 
46    to the official EvtGen release. 
47    The following decay tables are tested: BTOD.DEC, BTOELE.DEC, BTOJPSI.DEC, BTOJPSITOELE.DEC,  
48    BTOJPSITOMU.DEC.
49
50  4)Polarization is still to be implemented in the interface classes.
51
52  5)Below an example of the usage of EvtGen in AliRoot to decay beauty particles. 
53    The following lines should be added in the Config.C:
54  // set the xmldoc path using PYTHIA8DATA enviroement var
55   gSystem->Setenv("PYTHIA8DATA", gSystem->ExpandPathName("$ALICE_ROOT/PYTHIA8/pythia8175/xmldoc"));
56
57  //----- load libraries
58   gSystem->Load("libHepMC");
59   gSystem->Load("libTauola");
60   gSystem->Load("libpythia8");
61   gSystem->Load("libPhotos");
62   gSystem->Load("libEvtGen");
63   gSystem->Load("libEvtGenExternal");
64   gSystem->Load("libTEvtGen");
65
66  //----- declare an AliGenCocktail 
67   AliGenCocktail *generCock=new AliGenCocktail();
68   generCock->UsePerEventRates();
69
70  //----- declare Pythia configuration: switch-off beauty decays in Pythia
71   AliGenPythia *pythia= .....
72   .... 
73   pythia->SetForceDecay(kNoDecayBeauty);
74  
75  //----- declare EvtGen configuration and put the two generators in the cocktail
76   AliGenEvtGen *gene = new AliGenEvtGen();
77   gene->SetForceDecay(kBJpsiDiElectron);
78   gene->SetParticleSwitchedOff(AliGenEvtGen::kBeautyPart);
79   generCock->AddGenerator(pythia, "Pythia", 1.);
80   generCock->AddGenerator(gene,"gene",1.);