]>
Commit | Line | Data |
---|---|---|
0b5dd071 | 1 | #ifndef ALIGENTPHIC_H |
2 | #define ALIGENTPHIC_H | |
3 | /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | // Event generator of two-photon processes | |
8 | // in ultra-peripheral ion collisions | |
9 | // Author: Yuri.Kharlov@cern.ch | |
10 | // 15 April 2003 | |
11 | ||
12 | #include "AliGenMC.h" | |
13 | class TPHICgen; | |
14 | class AliPythia; | |
15 | ||
16 | //------------------------------------------------------------- | |
17 | class AliGenTPHIC : public AliGenMC | |
18 | { | |
19 | public: | |
20 | AliGenTPHIC(); | |
21 | AliGenTPHIC(const AliGenTPHIC & gen); | |
22 | virtual ~AliGenTPHIC(); | |
23 | void Generate(); | |
24 | void Init(); | |
25 | void SetDebug(Int_t debug) {fDebug=debug;} | |
26 | void SetEventListRange(Int_t eventFirst=-1, Int_t eventLast=-1); | |
27 | ||
28 | // Setters for TPHIC initial parameters | |
29 | ||
30 | void SetProcess (Int_t proc =2 ); | |
31 | void SetBeamEnergy (Float_t energy=3500.); | |
32 | void SetBeamZ (Int_t z =20 ); | |
33 | void SetBeamA (Int_t a =40 ); | |
34 | void SetYggRange (Float_t ymin =-7., Float_t ymax=7.); | |
35 | void SetMggRange (Float_t mmin = 2., Float_t mmax=20.); | |
36 | void SetNgridY (Int_t ny = 20 ); | |
37 | void SetNgridM (Int_t nm =100 ); | |
38 | void SetLumFunName (TString name ="lum_ca_2_20.dat" ); | |
39 | void SetLumFunFlag (Int_t flag =-1 ); | |
40 | void SetKfFermion (Int_t kf = 13 ); | |
41 | void SetKfOnium (Int_t kf =441 ); | |
42 | void SetMassOnium (Float_t mass ); | |
43 | void SetGGwidthOnium(Float_t width ); | |
44 | void SetKfVmesons (Int_t kf=113, Int_t kf2=113); | |
45 | ||
46 | // Getters of TPHIC output parameters | |
47 | ||
48 | Float_t GetGGmass (); | |
49 | Float_t GetGGrapidity (); | |
50 | Float_t GetG1mass (); | |
51 | Float_t GetG2mass (); | |
52 | TClonesArray* GetParticleList (); | |
53 | TLorentzVector MomentumRecNucl1(); | |
54 | TLorentzVector MomentumRecNucl2(); | |
55 | Float_t GetXSectionCurrent (); | |
56 | Float_t GetXSection (); | |
57 | Float_t GetXSectionError (); | |
a06bb94f | 58 | private: |
82764a9c | 59 | void Copy(TObject&) const; |
a06bb94f | 60 | protected: |
0b5dd071 | 61 | TPHICgen *fTPHICgen; //!generator TPHIC17 |
62 | AliPythia *fPythia; //!generator PYTHIA6 | |
63 | TClonesArray *fParticles; // Particle List | |
64 | Int_t fEvent; //!internal event number | |
65 | Int_t fDebug; //!debug level | |
66 | Int_t fDebugEventFirst; //!First event to debug | |
67 | Int_t fDebugEventLast; //!Last event to debug | |
68 | ClassDef(AliGenTPHIC,1) // Generator of 2-photon processes in ultra-peripheral collisions | |
69 | }; | |
70 | #endif |