]>
Commit | Line | Data |
---|---|---|
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 | ||
13 | class TF1; | |
14 | ||
15 | #include "AliGenerator.h" | |
16 | #include "TMath.h" | |
17 | #include "TH1F.h" | |
18 | #include "TH2F.h" | |
19 | ||
20 | class 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;}; | |
61494342 | 42 | void SetYmaxFlatness(Float_t value=2.0){fYlimitForFlatness=value;}; |
43 | void SetDecreaseSp(Float_t value=0.2){fYdecreaseSp=value;}; | |
44 | void SetDecreaseV2(Float_t value=0.2){fYdecreaseV2=value;}; | |
995e33f0 | 45 | |
46 | private: | |
47 | AliGenTunedOnPbPb(const AliGenTunedOnPbPb ¶); | |
48 | AliGenTunedOnPbPb& operator = (const AliGenTunedOnPbPb ¶) ; | |
49 | ||
50 | static void DefineSpectra(); | |
51 | ||
52 | static void SetParameters(Float_t centrality); | |
53 | ||
54 | static const Int_t fgNspecies = 15; // number of species available | |
55 | static Int_t fgPdgInput[fgNspecies]; // pdgs available | |
56 | static Float_t fgMult[fgNspecies]; // current multiplicity (fixed as a function of centrality) | |
57 | static Float_t fgV3Overv2; // v3 / v2 (fixed as a function of centrality) | |
58 | static Float_t fgEventplane; // event plane (Psi2) | |
59 | ||
60 | static TF1 *fgV2; // function to model the anisotropy | |
61 | ||
62 | TH1 *fgHSpectrum[fgNspecies]; // pt distributions (should be passed in Config.C) | |
63 | TH1 *fgHv2[fgNspecies]; // v2 vs pt (should be passed in Config.C) | |
64 | ||
65 | Float_t fCmin; // min centrality | |
66 | Float_t fCmax; // max centrality | |
67 | ||
68 | Bool_t fChangeWithCentrality; // flag to apply a centrality dependence to pt-distr and v2 | |
69 | Float_t fYMaxValue; // max value for rapidity (abs) | |
61494342 | 70 | Float_t fYlimitForFlatness; // starting from this value y-profile starts to decrease both for spectra and v2 |
71 | Float_t fYdecreaseSp; // angular coefficient for the decrease above fYlimitForFlatness (spectra) | |
72 | Float_t fYdecreaseV2; // angular coefficient for the decrease above fYlimitForFlatness (v2) | |
995e33f0 | 73 | |
61494342 | 74 | ClassDef(AliGenTunedOnPbPb,2) // Hijing parametrisation generator |
995e33f0 | 75 | }; |
76 | #endif |