]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGDQ/dielectron/AliDielectronVarManager.cxx
- add new variable NvtxContribTPC
[u/mrichter/AliRoot.git] / PWGDQ / dielectron / AliDielectronVarManager.cxx
1 /*************************************************************************
2 * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
3 *                                                                        *
4 * Author: The ALICE Off-line Project.                                    *
5 * Contributors are mentioned in the code where appropriate.              *
6 *                                                                        *
7 * Permission to use, copy, modify and distribute this software and its   *
8 * documentation strictly for non-commercial purposes is hereby granted   *
9 * without fee, provided that the above copyright notice appears in all   *
10 * copies and that both the copyright notice and this permission notice   *
11 * appear in the supporting documentation. The authors make no claims     *
12 * about the suitability of this software for any purpose. It is          *
13 * provided "as is" without express or implied warranty.                  *
14 **************************************************************************/
15
16 ///////////////////////////////////////////////////////////////////////////
17 //                Dielectron Variables Manager class                     //
18 //                                                                       //
19 /*
20
21 */
22 //                                                                       //
23 ///////////////////////////////////////////////////////////////////////////
24
25 #include "AliDielectronVarManager.h"
26
27 ClassImp(AliDielectronVarManager)
28
29 const char* AliDielectronVarManager::fgkParticleNames[AliDielectronVarManager::kNMaxValues][3] = {
30   {"Px",                     "#it{p}_{x}",                                         "(GeV/#it{c})"},
31   {"Py",                     "#it{p}_{y}",                                         "(GeV/#it{c})"},
32   {"Pz",                     "#it{p}_{z}",                                         "(GeV/#it{c})"},
33   {"Pt",                     "#it{p}_{T}",                                         "(GeV/#it{c})"},
34   {"P",                      "#it{p}",                                             "(GeV/#it{c})"},
35   {"Xv",                     "x_{vtx}",                                            "(cm)"},
36   {"Yv",                     "y_{vtx}",                                            "(cm)"},
37   {"Zv",                     "z_{vtx}",                                            "(cm)"},
38   {"OneOverPt",              "1/^{}#it{p}_{T}",                                    "(GeV/#it{c})^{-1}"},
39   {"Phi",                    "#phi",                                               "(rad.)"},
40   {"Theta",                  "#theta",                                             "(rad.)"},
41   {"Eta",                    "#eta",                                               ""},
42   {"Y",                      "#it{y}",                                             ""},
43   {"E",                      "E",                                                  "(GeV)"},
44   {"M",                      "m_{inv}",                                            "(GeV/#it{c^{2}})"},
45   {"Charge",                 "q",                                                  "(e)"},
46   {"NclsITS",                "N_{cls}^{ITS}",                                      ""},
47   {"ITSchi2PerCluster",      "#chi^{2}/^{}N_{cls}^{ITS}",                          ""},
48   {"NclsTPC",                "N_{cls}^{TPC}",                                      ""},
49   {"NclsSTPC",               "N_{shar.cls}^{TPC}",                                 ""},
50   {"NclsSFracTPC",           "N_{shar.cls}^{TPC}/^{}N_{cls}^{TPC}",                ""},
51   {"NclsTPCiter1",           "N_{1st.iter.cls}^{TPC}",                             ""},
52   {"NFclsTPC",               "N_{find.cls}^{TPC}",                                 ""},
53   {"NFclsTPCrobust",         "N_{cross.rows}^{TPC}",                               ""},
54   {"NFclsTPCrobustFraction", "N_{cls}^{TPC}/^{}N_{find.cls}^{TPC}",                ""},//TODO: check
55   {"NFclsTPCfracCrossedRows","N_{cross.rows}^{TPC}/^{}N_{find.cls}^{TPC}",         ""},
56   {"TPCsignalN",             "N_{d#it{E}/d#it{x} points}^{TPC}",                   ""},
57   {"TPCsignalNfrac",         "N_{d#it{E}/d#it{x} points}^{TPC}/^{}N_{cls}^{TPC}",  ""},
58   {"TPCchi2PerCluster",      "#chi^{2}/^{}N_{cls}^{TPC}",                          ""},
59   {"TPCclsDiff",             "N_{d#it{E}/d#it{x} points}^{TPC} - N_{cls}^{TPC}",   ""},
60   {"TPCclsSegments",         "N_{segments}^{TPC}",                                 ""},
61   {"TrackStatus",            "TrackStatus",                                        ""},
62   {"FilterBit",              "AOD filter bit",                                     ""},
63     
64   {"NclsTRD",                "N_{cls}^{TRD}",                                      ""},
65   {"TRDntracklets",          "N_{trkl}^{TRD}",                                     ""},
66   {"TRDpidQuality",          "N_{PID.trkl}^{TRD}",                                 ""},
67   {"TRDchi2",                "#chi^{2}/^{}N_{cls}^{TRD}",                          ""},//TODO: check denominator
68   {"TRDpidProb_Electrons",   "P(PID_{e}^{TRD})",                                   ""},
69   {"TRDpidProb_Pions",       "P(PID_{#pi}^{TRD})",                                 ""},
70   {"TRDpidProb2D_Electrons", "P(2dim. PID_{e}^{TRD})",                             ""},
71   {"TRDpidProb2D_Pions",     "P(2dim. PID_{#pi}^{TRD})",                           ""},
72   {"TRDphi",                 "#phi^{TRD}",                                         ""},
73   {"TRDpidEffLeg",           "#epsilon^{TRD legs}(PID)",                           ""},
74
75   {"ImpactParXY",            "#it{dca}_{xy}",                                      "(cm)"},
76   {"ImpactParZ",             "#it{dca}_{z}",                                       "(cm)"},
77   {"TrackLength",            "#it{l}_{track}",                                     "(cm)"},
78
79   {"PdgCode",                "PDG code",                                           ""},
80   {"PdgCodeMother",          "mothers PDG code",                                   ""},
81   {"PdgCodeGrandMother",     "grand mothers PDG code",                             ""},
82   {"HasCocktailMother",      "mother from AliGenCocktail",                         ""},
83   {"HasCocktailGrandMother", "grand mother from AliGenCocktail",                   ""},
84
85   {"NumberOfDaughters",      "N_{daughters}",                                      ""},
86   {"HaveSameMother",         "HaveSameMother",                                     ""},
87   {"IsJpsiPrimary",          "IsJpsiPrimary",                                      ""},
88   {"NumberOfJPsisIncl",      "N_{incl. J/^{}#psi}",                                ""},
89   {"NumberOfJPsisPrompt",    "N_{prompt J/^{}#psi}",                               ""},
90   {"NumberOfJPsisNPrompt",   "N_{non prompt J/^{}#psi}",                           ""},
91   
92   {"ITS_signal",             "ITS d#it{E}/d#it{x}",                                "(keV/^{}300#mum)"},//TODO: check units
93   {"SSD1_signal",            "SSD 1st layer d#it{E}/d#it{x}",                      "(keV/^{}300#mum)"},
94   {"SSD2_signal",            "SSD 2nd layer d#it{E}/d#it{x}",                      "(keV/^{}300#mum)"},
95   {"SDD1_signal",            "SDD 1st layer d#it{E}/d#it{x}",                      "(keV/^{}300#mum)"},
96   {"SDD2_signal",            "SDD 2nd layer d#it{E}/d#it{x}",                      "(keV/^{}300#mum)"},
97   {"ITS_clusterMap",         "ITS_clusterMap",                                     ""},
98   {"ITSLayerFirstCls",       "1st ITS cluster",                                    "(layer)"},
99   {"ITS_nSigma_Electrons",   "n#sigma_{e}^{ITS}",                                  ""},
100   {"ITS_nSigma_Pions",       "n#sigma_{#pi}^{ITS}",                                ""},
101   {"ITS_nSigma_Muons",       "n#sigma_{#mu}^{ITS}",                                ""},
102   {"ITS_nSigma_Kaons",       "n#sigma_{K}^{ITS}",                                  ""},
103   {"ITS_nSigma_Protons",     "n#sigma_{p}^{ITS}",                                  ""},
104
105   {"P_InnerParam",           "#it{p}_{inner wall}^{TPC}",                          "(GeV/#it{c})"},
106   {"P_OuterParam",           "#it{p}_{outer wall}^{TPC}",                          "(GeV/#it{c})"},
107   {"Y_signed_InnerParam",    "sign. y_{inner wall}^{TPC}",                         "(GeV/#it{c})"},
108   {"TPC_signal",             "TPC d#it{E}/d#it{x}",                                "(a.u.)"},
109   {"TOF_signal",             "TOF signal",                                         "(ps)"},
110   {"TOF_beta",               "TOF #beta",                                          "(#it{c})"},
111   {"TOF_PIDbit",             "TOF PID bit",                                        ""},
112   
113   {"TPC_nSigma_Electrons",   "n#sigma_{e}^{TPC}",                                  ""},
114   {"TPC_nSigma_Pions",       "n#sigma_{#pi}^{TPC}",                                ""},
115   {"TPC_nSigma_Muons",       "n#sigma_{#mu}^{TPC}",                                ""},
116   {"TPC_nSigma_Kaons",       "n#sigma_{K}^{TPC}",                                  ""},
117   {"TPC_nSigma_Protons",     "n#sigma_{p}^{TPC}",                                  ""},
118
119   {"TOF_nSigma_Electrons",   "n#sigma_{e}^{TOF}",                                  ""},
120   {"TOF_nSigma_Pions",       "n#sigma_{#pi}^{TOF}",                                ""},
121   {"TOF_nSigma_Muons",       "n#sigma_{#mu}^{TOF}",                                ""},
122   {"TOF_nSigma_Kaons",       "n#sigma_{K}^{TOF}",                                  ""},
123   {"TOF_nSigma_Protons",     "n#sigma_{p}^{TOF}",                                  ""},
124
125   {"EMCAL_nSigma_Electrons", "n#sigma_{e}^{EMCAL}",                                ""},
126   {"EMCAL_EoverP",           "E^{EMCAL}/^{}#it{p}",                                "(#it{c})"},
127   {"EMCAL_E",                "E^{EMCAL}",                                          "(GeV)"},
128   {"EMCAL_NCells",           "N_{cell}^{EMCAL}",                                   ""},
129   {"EMCAL_M02",              "M02 EMCAL showershape param.",                       ""},
130   {"EMCAL_M20",              "M20 EMCAL showershape param.",                       ""},
131   {"EMCAL_Dispersion",       "EMCAL dispersion param.",                            ""},
132
133   {"V0Index0",               "V0Index0",                                           ""},
134   {"KinkIndex0",             "KinkIndex0",                                         ""},
135   //
136   {"Chi2NDF",                "#chi^{2}/^{}ndf",                                    ""},
137   {"DecayLength",            "l_{decay}",                                          "(cm)"},
138   {"R",                      "d(#vec{x}_{vtx},#vec{x}_{part.})",                   "(cm)"},
139   {"OpeningAngle",           "#varphi",                                            "(rad.)"},
140   {"CosPointingAngle",       "cos(#theta)",                                        "(rad.)"},
141   {"ThetaHE",                "cos(#theta_{HE})",                                   ""},
142   {"PhiHE",                  "#phi_{HE}",                                          "(rad.)"},
143   {"ThetaSqHE",              "cos^{2}(#theta_{HE})",                               ""},
144   {"Cos2PhiHE",              "cos(2#phi_{HE})",                                    ""},
145   {"CosTilPhiHE",            "cos(#phi_{HE})",                                     ""},
146   {"ThetaCS",                "cos(#theta_{CS})",                                   ""},
147   {"PhiCS",                  "#phi_{CS}",                                          "(rad.)"},
148   {"ThetaSqCS",              "cos^{2}(#theta_{CS})",                               ""},
149   {"PsiPair",                "#Psi^{pair}",                                        "(rad.)"},
150   {"PhivPair",               "#Phi_{v}^{pair}",                                    "(rad.)"},
151   {"Cos2PhiCS",              "cos(2#phi_{CS})",                                    ""},
152   {"CosTilPhiCS",            "cos(#phi_{CS})",                                     ""},
153   {"DeltaPhiV0ArpH2",        "#phi^{pair}-#Psi^{V0A}",                             ""},
154   {"DeltaPhiV0CrpH2",        "#phi^{pair}-#Psi^{V0C}",                             ""},
155   {"DeltaPhiV0ACrpH2",       "#phi^{pair}-#Psi^{V0AC}",                            ""},
156   {"V0ArpH2FlowV2",          "cos(2(#phi^{pair}-#Psi^{V0A}))",                     ""},
157   {"V0CrpH2FlowV2",          "cos(2(#phi^{pair}-#Psi^{V0C}))",                     ""},
158   {"V0ACrpH2FlowV2",         "cos(2(#phi^{pair}-#Psi^{V0AC}))",                    ""},
159   {"LegDistance",            "d^{legs}",                                           "(cm)"},
160   {"LegDistanceXY",          "d^{legs}_{xy}",                                      "(cm)"},
161   {"DeltaEta",               "#Delta #eta",                                        ""},
162   {"DeltaPhi",               "#Delta #phi",                                        ""},
163   {"Merr",                   "m_{inv} error",                                      "(GeV/#it{c}^{2})"},
164   {"DCA",                    "#it{dca}",                                           "(cm)"},
165   {"PairType",               "PairType",                                           ""},
166   {"PseudoProperTime",       "#tau",                                               "(#mus)"}, //TODO: check unit
167   {"PseudoProperTimeErr",    "#tau error",                                         "(#mus)"},
168   {"PseudoProperTimeResolution", "(#tau-#tau^{MC truth})",                         "(#mus)"},
169   {"PseudoProperTimePull",   "#frac{(#tau-#tau^{MC truth})}{#tau error}",          ""},
170   {"TRDpidEffPair",          "#epsilon^{TRD pair}(PID)",                           ""},
171   //
172   {"X",                      "x_{prim.vtx}",                                       "(cm)"},
173   {"Y",                      "y_{prim.vtx}",                                       "(cm)"},
174   {"Z",                      "z_{prim.vtx}",                                       "(cm)"},
175   {"XRes",                   "#Delta x_{prim.vtx}",                                "(cm)"},
176   {"YRes",                   "#Delta y_{prim.vtx}",                                "(cm)"},
177   {"ZRes",                   "#Delta z_{prim.vtx}",                                "(cm)"},
178   {"PhiMaxPt",               "#phi(#it{p}_{T}^{lead})",                            "(rad.)"},
179   {"MaxPt",                  "#it{p}_{T}^{lead}",                                  "(GeV/#it{c})"},
180
181   {"v0ArpH2",                "#Psi^{V0A}",                                         ""},
182   {"v0CrpH2",                "#Psi^{V0C}",                                         ""},
183   {"v0ACrpH2",               "#Psi^{V0AC}",                                        ""},
184   {"v0AxH2",                 "Q_{x}^{V0A}",                                        ""},
185   {"v0AyH2",                 "Q_{y}^{V0A}",                                        ""},
186   {"v0CxH2",                 "Q_{x}^{V0C}",                                        ""},
187   {"v0CyH2",                 "Q_{y}^{V0C}",                                        ""},
188   {"v0ACxH2",                "Q_{x}^{V0AC}",                                       ""},
189   {"v0ACyH2",                "Q_{y}^{V0AC}",                                       ""},
190   {"v0AmagH2",               "|#vec{Q}^{V0A}|",                                     ""},
191   {"v0CmagH2",               "|#vec{Q}^{V0C}|",                                     ""},
192   {"v0ACmagH2",              "|#vec{Q}^{V0AC}|",                                    ""},
193   {"v0A0rpH2",               "#Psi^{V0A}_{ring 0}",                                ""},
194   {"v0A3rpH2",               "#Psi^{V0A}_{ring 3}",                                ""},
195   {"v0C0rpH2",               "#Psi^{V0C}_{ring 0}",                                ""},
196   {"v0C3rpH2",               "#Psi^{V0C}_{ring 3}",                                ""},
197
198   {"DeltaPhiv0ArpH2",        "#phi^{pair}-#Psi^{V0A}",                             ""},
199   {"DeltaPhiv0CrpH2",        "#phi^{pair}-#Psi^{V0C}",                             ""},
200   {"DeltaPhiv0ACrpH2",       "#phi^{pair}-#Psi^{V0AC}",                            ""},
201   {"v0ATPCDiffH2",           "cos(2(#Psi^{V0A}-#Psi^{TPC}))",                      ""},
202   {"v0CTPCDiffH2",           "cos(2(#Psi^{V0C}-#Psi^{TPC}))",                      ""},
203   {"v0Av0CDiffH2",           "cos(2(#Psi^{V0A}-#Psi^{V0C}))",                      ""},
204   {"v0Av0C0DiffH2",          "cos(2(#Psi^{V0A}-#Psi^{V0C}_{ring 0}))",             ""},
205   {"v0Av0C3DiffH2",          "cos(2(#Psi^{V0A}-#Psi^{V0C}_{ring 3}))",             ""},
206   {"v0Cv0A0DiffH2",          "cos(2(#Psi^{V0C}-#Psi^{V0A}_{ring 0}))",             ""},
207   {"v0Cv0A3DiffH2",          "cos(2(#Psi^{V0C}-#Psi^{V0A}_{ring 3}))",             ""},
208   {"v0A0v0A3DiffH2",         "cos(2(#Psi^{V0A}_{ring 0}-#Psi^{V0A}_{ring 3}))",    ""},
209   {"v0C0v0C3DiffH2",         "cos(2(#Psi^{V0C}_{ring 0}-#Psi^{V0C}_{ring 3}))",    ""},
210   {"v0ArpH2FlowV2",          "cos(2(#phi^{pair}-#Psi^{V0A}))",                     ""},
211   {"v0CrpH2FlowV2",          "cos(2(#phi^{pair}-#Psi^{V0C}))",                     ""},
212   {"v0ACrpH2FlowV2",         "cos(2(#phi^{pair}-#Psi^{V0AC}))",                    ""},
213
214   {"MultV0A",                "multiplicity V0A",                                   ""},
215   {"MultV0C",                "multiplicity V0C",                                   ""},
216   {"MultV0",                 "multiplicity V0",                                    ""},
217   {"AdcV0A",                   "AdcV0A",                                   ""},
218   {"AdcV0C",                   "AdcV0C",                                   ""},
219   {"AdcV0",    "AdcV0",                                     ""},
220   {"VZERO_ch0",   "VZERO_ch0",                                    ""},
221   {"VZERO_ch1",   "VZERO_ch1", ""},
222   {"VZERO_ch2",   "VZERO_ch2", ""},
223   {"VZERO_ch3",   "VZERO_ch3", ""},
224   {"VZERO_ch4",   "VZERO_ch4", ""},
225   {"VZERO_ch5",   "VZERO_ch5", ""},
226   {"VZERO_ch6",   "VZERO_ch6", ""},
227   {"VZERO_ch7",   "VZERO_ch7", ""},
228   {"VZERO_ch8",   "VZERO_ch8", ""},
229   {"VZERO_ch9",   "VZERO_ch9", ""},
230   {"VZERO_ch10",   "VZERO_ch10", ""},
231   {"VZERO_ch11",   "VZERO_ch11", ""},
232   {"VZERO_ch12",   "VZERO_ch12", ""},
233   {"VZERO_ch13",   "VZERO_ch13", ""},
234   {"VZERO_ch14",   "VZERO_ch14", ""},
235   {"VZERO_ch15",   "VZERO_ch15", ""},
236   {"VZERO_ch16",   "VZERO_ch16", ""},
237   {"VZERO_ch17",   "VZERO_ch17", ""},
238   {"VZERO_ch18",   "VZERO_ch18", ""},
239   {"VZERO_ch19",   "VZERO_ch19", ""},
240   {"VZERO_ch20",   "VZERO_ch20", ""},
241   {"VZERO_ch21",   "VZERO_ch21", ""},
242   {"VZERO_ch22",   "VZERO_ch22", ""},
243   {"VZERO_ch23",   "VZERO_ch23", ""},
244   {"VZERO_ch24",   "VZERO_ch24", ""},
245   {"VZERO_ch25",   "VZERO_ch25", ""},
246   {"VZERO_ch26",   "VZERO_ch26", ""},
247   {"VZERO_ch27",   "VZERO_ch27", ""},
248   {"VZERO_ch28",   "VZERO_ch28", ""},
249   {"VZERO_ch29",   "VZERO_ch29", ""},
250   {"VZERO_ch30",   "VZERO_ch30", ""},
251   {"VZERO_ch31",   "VZERO_ch31", ""},
252   {"VZERO_ch32",   "VZERO_ch32", ""},
253   {"VZERO_ch33",   "VZERO_ch33", ""},
254   {"VZERO_ch34",   "VZERO_ch34", ""},
255   {"VZERO_ch35",   "VZERO_ch35", ""},
256   {"VZERO_ch36",   "VZERO_ch36", ""},
257   {"VZERO_ch37",   "VZERO_ch37", ""},
258   {"VZERO_ch38",   "VZERO_ch38", ""},
259   {"VZERO_ch39",   "VZERO_ch39", ""},
260   {"VZERO_ch40",   "VZERO_ch40", ""},
261   {"VZERO_ch41",   "VZERO_ch41", ""},
262   {"VZERO_ch42",   "VZERO_ch42", ""},
263   {"VZERO_ch43",   "VZERO_ch43", ""},
264   {"VZERO_ch44",   "VZERO_ch44", ""},
265   {"VZERO_ch45",   "VZERO_ch45", ""},
266   {"VZERO_ch46",   "VZERO_ch46", ""},
267   {"VZERO_ch47",   "VZERO_ch47", ""},
268   {"VZERO_ch48",   "VZERO_ch48", ""},
269   {"VZERO_ch49",   "VZERO_ch49", ""},
270   {"VZERO_ch50",   "VZERO_ch50", ""},
271   {"VZERO_ch51",   "VZERO_ch51", ""},
272   {"VZERO_ch52",   "VZERO_ch52", ""},
273   {"VZERO_ch53",   "VZERO_ch53", ""},
274   {"VZERO_ch54",   "VZERO_ch54", ""},
275   {"VZERO_ch55",   "VZERO_ch55", ""},
276   {"VZERO_ch56",   "VZERO_ch56", ""},
277   {"VZERO_ch57",   "VZERO_ch57", ""},
278   {"VZERO_ch58",   "VZERO_ch58", ""},
279   {"VZERO_ch59",   "VZERO_ch59", ""},
280   {"VZERO_ch60",   "VZERO_ch60", ""},
281   {"VZERO_ch61",   "VZERO_ch61", ""},
282   {"VZERO_ch62",   "VZERO_ch62", ""},
283   {"VZERO_ch63",   "VZERO_ch63", ""},
284   {"V0AxH2",                 "Q_{x}^{V0A}",                                        ""},
285   {"V0AyH2",                 "Q_{y}^{V0A}",                                        ""},
286   {"V0ArpH2",                "#Psi^{V0A}",                                         ""},
287   {"V0CxH2",                 "Q_{x}^{V0C}",                                        ""},
288   {"V0CyH2",                 "Q_{y}^{V0C}",                                        ""},
289   {"V0CrpH2",                "#Psi^{V0C}",                                         ""},
290   {"V0ACxH2",                "Q_{x}^{V0AC}",                                       ""},
291   {"V0ACyH2",                "Q_{y}^{V0AC}",                                       ""},
292   {"V0ACrpH2",               "#Psi^{V0AC}",                                        ""},
293
294   {"V0ArpResH2",                   "V0ArpResH2", ""},
295   {"V0CrpResH2",                   "V0CrpResH2", ""},
296   {"V0ACrpResH2",                   "V0ACrpResH2", ""},
297   {"V0XaXcH2",               "Q_{x}^{V0A}#timesQ_{x}^{V0C}",                       ""},
298   {"V0XaYaH2",               "Q_{x}^{V0A}#timesQ_{y}^{V0A}",                       ""},
299   {"V0XaYcH2",               "Q_{x}^{V0A}#timesQ_{y}^{V0C}",                       ""},
300   {"V0YaXcH2",               "Q_{y}^{V0A}#timesQ_{x}^{V0C}",                       ""},
301   {"V0YaYcH2",               "Q_{y}^{V0A}#timesQ_{Y}^{V0C}",                       ""},
302   {"V0XcYcH2",               "Q_{X}^{V0C}#timesQ_{Y}^{V0C}",                       ""},
303   {"V0ATPCDiffH2",           "cos(2(#Psi^{V0A}-#Psi^{TPC}))",                      ""},
304   {"V0CTPCDiffH2",           "cos(2(#Psi^{V0C}-#Psi^{TPC}))",                      ""},
305   {"V0AV0CDiffH2",           "cos(2(#Psi^{V0A}-#Psi^{V0C}))",                      ""},
306   {"TPCxH2",                 "Q_{x}^{TPC}",                                        ""},
307   {"TPCyH2",                 "Q_{y}^{TPC}",                                        ""},
308   {"TPCmagH2",               "|#vec{Q}^{TPC}|",                                   ""},
309   {"TPCrpH2",                "#Psi^{TPC}",                                         ""},
310   {"TPCsub1xH2",             "Q_{x}^{TPCsub1}",                                    ""},
311   {"TPCsub1yH2",             "Q_{y}^{TPCsub1}",                                    ""},
312   {"TPCsub1rpH2",            "#Psi^{TPCsub1}",                                     ""},
313   {"TPCsub2xH2",             "Q_{x}^{TPCsub2}",                                    ""},
314   {"TPCsub2yH2",             "Q_{y}^{TPCsub2}",                                    ""},
315   {"TPCsub2rpH2",            "#Psi^{TPCsub2}",                                     ""},
316   {"TPCsub12DiffH2",         "cos(2(#Psi^{TPCsub1}-#Psi^{TPCsub2}))",              ""},
317   {"TPCsub12DiffH2Sin",      "sin(2(#Psi^{TPCsub1}-#Psi^{TPCsub2}))",              ""},
318
319   {"TPCxH2uc",               "Q_{x}^{TPC} (uncorr.)",                              ""},
320   {"TPCyH2uc",               "Q_{y}^{TPC} (uncorr.)",                              ""},
321   {"TPCmagH2uc",             "|#vec{Q}^{TPC}| (uncorr.)",                         ""},
322   {"TPCrpH2uc",              "#Psi^{TPC} (uncorr.)",                               ""},
323   {"TPCsub1xH2uc",           "Q_{x}^{TPCsub1} (uncorr.)",                          ""},
324   {"TPCsub1yH2uc",           "Q_{y}^{TPCsub1} (uncorr.)",                          ""},
325   {"TPCsub1rpH2uc",          "#Psi^{TPCsub1} (uncorr.)",                           ""},
326   {"TPCsub2xH2uc",           "Q_{x}^{TPCsub2} (uncorr.)",                          ""},
327   {"TPCsub2yH2uc",           "Q_{y}^{TPCsub2} (uncorr.)",                          ""},
328   {"TPCsub2rpH2uc",          "#Psi^{TPCsub2} (uncorr.)",                           ""},
329   {"TPCsub12DiffH2uc",       "cos(2(#Psi^{TPCsub1}-#Psi^{TPCsub2})) (uncorr.)",    ""},
330
331   {"NTrk",                   "N_{trk}",                                            ""},
332   {"Tracks",                 "tracks",                                             ""},
333   {"NVtxContrib",            "N_{vtx. contrib.}",                                  ""},
334   {"NVtxContribTPC",         "N_{vtx. contrib.}^{TPC}",                            ""},
335   {"Nacc",                   "N_{acc} #cbar_{#||{#eta}<0.9}",                      ""},
336   {"NaccTrcklts",            "N_{acc. trkl} #cbar_{#||{#eta}<1.6}",                ""},
337   {"NaccTrcklts0916",        "N_{acc. trkl} #cbar_{-1.6<#eta<-0.9}^{0.9<#eta<1.6}",""},
338   
339   {"NaccTrckltsEsd05",       "N_{acc. trkl} #cbar_{#||{#eta}<0.5} (SPD)",          ""},
340   {"NaccTrckltsEsd10",       "N_{acc. trkl} #cbar_{#||{#eta}<1.0} (SPD)",          ""},
341   {"NaccTrckltsEsd16",       "N_{acc. trkl} #cbar_{#||{#eta}<1.6} (SPD)",          ""},
342   {"NaccTrckltsEsd05Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<0.5} (SPD)",  ""},
343   {"NaccTrckltsEsd10Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.0} (SPD)",  ""},
344   {"NaccTrckltsEsd16Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.6} (SPD)",  ""},
345   {"NaccItsTpcEsd05",        "N_{acc. trkl} #cbar_{#||{#eta}<0.5} (ITS+TPC)",      ""},
346   {"NaccItsTpcEsd10",        "N_{acc. trkl} #cbar_{#||{#eta}<1.0} (ITS+TPC)",      ""},
347   {"NaccItsTpcEsd16",        "N_{acc. trkl} #cbar_{#||{#eta}<1.6} (ITS+TPC)",      ""},
348   {"NaccItsTpcEsd05Corr",    "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<0.5} (ITS+TPC)", ""},
349   {"NaccItsTpcEsd10Corr",    "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.0} (ITS+TPC)", ""},
350   {"NaccItsTpcEsd16Corr",    "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.6} (ITS+TPC)", ""},
351   {"NaccItsPureEsd05",       "N_{acc. trkl} #cbar_{#||{#eta}<0.5} (ITS)",          ""},
352   {"NaccItsPureEsd10",       "N_{acc. trkl} #cbar_{#||{#eta}<1.0} (ITS)",          ""},
353   {"NaccItsPureEsd16",       "N_{acc. trkl} #cbar_{#||{#eta}<1.6} (ITS)",          ""},
354   {"NaccItsPureEsd05Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<0.5} (ITS)",  ""},
355   {"NaccItsPureEsd10Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.0} (ITS)",  ""},
356   {"NaccItsPureEsd16Corr",   "N_{acc. trkl}^{corr.} #cbar_{#||{#eta}<1.6} (ITS)",  ""},
357
358   {"Nch",                    "N_{ch} #cbar_{#||{#eta}<1.6}",                       ""},
359   {"Nch05",                  "N_{ch} #cbar_{#||{#eta}<0.5}",                       ""},
360   {"Nch10",                  "N_{ch} #cbar_{#||{#eta}<1.0}",                       ""},
361   {"Centrality",             "centrality",                                         "(%)"},
362   {"CentralitySPD",          "centrality_{SPD}",                                   "(%)"},
363   {"Nevents",                "N_{evt}",                                            ""},
364   {"RunNumber",              "run",                                                ""},
365   {"MixingBin",              "mixing bin",                                         ""}
366 };
367
368 AliPIDResponse* AliDielectronVarManager::fgPIDResponse      = 0x0;
369 AliVEvent*      AliDielectronVarManager::fgEvent            = 0x0;
370 AliEventplane*  AliDielectronVarManager::fgTPCEventPlane    = 0x0;
371 AliKFVertex*    AliDielectronVarManager::fgKFVertex         = 0x0;
372 TProfile*       AliDielectronVarManager::fgMultEstimatorAvg[4][9] = {{0x0}};
373 TH3D*           AliDielectronVarManager::fgTRDpidEff[10][4] = {{0x0}};
374 Double_t        AliDielectronVarManager::fgTRDpidEffCentRanges[10][4] = {{0.0}};
375 TString         AliDielectronVarManager::fgVZEROCalibrationFile = "";
376 TString         AliDielectronVarManager::fgVZERORecenteringFile = "";
377 TProfile2D*     AliDielectronVarManager::fgVZEROCalib[64] = {0x0};
378 TProfile2D*     AliDielectronVarManager::fgVZERORecentering[2][2] = {{0x0,0x0},{0x0,0x0}};
379 Int_t           AliDielectronVarManager::fgCurrentRun = -1;
380 Double_t        AliDielectronVarManager::fgData[AliDielectronVarManager::kNMaxValues] = {0.};
381 //________________________________________________________________
382 AliDielectronVarManager::AliDielectronVarManager() :
383   TNamed("AliDielectronVarManager","AliDielectronVarManager")
384 {
385   //
386   // Default constructor
387   //
388   for(Int_t i=0; i<4; ++i)
389     for(Int_t j=0; j<9; ++j)
390       fgMultEstimatorAvg[i][j] = 0x0;
391   for(Int_t i=0; i<10; ++i)
392     for(Int_t j=0; j<4; ++j)
393       fgTRDpidEff[i][j] = 0x0;
394   for(Int_t i=0; i<64; ++i) fgVZEROCalib[i] = 0x0;
395   for(Int_t i=0; i<2; ++i) {
396     for(Int_t j=0; j<2; ++j) fgVZERORecentering[i][j] = 0x0;
397   }
398 }
399
400 //________________________________________________________________
401 AliDielectronVarManager::AliDielectronVarManager(const char* name, const char* title) :
402   TNamed(name,title)
403 {
404   //
405   // Named constructor
406   //
407   for(Int_t i=0; i<4; ++i)
408     for(Int_t j=0; j<9; ++j)
409       fgMultEstimatorAvg[i][j] = 0x0;
410   for(Int_t i=0; i<10; ++i)
411     for(Int_t j=0; j<4; ++j)
412       fgTRDpidEff[i][j] = 0x0;  
413   for(Int_t i=0; i<64; ++i) fgVZEROCalib[i] = 0x0;
414   for(Int_t i=0; i<2; ++i)
415     for(Int_t j=0; j<2; ++j) 
416       fgVZERORecentering[i][j] = 0x0;
417 }
418
419 //________________________________________________________________
420 AliDielectronVarManager::~AliDielectronVarManager()
421 {
422   //
423   // Default destructor
424   //
425   for(Int_t i=0; i<4; ++i)
426     for(Int_t j=0; j<9; ++j)
427       if(fgMultEstimatorAvg[i][j]) delete fgMultEstimatorAvg[i][j];
428   for(Int_t i=0; i<10; ++i)
429     for(Int_t j=0; j<4; ++j)
430       if(fgTRDpidEff[i][j]) delete fgTRDpidEff[i][j];    
431   for(Int_t i=0; i<64; ++i) 
432     if(fgVZEROCalib[i]) delete fgVZEROCalib[i];
433   for(Int_t i=0; i<2; ++i)
434     for(Int_t j=0; j<2; ++j) 
435       if(fgVZERORecentering[i][j]) delete fgVZERORecentering[i][j]; 
436 }
437
438 //________________________________________________________________
439 UInt_t AliDielectronVarManager::GetValueType(const char* valname) {
440   //
441   // Get value type by value name
442   //
443
444   TString name(valname);
445   for(UInt_t i=0; i<AliDielectronVarManager::kNMaxValues; i++) {
446     if(!name.CompareTo(fgkParticleNames[i][0])) return i;
447   }
448   return -1;
449 }