]>
Commit | Line | Data |
---|---|---|
3bc7f4d6 | 1 | #ifndef ALIGENPROMPTPHOTONS_H |
2 | #define ALIGENPROMPTPHOTONS_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //------------------------------------------------------------------------- | |
7 | // author: Sergey Kiselev, ITEP, Moscow | |
8 | // e-mail: Sergey.Kiselev@cern.ch | |
9 | // tel.: 007 495 129 95 45 | |
10 | //------------------------------------------------------------------------- | |
11 | // Generator of prompt photons for the reaction A+B, sqrt(S) | |
12 | // | |
13 | // main assumptions: | |
14 | // 1. flat rapidity distribution | |
15 | // 2. all existing p+p(pbar) data at y_{c.m.} can be described by the function | |
16 | // F(x_T) = (sqrt(s))^5 Ed^3sigma/d^3p, x_T = 2p_t/sqrt(s) | |
17 | // all data points cover the region x_T: 0.01 - 0.6 | |
18 | // see Nucl.Phys.A783:577-582,2007, hep-ex/0609037 | |
19 | // 3. binary scaling: for A+B at the impact parameter b | |
20 | // Ed^3N^{AB}(b)/d^3p = Ed^3sigma^{pp}/d^3p A B T_{AB}(b), | |
21 | // T_{AB}(b) - nuclear overlapping fuction, calculated in the Glauber approach, | |
22 | // nuclear density is parametrized by a Woods-Saxon with nuclear radius | |
23 | // R_A = 1.19 A^{1/3} - 1.61 A^{-1/3} fm and surface thickness a=0.54 fm | |
24 | // 4. nuclear effects (Cronin, shadowing, ...) are ignored | |
25 | // | |
26 | // input parameters: | |
27 | // fAProjectile, fATarget - number of nucleons in a nucleus A and B | |
28 | // fMinImpactParam - minimal impct parameter, fm | |
29 | // fMaxImpactParam - maximal impct parameter, fm | |
30 | // fEnergyCMS - sqrt(S) per nucleon pair, AGeV | |
31 | // | |
32 | // fYMin - minimal rapidity of photons | |
33 | // fYMax - maximal rapidity of photons | |
34 | // fPtMin - minimal p_t value of gamma, GeV/c | |
35 | // fPtMax - maximal p_t value of gamma, GeV/c | |
36 | //------------------------------------------------------------------------- | |
37 | // comparison with SPS and RHIC data, prediction for LHC can be found in | |
38 | // arXiv:0811.2634 [nucl-th] | |
39 | //------------------------------------------------------------------------- | |
40 | ||
41 | class TF1; | |
42 | ||
43 | #include "AliGenerator.h" | |
44 | ||
45 | class AliGenPromptPhotons : public AliGenerator | |
46 | { | |
47 | public: | |
48 | ||
49 | AliGenPromptPhotons(); | |
50 | AliGenPromptPhotons(Int_t npart); | |
51 | virtual ~AliGenPromptPhotons(); | |
52 | virtual void Generate(); | |
53 | virtual void Init(); | |
54 | virtual void SetPtRange(Float_t ptmin = 0.1, Float_t ptmax=10.); | |
55 | virtual void SetYRange(Float_t ymin = -1., Float_t ymax=1.); | |
56 | ||
57 | // Setters | |
58 | virtual void SetAProjectile(Float_t a = 208) {fAProjectile = a;} | |
59 | virtual void SetATarget(Float_t a = 208) {fATarget = a;} | |
60 | virtual void SetEnergyCMS(Float_t energy = 5500.) {fEnergyCMS = energy;} | |
00d93180 | 61 | virtual void SetImpactParameterRange(Float_t bmin = 0., Float_t bmax = 0.) |
3bc7f4d6 | 62 | {fMinImpactParam=bmin; fMaxImpactParam=bmax;} |
63 | ||
64 | protected: | |
65 | Float_t fAProjectile; // Projectile nucleus mass number | |
66 | Float_t fATarget; // Target nucleus mass number | |
67 | Float_t fEnergyCMS; // Center of mass energy | |
68 | Float_t fMinImpactParam; // minimum impact parameter | |
69 | Float_t fMaxImpactParam; // maximum impact parameter | |
70 | ||
4a33c50d | 71 | static Double_t FitData (const Double_t *xx, const Double_t *par); |
72 | static Double_t WSforNorm (const Double_t *xx, const Double_t *par); | |
73 | static Double_t WSz (const Double_t *xx, const Double_t *par); | |
74 | static Double_t TA (const Double_t *xx, const Double_t *par); | |
75 | static Double_t TB (const Double_t *xx, const Double_t *par); | |
76 | static Double_t TAxTB (const Double_t *xx, const Double_t *par); | |
77 | static Double_t TAB (const Double_t *xx, const Double_t *par); | |
3bc7f4d6 | 78 | |
00d93180 | 79 | static TF1 *fgDataPt; // d^{2}#sigma^{pp}/(dp_t dy) from data fit |
80 | static TF1 *fgWSzA; // Wood Saxon parameterisation for nucleus A | |
81 | static TF1 *fgWSzB; // Wood Saxon parameterisation for nucleus B | |
82 | static TF1 *fgTA; // nuclear thickness function T_A(b) (1/fm**2) | |
83 | static TF1 *fgTB; // nuclear thickness function T_B(phi)=T_B(sqtr(s**2+b**2-2*s*b*cos(phi))) | |
84 | static TF1 *fgTAxTB; // s * TA(s) * 2 * Integral(0,phiMax) TB(phi(s,b)) | |
85 | static TF1 *fgTAB; // overlap function T_AB(b) (1/fm**2) | |
3bc7f4d6 | 86 | |
87 | private: | |
88 | ||
89 | AliGenPromptPhotons(const AliGenPromptPhotons & PromptPhotons); | |
90 | AliGenPromptPhotons& operator = (const AliGenPromptPhotons & PromptPhotons) ; | |
91 | ||
92 | ||
93 | ClassDef(AliGenPromptPhotons, 1) // prompt photon generator | |
94 | }; | |
95 | #endif |