]>
Commit | Line | Data |
---|---|---|
36b81802 | 1 | #ifndef ALIMEVSIMCONFIG_H |
2 | #define ALIMEVSIMCONFIG_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | ||
bb52edc0 | 9 | //__________________________________________________________________ |
10 | //////////////////////////////////////////////////////////////////// | |
11 | // | |
12 | // class AliMevSimConfig | |
13 | // | |
14 | // Class containing configuation inforamtion for MeVSim generator | |
15 | // -------------------------------------------- | |
16 | // -------------------------------------------- | |
17 | // -------------------------------------------- | |
18 | // author: radomski@if.pw.edu.pl | |
19 | // | |
89dfa58e | 20 | //Comments taken from MevSim fortran source file (by Lanny Ray): |
21 | // | |
22 | // (3) model_type - equals 1,2,3,4,5 or 6 so far. See comments in | |
23 | // Function dNdpty to see what is calculated. | |
24 | // The models included are: | |
25 | // = 1, Factorized mt exponential, Gaussian rapidity model | |
26 | // = 2, Pratt non-expanding, spherical thermal source model | |
27 | // = 3, Bertsch non-expanding spherical thermal source model | |
28 | // = 4, Pratt spherically expanding, thermally equilibrated | |
29 | // source model. | |
30 | // = 5, Factorized pt and eta distributions input bin-by-bin. | |
31 | // = 6, Fully 2D pt,eta distributions input bin-by-bin. | |
32 | // NOTE: model_type = 1-4 are functions of (pt,y) | |
33 | // model_type = 5,6 are functions of (pt,eta) | |
34 | // (4) reac_plane_cntrl - Can be either 1,2,3 or 4 where: | |
35 | // = 1 to ignore reaction plane and anisotropic flow, | |
36 | // all distributions will be azimuthally symm. | |
37 | // = 2 to use a fixed reaction plane angle for all | |
38 | // events in the run. | |
39 | // = 3 to assume a randomly varying reaction plane | |
40 | // angle for each event as determined by a | |
41 | // Gaussian distribution. | |
42 | // = 4 to assume a randomly varying reaction plane | |
43 | // for each event in the run as determined by | |
44 | // a uniform distribution from 0 to 360 deg. | |
45 | // (5) PSIr_mean, PSIr_stdev - Reaction plane angle mean and Gaussian | |
46 | // std.dev. (both are in degrees) for cases | |
47 | // with reac_plane_cntrl = 2 (use mean value) | |
48 | // and 3. Note: these are read in regardless | |
49 | // of the value of reac_plane_cntrl. | |
50 | // (6) MultFac_mean, MultFac_stdev - Overall multiplicity scaling factor | |
51 | // for all PID types; mean and std.dev.; | |
52 | // for trigger fluctuations event-to-evt. | |
53 | // (7) pt_cut_min,pt_cut_max - Range of transverse momentum in GeV/c. | |
54 | // (8) eta_cut_min,eta_cut_max - Pseudorapidity range | |
55 | // (9) phi_cut_min,phi_cut_max - Azimuthal angular range in degrees. | |
56 | // (10) n_stdev_mult - Number of standard deviations about the mean value | |
57 | // of multiplicity to include in the random event-to- | |
58 | // event selection process. The maximum number of | |
59 | // steps that can be covered is determined by | |
60 | // parameter n_mult_max_steps in the accompanying | |
61 | // include file 'Parameter_values.inc' which is | |
62 | // presently set at 1000, but the true upper limit for | |
63 | // this is n_mult_max_steps - 1 = 999. | |
64 | // (11) n_stdev_temp - Same, except for the "Temperature" parameter. | |
65 | // (12) n_stdev_sigma- Same, except for the rapidity width parameter. | |
66 | // (13) n_stdev_expvel - Same, except for the expansion velocity parameter. | |
67 | // (14) n_stdev_PSIr - Same, except for the reaction plane angle | |
68 | // (15) n_stdev_Vn - Same, except for the anisotropy coefficients, Vn. | |
69 | // (16) n_stdev_MultFac - Same, except for the multiplicity scaling factor. | |
70 | // (17) n_integ_pts - Number of mesh points to use in the random model | |
71 | // parameter selection process. The upper limit is | |
72 | // set by parameter nmax_integ in the accompanying | |
73 | // include file 'Parameter_values.inc' which is presently | |
74 | // set at 100, but the true upper limit for n_integ_pts | |
75 | // is nmax_integ - 1 = 99. | |
76 | // (18) n_scan_pts - Number of mesh points to use to scan the (pt,y) | |
77 | // dependence of the model distributions looking for | |
78 | // the maximum value. The 2-D grid has | |
79 | // n_scan_pts * n_scan_pts points; no limit to size of | |
80 | // n_scan_pts. | |
81 | // | |
bb52edc0 | 82 | //////////////////////////////////////////////////////////////////// |
83 | ||
36b81802 | 84 | #include "TObject.h" |
85 | ||
86 | class AliGenMevSim; | |
87 | ||
88 | class AliMevSimConfig : public TObject { | |
89 | ||
36b81802 | 90 | protected: |
91 | ||
bb52edc0 | 92 | static const Int_t fgkMAX_MODEL = 4; //Maximum number of available models |
93 | static const Int_t fgkMAX_CTRL = 4;//Maximum number of available controls | |
36b81802 | 94 | |
bb52edc0 | 95 | Int_t fModelType; //current type of model |
36b81802 | 96 | |
bb52edc0 | 97 | Int_t fReacPlaneCntrl; //reaction plane simulation model |
98 | Float_t fPsiRMean; //fPsiRMean mean psi | |
99 | Float_t fPsiRStDev; //fPsiRStDev psi variance | |
36b81802 | 100 | |
bb52edc0 | 101 | Float_t fMultFacMean;//fMultFacMean Mean multiplicity |
102 | Float_t fMultFacStDev;//fMultFacStDev multiplicity variance | |
36b81802 | 103 | |
89dfa58e | 104 | Float_t fNStDevMult;//see (10) n_stdev_mult |
105 | Float_t fNStDevTemp;//(11) n_stdev_temp | |
106 | Float_t fNStDevSigma;//see (12) n_stdev_sigma | |
107 | Float_t fNStDevExpVel;//see (13) n_stdev_expvel | |
108 | Float_t fNStdDevPSIr;//see (14) n_stdev_PSIr | |
109 | Float_t fNStDevVn;//see (15) n_stdev_Vn | |
110 | Float_t fNStDevMultFac;//see (16) n_stdev_MultFac | |
36b81802 | 111 | |
89dfa58e | 112 | Int_t fNIntegPts;//see (17) n_integ_pts |
113 | Int_t fNScanPts;//see (18) n_scan_pts | |
36b81802 | 114 | |
115 | void Init(); | |
116 | ||
117 | public: | |
118 | ||
119 | AliMevSimConfig(); | |
120 | AliMevSimConfig(Int_t modelType); | |
121 | ||
122 | ~AliMevSimConfig(); | |
123 | ||
124 | void SetModelType(Int_t modelType); | |
bb52edc0 | 125 | Int_t GetModelType() const {return fModelType;} |
36b81802 | 126 | |
127 | void SetRectPlane(Int_t ctrl, Float_t psiRMean = 0, Float_t psiRStDev = 0); | |
bb52edc0 | 128 | void GetRectPlane(Int_t& ctrl, Float_t& psiRMean, Float_t& psiRStDev ) const |
129 | {ctrl = fReacPlaneCntrl; psiRMean = fPsiRMean; psiRStDev = fPsiRStDev;} | |
130 | ||
36b81802 | 131 | void SetMultFac(Float_t mean, Float_t stDev); |
bb52edc0 | 132 | void GetMultFac(Float_t& mean, Float_t& stDev) const {mean = fMultFacMean ;stDev = fMultFacStDev;} |
36b81802 | 133 | |
134 | void SetStDev(Float_t mult, Float_t temp, Float_t sigma, | |
bb52edc0 | 135 | Float_t expVel, Float_t psiR, Float_t Vn, Float_t multFac); |
136 | void GetStDev(Float_t& mult, Float_t& temp, Float_t& sigma, | |
137 | Float_t& expVel, Float_t& psiR, Float_t& Vn, Float_t& multFac) const; | |
36b81802 | 138 | void SetGrid(Int_t integr, Int_t scan); |
bb52edc0 | 139 | void GetGrid(Int_t& integr, Int_t& scan) const {scan=fNScanPts;integr=fNIntegPts;} |
36b81802 | 140 | |
141 | ClassDef(AliMevSimConfig,1) | |
142 | ||
143 | }; | |
144 | ||
145 | ||
146 | #endif |