CPV gain DA (Sergey Evdokimov)
[u/mrichter/AliRoot.git] / TPHIC / AliGenTPHIC.h
CommitLineData
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"
13class TPHICgen;
14class AliPythia;
15
16//-------------------------------------------------------------
17class AliGenTPHIC : public AliGenMC
18{
19public:
20 AliGenTPHIC();
0b5dd071 21 virtual ~AliGenTPHIC();
22 void Generate();
23 void Init();
24 void SetDebug(Int_t debug) {fDebug=debug;}
25 void SetEventListRange(Int_t eventFirst=-1, Int_t eventLast=-1);
26
27 // Setters for TPHIC initial parameters
28
29 void SetProcess (Int_t proc =2 );
30 void SetBeamEnergy (Float_t energy=3500.);
31 void SetBeamZ (Int_t z =20 );
32 void SetBeamA (Int_t a =40 );
33 void SetYggRange (Float_t ymin =-7., Float_t ymax=7.);
34 void SetMggRange (Float_t mmin = 2., Float_t mmax=20.);
35 void SetNgridY (Int_t ny = 20 );
36 void SetNgridM (Int_t nm =100 );
37 void SetLumFunName (TString name ="lum_ca_2_20.dat" );
38 void SetLumFunFlag (Int_t flag =-1 );
39 void SetKfFermion (Int_t kf = 13 );
40 void SetKfOnium (Int_t kf =441 );
41 void SetMassOnium (Float_t mass );
42 void SetGGwidthOnium(Float_t width );
43 void SetKfVmesons (Int_t kf=113, Int_t kf2=113);
44
45 // Getters of TPHIC output parameters
46
47 Float_t GetGGmass ();
48 Float_t GetGGrapidity ();
49 Float_t GetG1mass ();
50 Float_t GetG2mass ();
51 TClonesArray* GetParticleList ();
52 TLorentzVector MomentumRecNucl1();
53 TLorentzVector MomentumRecNucl2();
54 Float_t GetXSectionCurrent ();
55 Float_t GetXSection ();
56 Float_t GetXSectionError ();
a06bb94f 57 protected:
0b5dd071 58 TPHICgen *fTPHICgen; //!generator TPHIC17
59 AliPythia *fPythia; //!generator PYTHIA6
60 TClonesArray *fParticles; // Particle List
61 Int_t fEvent; //!internal event number
62 Int_t fDebug; //!debug level
63 Int_t fDebugEventFirst; //!First event to debug
64 Int_t fDebugEventLast; //!Last event to debug
93a2041b 65
66 private:
67 AliGenTPHIC(const AliGenTPHIC & gen);
68 AliGenTPHIC & operator=(const AliGenTPHIC & gen);
69
70 ClassDef(AliGenTPHIC,1) // Generator of 2-photon processes in ultra-peripheral collisions
0b5dd071 71};
72#endif