New generator to perform a dedicated simulation
[u/mrichter/AliRoot.git] / EVGEN / AliGenTunedOnPbPb.h
CommitLineData
995e33f0 1#ifndef ALIGENTUNEDONPBPB_H
2#define ALIGENTUNEDONPBPB_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id: AliGenTunedOnPbPb.h 51126 2013-08-19 13:37:49Z fnoferin $ */
7
8// Parameterisation based on 5.5 ATeV PbPb data
9// pi,K, p , K0, lambda, phi, Xi, Omega spectra, v2, v3 (no jets!)
10// used for the ALICE TDRs.
11// Author: fnoferin@cern.ch
12
13class TF1;
14
15#include "AliGenerator.h"
16#include "TMath.h"
17#include "TH1F.h"
18#include "TH2F.h"
19
20class AliGenTunedOnPbPb : public AliGenerator
21{
22 public:
23
24 AliGenTunedOnPbPb();
25 virtual ~AliGenTunedOnPbPb();
26 virtual void Generate();
27 virtual void Init();
28 virtual void SetPtRange(Float_t ptmin = 0., Float_t ptmax=15.);
29 virtual void SetCentralityRange(Float_t cmin,Float_t cmax){fCmin=TMath::Max(cmin,Float_t(0));fCmax=TMath::Min(cmax,Float_t(100));};
30
31 void SetSpectrum(Int_t species,TH1 *histo){fgHSpectrum[species] = histo;};
32 TH1 *GetSpectrum(Int_t species){return fgHSpectrum[species];};
33 void SetV2(Int_t species,TH1 *histo){fgHv2[species] = histo;};
34 TH1 *GetV2(Int_t species){return fgHv2[species];};
35
36 static Float_t GetEventPlane(){return fgEventplane;};
37
38 static TH1F *GetMultVsCentrality(Int_t species);
39
40 void SetCentralityDependence(Bool_t flag=kTRUE){fChangeWithCentrality=flag;};
41 void SetYmax(Float_t value){fYMaxValue=value;};
42
43 private:
44 AliGenTunedOnPbPb(const AliGenTunedOnPbPb &para);
45 AliGenTunedOnPbPb& operator = (const AliGenTunedOnPbPb &para) ;
46
47 static void DefineSpectra();
48
49 static void SetParameters(Float_t centrality);
50
51 static const Int_t fgNspecies = 15; // number of species available
52 static Int_t fgPdgInput[fgNspecies]; // pdgs available
53 static Float_t fgMult[fgNspecies]; // current multiplicity (fixed as a function of centrality)
54 static Float_t fgV3Overv2; // v3 / v2 (fixed as a function of centrality)
55 static Float_t fgEventplane; // event plane (Psi2)
56
57 static TF1 *fgV2; // function to model the anisotropy
58
59 TH1 *fgHSpectrum[fgNspecies]; // pt distributions (should be passed in Config.C)
60 TH1 *fgHv2[fgNspecies]; // v2 vs pt (should be passed in Config.C)
61
62 Float_t fCmin; // min centrality
63 Float_t fCmax; // max centrality
64
65 Bool_t fChangeWithCentrality; // flag to apply a centrality dependence to pt-distr and v2
66 Float_t fYMaxValue; // max value for rapidity (abs)
67
68
69 ClassDef(AliGenTunedOnPbPb,1) // Hijing parametrisation generator
70};
71#endif
72
73
74
75
76
77
78
79
80
81
82#ifndef ALIGENTUNEDONPBPB_H
83#define ALIGENTUNEDONPBPB_H
84/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
85 * See cxx source for full Copyright notice */
86
87/* $Id: AliGenTunedOnPbPb.h 51126 2013-08-19 13:37:49Z fnoferin $ */
88
89// Parameterisation based on 5.5 ATeV PbPb data
90// pi,K, p , K0, lambda, phi, Xi, Omega spectra, v2, v3 (no jets!)
91// used for the ALICE TDRs.
92// Author: fnoferin@cern.ch
93
94class TF1;
95
96#include "AliGenerator.h"
97#include "TMath.h"
98#include "TH1F.h"
99#include "TH2F.h"
100
101class AliGenTunedOnPbPb : public AliGenerator
102{
103 public:
104
105 AliGenTunedOnPbPb();
106 virtual ~AliGenTunedOnPbPb();
107 virtual void Generate();
108 virtual void Init();
109 virtual void SetPtRange(Float_t ptmin = 0., Float_t ptmax=15.);
110 virtual void SetCentralityRange(Float_t cmin,Float_t cmax){fCmin=TMath::Max(cmin,Float_t(0));fCmax=TMath::Min(cmax,Float_t(100));};
111
112 void SetSpectrum(Int_t species,TH1 *histo){fgHSpectrum[species] = histo;};
113 TH1 *GetSpectrum(Int_t species){return fgHSpectrum[species];};
114 void SetV2(Int_t species,TH1 *histo){fgHv2[species] = histo;};
115 TH1 *GetV2(Int_t species){return fgHv2[species];};
116
117 static Float_t GetEventPlane(){return fgEventplane;};
118
119 static TH1F *GetMultVsCentrality(Int_t species);
120
121 void SetCentralityDependence(Bool_t flag=kTRUE){fChangeWithCentrality=flag;};
122 void SetYmax(Float_t value){fYMaxValue=value;};
123
124 private:
125 AliGenTunedOnPbPb(const AliGenTunedOnPbPb &para);
126 AliGenTunedOnPbPb& operator = (const AliGenTunedOnPbPb &para) ;
127
128 static void DefineSpectra();
129
130 static void SetParameters(Float_t centrality);
131
132 static const Int_t fgNspecies = 15; // number of species available
133 static Int_t fgPdgInput[fgNspecies]; // pdgs available
134 static Float_t fgMult[fgNspecies]; // current multiplicity (fixed as a function of centrality)
135 static Float_t fgV3Overv2; // v3 / v2 (fixed as a function of centrality)
136 static Float_t fgEventplane; // event plane (Psi2)
137
138 static TF1 *fgV2; // function to model the anisotropy
139
140 TH1 *fgHSpectrum[fgNspecies]; // pt distributions (should be passed in Config.C)
141 TH1 *fgHv2[fgNspecies]; // v2 vs pt (should be passed in Config.C)
142
143 Float_t fCmin; // min centrality
144 Float_t fCmax; // max centrality
145
146 Bool_t fChangeWithCentrality; // flag to apply a centrality dependence to pt-distr and v2
147 Float_t fYMaxValue; // max value for rapidity (abs)
148
149
150 ClassDef(AliGenTunedOnPbPb,1) // Hijing parametrisation generator
151};
152#endif
153
154
155
156
157
158
159
160
161
162