37 #include <TParticle.h>
38 #include <TParticlePDG.h>
42 #include <THnSparse.h>
43 #include <TLorentzVector.h>
46 #include <TDatabasePDG.h>
47 #include <AliAnalysisDataSlot.h>
48 #include <AliAnalysisDataContainer.h>
50 #include "AliMCEvent.h"
51 #include "AliAnalysisManager.h"
52 #include "AliAODMCHeader.h"
53 #include "AliAODHandler.h"
55 #include "AliExternalTrackParam.h"
56 #include "AliAODVertex.h"
57 #include "AliESDVertex.h"
58 #include "AliAODRecoDecay.h"
61 #include "AliESDtrack.h"
62 #include "AliAODTrack.h"
64 #include "AliAODcascade.h"
65 #include "AliAODMCParticle.h"
66 #include "AliAnalysisTaskSE.h"
68 #include "AliPIDResponse.h"
69 #include "AliPIDCombined.h"
70 #include "AliTOFPIDResponse.h"
72 #include "AliInputEventHandler.h"
73 #include "AliESDtrackCuts.h"
74 #include "AliNeutralTrackParam.h"
75 #include "AliKFParticle.h"
76 #include "AliKFVertex.h"
77 #include "AliExternalTrackParam.h"
78 #include "AliESDtrack.h"
79 #include "AliCentrality.h"
80 #include "AliVertexerTracks.h"
81 #include "AliEventPoolManager.h"
84 #include "AliQnCorrectionsManager.h"
85 #include "AliQnCorrectionsQnVector.h"
86 #include "AliAnalysisTaskFlowVectorCorrections.h"
107 fHNTrackletCorrvsZ(0),
109 fIsEventSelected(kFALSE),
110 fWriteVariableTree(kFALSE),
111 fWriteEachVariableTree(kFALSE),
112 fWriteMCVariableTree(kFALSE),
114 fEleVariablesTree(0),
116 fSingleVariablesTree(0),
118 fMCEleVariablesTree(0),
119 fMCV0VariablesTree(0),
120 fMCGenPairVariablesTree(0),
121 fCorrelationVariablesTree(0),
122 fReconstructPrimVert(kFALSE),
128 fCandidateVariables(),
129 fCandidateEleVariables(),
130 fCandidateV0Variables(),
131 fCandidateSingleVariables(),
132 fCandidateMCVariables(),
133 fCandidateMCEleVariables(),
134 fCandidateMCV0Variables(),
135 fCandidateMCGenPairVariables(),
136 fCorrelationVariables(),
148 fUseCentralityV0M(kFALSE),
149 fUseCentralitySPDTracklet(kFALSE),
153 fMCDoPairAnalysis(kFALSE),
154 fHistoEleLambdaMass(0),
155 fHistoEleLambdaMassRS(0),
156 fHistoEleLambdaMassRS1(0),
157 fHistoEleLambdaMassRS2(0),
158 fHistoEleLambdaMassWS(0),
159 fHistoEleLambdaMassWS1(0),
160 fHistoEleLambdaMassWS2(0),
161 fHistoEleLambdaMassRSMix(0),
162 fHistoEleLambdaMassRSMix1(0),
163 fHistoEleLambdaMassRSMix2(0),
164 fHistoEleLambdaMassWSMix(0),
165 fHistoEleLambdaMassWSMix1(0),
166 fHistoEleLambdaMassWSMix2(0),
167 fHistoEleLambdaMassRSSide(0),
168 fHistoEleLambdaMassRSSide1(0),
169 fHistoEleLambdaMassRSSide2(0),
170 fHistoEleLambdaMassWSSide(0),
171 fHistoEleLambdaMassWSSide1(0),
172 fHistoEleLambdaMassWSSide2(0),
173 fHistoEleLambdaMassRSAway(0),
174 fHistoEleLambdaMassRS1Away(0),
175 fHistoEleLambdaMassRS2Away(0),
176 fHistoEleLambdaMassWSAway(0),
177 fHistoEleLambdaMassWS1Away(0),
178 fHistoEleLambdaMassWS2Away(0),
179 fHistoEleLambdaMassRSMixAway(0),
180 fHistoEleLambdaMassRSMix1Away(0),
181 fHistoEleLambdaMassRSMix2Away(0),
182 fHistoEleLambdaMassWSMixAway(0),
183 fHistoEleLambdaMassWSMix1Away(0),
184 fHistoEleLambdaMassWSMix2Away(0),
185 fHistoEleLambdaMassRSSideAway(0),
186 fHistoEleLambdaMassRSSide1Away(0),
187 fHistoEleLambdaMassRSSide2Away(0),
188 fHistoEleLambdaMassWSSideAway(0),
189 fHistoEleLambdaMassWSSide1Away(0),
190 fHistoEleLambdaMassWSSide2Away(0),
191 fHistoEleLambdaMassvsElePtRS(0),
192 fHistoEleLambdaMassvsElePtWS(0),
193 fHistoEleLambdaMassvsElePtRSMix(0),
194 fHistoEleLambdaMassvsElePtWSMix(0),
195 fHistoEleLambdaMassvsElePtRSSide(0),
196 fHistoEleLambdaMassvsElePtWSSide(0),
197 fHistoEleLambdaMassvsElePtRS1(0),
198 fHistoEleLambdaMassvsElePtWS1(0),
199 fHistoEleLambdaMassvsElePtRSMix1(0),
200 fHistoEleLambdaMassvsElePtWSMix1(0),
201 fHistoEleLambdaMassvsElePtRSSide1(0),
202 fHistoEleLambdaMassvsElePtWSSide1(0),
203 fHistoEleLambdaMassvsElePtRS2(0),
204 fHistoEleLambdaMassvsElePtWS2(0),
205 fHistoEleLambdaMassvsElePtRSMix2(0),
206 fHistoEleLambdaMassvsElePtWSMix2(0),
207 fHistoEleLambdaMassvsElePtRSSide2(0),
208 fHistoEleLambdaMassvsElePtWSSide2(0),
213 fHistoEleLambdaMassMCS(0),
214 fHistoEleLambdaMassLambdabMCS(0),
215 fHistoEleLambdaMassXibMCS(0),
216 fHistoEleLambdaMassMCGen(0),
217 fHistoEleLambdaMassvsElePtMCS(0),
218 fHistoEleLambdaMassvsElePtMCGen(0),
219 fHistoEleLambdaMassvsElePtMCS1(0),
220 fHistoEleLambdaMassvsElePtMCGen1(0),
221 fHistoEleLambdaMassvsElePtMCS2(0),
222 fHistoEleLambdaMassvsElePtMCGen2(0),
225 fHistoElePtvsEtaRS(0),
226 fHistoElePtvsEtaWS(0),
227 fHistoElePtvsEtaRSMix(0),
228 fHistoElePtvsEtaWSMix(0),
229 fHistoElePtvsEtaMCS(0),
230 fHistoElePtvsEtaMCGen(0),
231 fHistoElePtvsLambdaPtRS(0),
232 fHistoElePtvsLambdaPtWS(0),
233 fHistoElePtvsLambdaPtRSMix(0),
234 fHistoElePtvsLambdaPtWSMix(0),
235 fHistoElePtvsLambdaPtMCS(0),
236 fHistoElePtvsLambdaPtvsLcPtMCS(0),
237 fHistoElePtvsLambdaPtMCGen(0),
238 fHistoElePtvsLambdaPtvsLcPtMCGen(0),
239 fHistoElePtvsLambdaPtMCLcGen(0),
240 fHistoElePtvsd0RS(0),
241 fHistoElePtvsd0WS(0),
242 fHistoElePtvsd0RSMix(0),
243 fHistoElePtvsd0WSMix(0),
244 fHistoElePtvsd0MCS(0),
245 fHistoElePtvsd0PromptMCS(0),
246 fHistoElePtvsd0BFeeddownMCS(0),
247 fHistoEleLambdaMassFeeddownXic0MCS(0),
248 fHistoEleLambdaMassFeeddownXic0MCGen(0),
249 fHistoEleLambdaMassvsElePtFeeddownXic0MCS(0),
250 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen(0),
251 fHistoEleLambdaMassvsElePtFeeddownXic0MCS1(0),
252 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen1(0),
253 fHistoEleLambdaMassvsElePtFeeddownXic0MCS2(0),
254 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen2(0),
255 fHistoElePtFeeddownXic0MCS(0),
256 fHistoElePtFeeddownXic0MCGen(0),
257 fHistoElePtvsEtaFeeddownXic0MCS(0),
258 fHistoElePtvsEtaFeeddownXic0MCGen(0),
259 fHistoElePtvsLambdaPtFeeddownXic0MCS(0),
260 fHistoElePtvsLambdaPtFeeddownXic0MCGen(0),
261 fHistoEleLambdaMassFeeddownXicPlusMCS(0),
262 fHistoEleLambdaMassFeeddownXicPlusMCGen(0),
263 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS(0),
264 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen(0),
265 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS1(0),
266 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen1(0),
267 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS2(0),
268 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen2(0),
269 fHistoElePtFeeddownXicPlusMCS(0),
270 fHistoElePtFeeddownXicPlusMCGen(0),
271 fHistoElePtvsEtaFeeddownXicPlusMCS(0),
272 fHistoElePtvsEtaFeeddownXicPlusMCGen(0),
273 fHistoElePtvsLambdaPtFeeddownXicPlusMCS(0),
274 fHistoElePtvsLambdaPtFeeddownXicPlusMCGen(0),
277 fHistoBachPtMCGen(0),
278 fHistoBachFracSharedITS(0),
279 fHistoBachChi2NclsITS(0),
281 fHistoLambdaMassvsPt(0),
282 fHistoLambdaMassvsPtMCS(0),
283 fHistoLambdaMassvsPtMCGen(0),
284 fHistoLambdaPtvsEta(0),
285 fHistoLambdaPtvsEtaMCS(0),
286 fHistoLambdaPtvsEtaMCGen(0),
287 fHistoLambdaArmenteros(0),
288 fHistoLambdaArmenterosMCS(0),
289 fHistoLambdaPtvsDl(0),
290 fHistoLambdaPtvsDlSide(0),
291 fHistoLambdaPtvsDlMCS(0),
292 fHistoLambdaPtvsDlFeeddownXi0MCS(0),
293 fHistoLambdaPtvsDlFeeddownXiMinusMCS(0),
294 fHistoLambdaPtvsDlFeeddownOmegaMCS(0),
295 fHistoK0sMassvsPt(0),
296 fHistoElectronTPCPID(0),
297 fHistoElectronTOFPID(0),
298 fHistoElectronITSPID(0),
299 fHistoElectronTPCSelPID(0),
300 fHistoElectronTOFSelPID(0),
301 fHistoElectronITSSelPID(0),
302 fHistoElectronTPCPIDSelTOF(0),
303 fHistoElectronTPCPIDSelTOFSmallEta(0),
304 fHistoElectronTPCPIDSelTOFLargeEta(0),
305 fHistoElectronITSPIDSelTPCTOF(0),
306 fHistoElectronITSPIDSelTPCTOFSmallEta(0),
307 fHistoElectronITSPIDSelTPCTOFLargeEta(0),
308 fHistoMassConversionsMin(0),
309 fHistoMassConversionsSameSignMin(0),
310 fHistoElectronQovPtvsPhi(0),
311 fHistoLambdaQovPtvsPhi(0),
318 fHistoLcMCGenWithEleA(0),
319 fHistoLcMCGenWithEleB(0),
320 fHistoLbMCGenWithEleA(0),
321 fHistoLbMCGenWithEleB(0),
322 fHistoLbMCGenWithLambdac(0),
329 fHistoFeedDownXic0MCGen(0),
330 fHistoFeedDownXic0MCGen1(0),
331 fHistoFeedDownXic0MCGen2(0),
332 fHistoFeedDownXic0MCS(0),
333 fHistoFeedDownXic0MCS1(0),
334 fHistoFeedDownXic0MCS2(0),
335 fHistoFeedDownXicPlusMCGen(0),
336 fHistoFeedDownXicPlusMCGen1(0),
337 fHistoFeedDownXicPlusMCGen2(0),
338 fHistoFeedDownXicPlusMCS(0),
339 fHistoFeedDownXicPlusMCS1(0),
340 fHistoFeedDownXicPlusMCS2(0),
341 fHistoFeedDownSigmaMCGen(0),
342 fHistoFeedDownSigmaMCGen1(0),
343 fHistoFeedDownSigmaMCGen2(0),
344 fHistoFeedDownSigmaMCS(0),
345 fHistoFeedDownSigmaMCS1(0),
346 fHistoFeedDownSigmaMCS2(0),
347 fHistoLcElectronMCGen(0),
348 fHistoLcElectronMCGen1(0),
349 fHistoLcElectronMCGen2(0),
350 fHistoLcElectronMCS(0),
351 fHistoLcElectronMCS1(0),
352 fHistoLcElectronMCS2(0),
353 fHistoLbElectronMCGen(0),
354 fHistoLbElectronMCGen1(0),
355 fHistoLbElectronMCGen2(0),
356 fHistoLbElectronMCS(0),
357 fHistoLbElectronMCS1(0),
358 fHistoLbElectronMCS2(0),
359 fHistoElectronFeedDownXic0MCGen(0),
360 fHistoElectronFeedDownXic0MCGen1(0),
361 fHistoElectronFeedDownXic0MCGen2(0),
362 fHistoElectronFeedDownXic0MCS(0),
363 fHistoElectronFeedDownXic0MCS1(0),
364 fHistoElectronFeedDownXic0MCS2(0),
365 fHistoElectronFeedDownXicPlusMCGen(0),
366 fHistoElectronFeedDownXicPlusMCGen1(0),
367 fHistoElectronFeedDownXicPlusMCGen2(0),
368 fHistoElectronFeedDownXicPlusMCS(0),
369 fHistoElectronFeedDownXicPlusMCS1(0),
370 fHistoElectronFeedDownXicPlusMCS2(0),
371 fHistoElectronFeedDownXibMCGen(0),
372 fHistoElectronFeedDownXibMCGen1(0),
373 fHistoElectronFeedDownXibMCGen2(0),
374 fHistoElectronFeedDownXibMCS(0),
375 fHistoElectronFeedDownXibMCS1(0),
376 fHistoElectronFeedDownXibMCS2(0),
377 fHistoElectronMCGen(0),
378 fHistoBottomElectronMCGen(0),
379 fHistoCharmElectronMCGen(0),
380 fHistoLambdaMCGen(0),
381 fHistoElePtvsV0dlRS(0),
382 fHistoElePtvsV0dlRS1(0),
383 fHistoElePtvsV0dlRS2(0),
384 fHistoElePtvsV0dlRSSide(0),
385 fHistoElePtvsV0dlRSSide1(0),
386 fHistoElePtvsV0dlRSSide2(0),
387 fHistoElePtvsV0dlRSMix(0),
388 fHistoElePtvsV0dlRSMix1(0),
389 fHistoElePtvsV0dlRSMix2(0),
390 fHistoElePtvsV0dlWS(0),
391 fHistoElePtvsV0dlWS1(0),
392 fHistoElePtvsV0dlWS2(0),
393 fHistoElePtvsV0dlWSSide(0),
394 fHistoElePtvsV0dlWSSide1(0),
395 fHistoElePtvsV0dlWSSide2(0),
396 fHistoElePtvsV0dlWSMix(0),
397 fHistoElePtvsV0dlWSMix1(0),
398 fHistoElePtvsV0dlWSMix2(0),
399 fHistoElePtvsV0dlMCS(0),
400 fHistoElePtvsV0dlMCS1(0),
401 fHistoElePtvsV0dlMCS2(0),
402 fHistoElePtvsV0dlFeedDownXic0MCS(0),
403 fHistoElePtvsV0dlFeedDownXic0MCS1(0),
404 fHistoElePtvsV0dlFeedDownXic0MCS2(0),
405 fHistoElePtvsV0dlFeedDownXicPlusMCS(0),
406 fHistoElePtvsV0dlFeedDownXicPlusMCS1(0),
407 fHistoElePtvsV0dlFeedDownXicPlusMCS2(0),
408 fHistoElePtvsV0dcaRS(0),
409 fHistoElePtvsV0dcaRS1(0),
410 fHistoElePtvsV0dcaRS2(0),
411 fHistoElePtvsV0dcaRSSide(0),
412 fHistoElePtvsV0dcaRSSide1(0),
413 fHistoElePtvsV0dcaRSSide2(0),
414 fHistoElePtvsV0dcaRSMix(0),
415 fHistoElePtvsV0dcaRSMix1(0),
416 fHistoElePtvsV0dcaRSMix2(0),
417 fHistoElePtvsV0dcaWS(0),
418 fHistoElePtvsV0dcaWS1(0),
419 fHistoElePtvsV0dcaWS2(0),
420 fHistoElePtvsV0dcaWSSide(0),
421 fHistoElePtvsV0dcaWSSide1(0),
422 fHistoElePtvsV0dcaWSSide2(0),
423 fHistoElePtvsV0dcaWSMix(0),
424 fHistoElePtvsV0dcaWSMix1(0),
425 fHistoElePtvsV0dcaWSMix2(0),
426 fHistoElePtvsV0dcaMCS(0),
427 fHistoElePtvsV0dcaMCS1(0),
428 fHistoElePtvsV0dcaMCS2(0),
429 fHistoElePtvsV0dcaFeedDownXic0MCS(0),
430 fHistoElePtvsV0dcaFeedDownXic0MCS1(0),
431 fHistoElePtvsV0dcaFeedDownXic0MCS2(0),
432 fHistoElePtvsV0dcaFeedDownXicPlusMCS(0),
433 fHistoElePtvsV0dcaFeedDownXicPlusMCS1(0),
434 fHistoElePtvsV0dcaFeedDownXicPlusMCS2(0),
435 fHistoEleLambdaPtvsV0dlRS(0),
436 fHistoEleLambdaPtvsV0dlRS1(0),
437 fHistoEleLambdaPtvsV0dlRS2(0),
438 fHistoEleLambdaPtvsV0dlRSSide(0),
439 fHistoEleLambdaPtvsV0dlRSSide1(0),
440 fHistoEleLambdaPtvsV0dlRSSide2(0),
441 fHistoEleLambdaPtvsV0dlRSMix(0),
442 fHistoEleLambdaPtvsV0dlRSMix1(0),
443 fHistoEleLambdaPtvsV0dlRSMix2(0),
444 fHistoEleLambdaPtvsV0dlWS(0),
445 fHistoEleLambdaPtvsV0dlWS1(0),
446 fHistoEleLambdaPtvsV0dlWS2(0),
447 fHistoEleLambdaPtvsV0dlWSSide(0),
448 fHistoEleLambdaPtvsV0dlWSSide1(0),
449 fHistoEleLambdaPtvsV0dlWSSide2(0),
450 fHistoEleLambdaPtvsV0dlWSMix(0),
451 fHistoEleLambdaPtvsV0dlWSMix1(0),
452 fHistoEleLambdaPtvsV0dlWSMix2(0),
453 fHistoEleLambdaPtvsV0dlMCS(0),
454 fHistoEleLambdaPtvsV0dlMCS1(0),
455 fHistoEleLambdaPtvsV0dlMCS2(0),
456 fHistoEleLambdaPtvsV0dlPromptMCS(0),
457 fHistoEleLambdaPtvsV0dlPromptMCS1(0),
458 fHistoEleLambdaPtvsV0dlPromptMCS2(0),
459 fHistoEleLambdaPtvsV0dlBFeeddownMCS(0),
460 fHistoEleLambdaPtvsV0dlBFeeddownMCS1(0),
461 fHistoEleLambdaPtvsV0dlBFeeddownMCS2(0),
462 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS(0),
463 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS1(0),
464 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS2(0),
465 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS(0),
466 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS1(0),
467 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS2(0),
468 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS(0),
469 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS1(0),
470 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS2(0),
471 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS(0),
472 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS1(0),
473 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS2(0),
474 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS(0),
475 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS1(0),
476 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS2(0),
477 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS(0),
478 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS1(0),
479 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS2(0),
480 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS(0),
481 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS1(0),
482 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS2(0),
483 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS(0),
484 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS1(0),
485 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS2(0),
486 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS(0),
487 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS1(0),
488 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS2(0),
489 fHistoEleLambdaPtvsV0dlLambdabMCS(0),
490 fHistoEleLambdaPtvsV0dlLambdabMCS1(0),
491 fHistoEleLambdaPtvsV0dlLambdabMCS2(0),
492 fHistoEleLambdaPtvsV0dlXibMCS(0),
493 fHistoEleLambdaPtvsV0dlXibMCS1(0),
494 fHistoEleLambdaPtvsV0dlXibMCS2(0),
495 fHistoEleLambdaPtvsV0dlRSAway(0),
496 fHistoEleLambdaPtvsV0dlRS1Away(0),
497 fHistoEleLambdaPtvsV0dlRS2Away(0),
498 fHistoEleLambdaPtvsV0dlRSSideAway(0),
499 fHistoEleLambdaPtvsV0dlRSSide1Away(0),
500 fHistoEleLambdaPtvsV0dlRSSide2Away(0),
501 fHistoEleLambdaPtvsV0dlRSMixAway(0),
502 fHistoEleLambdaPtvsV0dlRSMix1Away(0),
503 fHistoEleLambdaPtvsV0dlRSMix2Away(0),
504 fHistoEleLambdaPtvsV0dlWSAway(0),
505 fHistoEleLambdaPtvsV0dlWS1Away(0),
506 fHistoEleLambdaPtvsV0dlWS2Away(0),
507 fHistoEleLambdaPtvsV0dlWSSideAway(0),
508 fHistoEleLambdaPtvsV0dlWSSide1Away(0),
509 fHistoEleLambdaPtvsV0dlWSSide2Away(0),
510 fHistoEleLambdaPtvsV0dlWSMixAway(0),
511 fHistoEleLambdaPtvsV0dlWSMix1Away(0),
512 fHistoEleLambdaPtvsV0dlWSMix2Away(0),
513 fHistoCorrelationVariablesvsEleLambdaPt(0),
514 fHistoCorrelationVariablesvsEleLambdaPtMix(0),
515 fHistoCorrelationVariablesvsEleLambdaPtMC(0),
516 fHistoCorrelationVariablesvsElePt(0),
517 fHistoCorrelationVariablesvsElePtMix(0),
518 fHistoCorrelationVariablesvsElePtMC(0),
519 fHistoCorrelationVariablesvsLambdaPt(0),
520 fHistoCorrelationVariablesvsLambdaPtMix(0),
521 fHistoCorrelationVariablesvsLambdaPtMC(0),
522 fHistoMassVariablesvsEleLambdaPt(0),
523 fHistoMassVariablesvsEleLambdaPtMix(0),
524 fHistoMassVariablesvsEleLambdaPtMC(0),
525 fHistoMassVariablesvsElePt(0),
526 fHistoMassVariablesvsElePtMix(0),
527 fHistoMassVariablesvsElePtMC(0),
528 fHistoMassVariablesvsLambdaPt(0),
529 fHistoMassVariablesvsLambdaPtMix(0),
530 fHistoMassVariablesvsLambdaPtMC(0),
531 fHistoResponseElePt(0),
532 fHistoResponseElePt1(0),
533 fHistoResponseElePt2(0),
534 fHistoResponseEleLambdaPt(0),
535 fHistoResponseEleLambdaPt1(0),
536 fHistoResponseEleLambdaPt2(0),
537 fHistoResponseEleLambdaPtFeeddownXic0(0),
538 fHistoResponseEleLambdaPtFeeddownXic01(0),
539 fHistoResponseEleLambdaPtFeeddownXic02(0),
540 fHistoResponseEleLambdaPtFeeddownXicPlus(0),
541 fHistoResponseEleLambdaPtFeeddownXicPlus1(0),
542 fHistoResponseEleLambdaPtFeeddownXicPlus2(0),
543 fHistoResponseEleLambdaPtFeeddownSigma(0),
544 fHistoResponseEleLambdaPtFeeddownSigma1(0),
545 fHistoResponseEleLambdaPtFeeddownSigma2(0),
546 fHistoResponseEleLambdaPtLambdab(0),
547 fHistoResponseElePtLambdab(0),
548 fHistoResponseLambdaPtLambdab(0),
549 fHistoResponseLambdaPt(0),
550 fHistoResponseLambdaPtFeeddownXic0(0),
551 fHistoResponseLambdaPtFeeddownXicPlus(0),
552 fHistoResponseLambdaPtFeeddownSigma(0),
553 fHistoResponseLambdaPtvsEleLambdaPt(0),
554 fHistoResponseLambdaPtvsEleLambdaPtLambdab(0),
555 fHistoResponseMcGenLambdabPtvsLambdacPt(0),
556 fHistoLcPtvseleLambdaPtvsElePtvsLambdaPt(0),
557 fHistoEleLambdaPtvsRapidityRS(0),
558 fHistoEleLambdaPtvsRapidityWS(0),
559 fHistoEleLambdaPtvsRapidityMCS(0),
561 fHistoElectronPi0Total(0),
562 fHistoElectronPi0Tag(0),
564 fHistoElectronEtaTotal(0),
565 fHistoElectronEtaTag(0),
569 fHistonEvtvsRunNumber(0),
570 fHistonElevsRunNumber(0),
571 fHistonLambdavsRunNumber(0),
572 fHistoMCEventType(0),
573 fHistoMCDeltaPhiccbar(0),
575 fGTI(0),fGTIndex(0), fTrackBuffSize(19000),
576 fHistodPhiSdEtaSElectronProtonR125RS(0),
577 fHistodPhiSdEtaSElectronProtonR125WS(0),
578 fHistodPhiSdEtaSElectronProtonR125RSMix(0),
579 fHistodPhiSdEtaSElectronProtonR125WSMix(0),
580 fHistodPhiSdEtaSElectronPionR125RS(0),
581 fHistodPhiSdEtaSElectronPionR125WS(0),
582 fHistodPhiSdEtaSElectronPionR125RSMix(0),
583 fHistodPhiSdEtaSElectronPionR125WSMix(0),
585 fMixWithoutConversionFlag(kFALSE),
586 fNumberOfEventsForMixing (5),
592 fHistoPoolMonitor(0),
593 fHistoPoolIDCounter(0),
606 for(
Int_t i=0;i<17;i++){
611 for(
Int_t i=0;i<8;i++){
621 Bool_t writeVariableTree) :
632 fHNTrackletCorrvsZ(0),
634 fIsEventSelected(kFALSE),
635 fWriteVariableTree(writeVariableTree),
636 fWriteEachVariableTree(kFALSE),
637 fWriteMCVariableTree(kFALSE),
639 fEleVariablesTree(0),
641 fSingleVariablesTree(0),
643 fMCEleVariablesTree(0),
644 fMCV0VariablesTree(0),
645 fMCGenPairVariablesTree(0),
646 fCorrelationVariablesTree(0),
647 fReconstructPrimVert(kFALSE),
653 fCandidateVariables(),
654 fCandidateEleVariables(),
655 fCandidateV0Variables(),
656 fCandidateSingleVariables(),
657 fCandidateMCVariables(),
658 fCandidateMCEleVariables(),
659 fCandidateMCV0Variables(),
660 fCandidateMCGenPairVariables(),
661 fCorrelationVariables(),
673 fUseCentralityV0M(kFALSE),
674 fUseCentralitySPDTracklet(kFALSE),
678 fMCDoPairAnalysis(kFALSE),
679 fHistoEleLambdaMass(0),
680 fHistoEleLambdaMassRS(0),
681 fHistoEleLambdaMassRS1(0),
682 fHistoEleLambdaMassRS2(0),
683 fHistoEleLambdaMassWS(0),
684 fHistoEleLambdaMassWS1(0),
685 fHistoEleLambdaMassWS2(0),
686 fHistoEleLambdaMassRSMix(0),
687 fHistoEleLambdaMassRSMix1(0),
688 fHistoEleLambdaMassRSMix2(0),
689 fHistoEleLambdaMassWSMix(0),
690 fHistoEleLambdaMassWSMix1(0),
691 fHistoEleLambdaMassWSMix2(0),
692 fHistoEleLambdaMassRSSide(0),
693 fHistoEleLambdaMassRSSide1(0),
694 fHistoEleLambdaMassRSSide2(0),
695 fHistoEleLambdaMassWSSide(0),
696 fHistoEleLambdaMassWSSide1(0),
697 fHistoEleLambdaMassWSSide2(0),
698 fHistoEleLambdaMassRSAway(0),
699 fHistoEleLambdaMassRS1Away(0),
700 fHistoEleLambdaMassRS2Away(0),
701 fHistoEleLambdaMassWSAway(0),
702 fHistoEleLambdaMassWS1Away(0),
703 fHistoEleLambdaMassWS2Away(0),
704 fHistoEleLambdaMassRSMixAway(0),
705 fHistoEleLambdaMassRSMix1Away(0),
706 fHistoEleLambdaMassRSMix2Away(0),
707 fHistoEleLambdaMassWSMixAway(0),
708 fHistoEleLambdaMassWSMix1Away(0),
709 fHistoEleLambdaMassWSMix2Away(0),
710 fHistoEleLambdaMassRSSideAway(0),
711 fHistoEleLambdaMassRSSide1Away(0),
712 fHistoEleLambdaMassRSSide2Away(0),
713 fHistoEleLambdaMassWSSideAway(0),
714 fHistoEleLambdaMassWSSide1Away(0),
715 fHistoEleLambdaMassWSSide2Away(0),
716 fHistoEleLambdaMassvsElePtRS(0),
717 fHistoEleLambdaMassvsElePtWS(0),
718 fHistoEleLambdaMassvsElePtRSMix(0),
719 fHistoEleLambdaMassvsElePtWSMix(0),
720 fHistoEleLambdaMassvsElePtRSSide(0),
721 fHistoEleLambdaMassvsElePtWSSide(0),
722 fHistoEleLambdaMassvsElePtRS1(0),
723 fHistoEleLambdaMassvsElePtWS1(0),
724 fHistoEleLambdaMassvsElePtRSMix1(0),
725 fHistoEleLambdaMassvsElePtWSMix1(0),
726 fHistoEleLambdaMassvsElePtRSSide1(0),
727 fHistoEleLambdaMassvsElePtWSSide1(0),
728 fHistoEleLambdaMassvsElePtRS2(0),
729 fHistoEleLambdaMassvsElePtWS2(0),
730 fHistoEleLambdaMassvsElePtRSMix2(0),
731 fHistoEleLambdaMassvsElePtWSMix2(0),
732 fHistoEleLambdaMassvsElePtRSSide2(0),
733 fHistoEleLambdaMassvsElePtWSSide2(0),
738 fHistoEleLambdaMassMCS(0),
739 fHistoEleLambdaMassLambdabMCS(0),
740 fHistoEleLambdaMassXibMCS(0),
741 fHistoEleLambdaMassMCGen(0),
742 fHistoEleLambdaMassvsElePtMCS(0),
743 fHistoEleLambdaMassvsElePtMCGen(0),
744 fHistoEleLambdaMassvsElePtMCS1(0),
745 fHistoEleLambdaMassvsElePtMCGen1(0),
746 fHistoEleLambdaMassvsElePtMCS2(0),
747 fHistoEleLambdaMassvsElePtMCGen2(0),
750 fHistoElePtvsEtaRS(0),
751 fHistoElePtvsEtaWS(0),
752 fHistoElePtvsEtaRSMix(0),
753 fHistoElePtvsEtaWSMix(0),
754 fHistoElePtvsEtaMCS(0),
755 fHistoElePtvsEtaMCGen(0),
756 fHistoElePtvsLambdaPtRS(0),
757 fHistoElePtvsLambdaPtWS(0),
758 fHistoElePtvsLambdaPtRSMix(0),
759 fHistoElePtvsLambdaPtWSMix(0),
760 fHistoElePtvsLambdaPtMCS(0),
761 fHistoElePtvsLambdaPtvsLcPtMCS(0),
762 fHistoElePtvsLambdaPtMCGen(0),
763 fHistoElePtvsLambdaPtvsLcPtMCGen(0),
764 fHistoElePtvsLambdaPtMCLcGen(0),
765 fHistoElePtvsd0RS(0),
766 fHistoElePtvsd0WS(0),
767 fHistoElePtvsd0RSMix(0),
768 fHistoElePtvsd0WSMix(0),
769 fHistoElePtvsd0MCS(0),
770 fHistoElePtvsd0PromptMCS(0),
771 fHistoElePtvsd0BFeeddownMCS(0),
772 fHistoEleLambdaMassFeeddownXic0MCS(0),
773 fHistoEleLambdaMassFeeddownXic0MCGen(0),
774 fHistoEleLambdaMassvsElePtFeeddownXic0MCS(0),
775 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen(0),
776 fHistoEleLambdaMassvsElePtFeeddownXic0MCS1(0),
777 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen1(0),
778 fHistoEleLambdaMassvsElePtFeeddownXic0MCS2(0),
779 fHistoEleLambdaMassvsElePtFeeddownXic0MCGen2(0),
780 fHistoElePtFeeddownXic0MCS(0),
781 fHistoElePtFeeddownXic0MCGen(0),
782 fHistoElePtvsEtaFeeddownXic0MCS(0),
783 fHistoElePtvsEtaFeeddownXic0MCGen(0),
784 fHistoElePtvsLambdaPtFeeddownXic0MCS(0),
785 fHistoElePtvsLambdaPtFeeddownXic0MCGen(0),
786 fHistoEleLambdaMassFeeddownXicPlusMCS(0),
787 fHistoEleLambdaMassFeeddownXicPlusMCGen(0),
788 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS(0),
789 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen(0),
790 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS1(0),
791 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen1(0),
792 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCS2(0),
793 fHistoEleLambdaMassvsElePtFeeddownXicPlusMCGen2(0),
794 fHistoElePtFeeddownXicPlusMCS(0),
795 fHistoElePtFeeddownXicPlusMCGen(0),
796 fHistoElePtvsEtaFeeddownXicPlusMCS(0),
797 fHistoElePtvsEtaFeeddownXicPlusMCGen(0),
798 fHistoElePtvsLambdaPtFeeddownXicPlusMCS(0),
799 fHistoElePtvsLambdaPtFeeddownXicPlusMCGen(0),
802 fHistoBachPtMCGen(0),
803 fHistoBachFracSharedITS(0),
804 fHistoBachChi2NclsITS(0),
806 fHistoLambdaMassvsPt(0),
807 fHistoLambdaMassvsPtMCS(0),
808 fHistoLambdaMassvsPtMCGen(0),
809 fHistoLambdaPtvsEta(0),
810 fHistoLambdaPtvsEtaMCS(0),
811 fHistoLambdaPtvsEtaMCGen(0),
812 fHistoLambdaArmenteros(0),
813 fHistoLambdaArmenterosMCS(0),
814 fHistoLambdaPtvsDl(0),
815 fHistoLambdaPtvsDlSide(0),
816 fHistoLambdaPtvsDlMCS(0),
817 fHistoLambdaPtvsDlFeeddownXi0MCS(0),
818 fHistoLambdaPtvsDlFeeddownXiMinusMCS(0),
819 fHistoLambdaPtvsDlFeeddownOmegaMCS(0),
820 fHistoK0sMassvsPt(0),
821 fHistoElectronTPCPID(0),
822 fHistoElectronTOFPID(0),
823 fHistoElectronITSPID(0),
824 fHistoElectronTPCSelPID(0),
825 fHistoElectronTOFSelPID(0),
826 fHistoElectronITSSelPID(0),
827 fHistoElectronTPCPIDSelTOF(0),
828 fHistoElectronTPCPIDSelTOFSmallEta(0),
829 fHistoElectronTPCPIDSelTOFLargeEta(0),
830 fHistoElectronITSPIDSelTPCTOF(0),
831 fHistoElectronITSPIDSelTPCTOFSmallEta(0),
832 fHistoElectronITSPIDSelTPCTOFLargeEta(0),
833 fHistoMassConversionsMin(0),
834 fHistoMassConversionsSameSignMin(0),
835 fHistoElectronQovPtvsPhi(0),
836 fHistoLambdaQovPtvsPhi(0),
843 fHistoLcMCGenWithEleA(0),
844 fHistoLcMCGenWithEleB(0),
845 fHistoLbMCGenWithEleA(0),
846 fHistoLbMCGenWithEleB(0),
847 fHistoLbMCGenWithLambdac(0),
854 fHistoFeedDownXic0MCGen(0),
855 fHistoFeedDownXic0MCGen1(0),
856 fHistoFeedDownXic0MCGen2(0),
857 fHistoFeedDownXic0MCS(0),
858 fHistoFeedDownXic0MCS1(0),
859 fHistoFeedDownXic0MCS2(0),
860 fHistoFeedDownXicPlusMCGen(0),
861 fHistoFeedDownXicPlusMCGen1(0),
862 fHistoFeedDownXicPlusMCGen2(0),
863 fHistoFeedDownXicPlusMCS(0),
864 fHistoFeedDownXicPlusMCS1(0),
865 fHistoFeedDownXicPlusMCS2(0),
866 fHistoFeedDownSigmaMCGen(0),
867 fHistoFeedDownSigmaMCGen1(0),
868 fHistoFeedDownSigmaMCGen2(0),
869 fHistoFeedDownSigmaMCS(0),
870 fHistoFeedDownSigmaMCS1(0),
871 fHistoFeedDownSigmaMCS2(0),
872 fHistoLcElectronMCGen(0),
873 fHistoLcElectronMCGen1(0),
874 fHistoLcElectronMCGen2(0),
875 fHistoLcElectronMCS(0),
876 fHistoLcElectronMCS1(0),
877 fHistoLcElectronMCS2(0),
878 fHistoLbElectronMCGen(0),
879 fHistoLbElectronMCGen1(0),
880 fHistoLbElectronMCGen2(0),
881 fHistoLbElectronMCS(0),
882 fHistoLbElectronMCS1(0),
883 fHistoLbElectronMCS2(0),
884 fHistoElectronFeedDownXic0MCGen(0),
885 fHistoElectronFeedDownXic0MCGen1(0),
886 fHistoElectronFeedDownXic0MCGen2(0),
887 fHistoElectronFeedDownXic0MCS(0),
888 fHistoElectronFeedDownXic0MCS1(0),
889 fHistoElectronFeedDownXic0MCS2(0),
890 fHistoElectronFeedDownXicPlusMCGen(0),
891 fHistoElectronFeedDownXicPlusMCGen1(0),
892 fHistoElectronFeedDownXicPlusMCGen2(0),
893 fHistoElectronFeedDownXicPlusMCS(0),
894 fHistoElectronFeedDownXicPlusMCS1(0),
895 fHistoElectronFeedDownXicPlusMCS2(0),
896 fHistoElectronFeedDownXibMCGen(0),
897 fHistoElectronFeedDownXibMCGen1(0),
898 fHistoElectronFeedDownXibMCGen2(0),
899 fHistoElectronFeedDownXibMCS(0),
900 fHistoElectronFeedDownXibMCS1(0),
901 fHistoElectronFeedDownXibMCS2(0),
902 fHistoElectronMCGen(0),
903 fHistoBottomElectronMCGen(0),
904 fHistoCharmElectronMCGen(0),
905 fHistoLambdaMCGen(0),
906 fHistoElePtvsV0dlRS(0),
907 fHistoElePtvsV0dlRS1(0),
908 fHistoElePtvsV0dlRS2(0),
909 fHistoElePtvsV0dlRSSide(0),
910 fHistoElePtvsV0dlRSSide1(0),
911 fHistoElePtvsV0dlRSSide2(0),
912 fHistoElePtvsV0dlRSMix(0),
913 fHistoElePtvsV0dlRSMix1(0),
914 fHistoElePtvsV0dlRSMix2(0),
915 fHistoElePtvsV0dlWS(0),
916 fHistoElePtvsV0dlWS1(0),
917 fHistoElePtvsV0dlWS2(0),
918 fHistoElePtvsV0dlWSSide(0),
919 fHistoElePtvsV0dlWSSide1(0),
920 fHistoElePtvsV0dlWSSide2(0),
921 fHistoElePtvsV0dlWSMix(0),
922 fHistoElePtvsV0dlWSMix1(0),
923 fHistoElePtvsV0dlWSMix2(0),
924 fHistoElePtvsV0dlMCS(0),
925 fHistoElePtvsV0dlMCS1(0),
926 fHistoElePtvsV0dlMCS2(0),
927 fHistoElePtvsV0dlFeedDownXic0MCS(0),
928 fHistoElePtvsV0dlFeedDownXic0MCS1(0),
929 fHistoElePtvsV0dlFeedDownXic0MCS2(0),
930 fHistoElePtvsV0dlFeedDownXicPlusMCS(0),
931 fHistoElePtvsV0dlFeedDownXicPlusMCS1(0),
932 fHistoElePtvsV0dlFeedDownXicPlusMCS2(0),
933 fHistoElePtvsV0dcaRS(0),
934 fHistoElePtvsV0dcaRS1(0),
935 fHistoElePtvsV0dcaRS2(0),
936 fHistoElePtvsV0dcaRSSide(0),
937 fHistoElePtvsV0dcaRSSide1(0),
938 fHistoElePtvsV0dcaRSSide2(0),
939 fHistoElePtvsV0dcaRSMix(0),
940 fHistoElePtvsV0dcaRSMix1(0),
941 fHistoElePtvsV0dcaRSMix2(0),
942 fHistoElePtvsV0dcaWS(0),
943 fHistoElePtvsV0dcaWS1(0),
944 fHistoElePtvsV0dcaWS2(0),
945 fHistoElePtvsV0dcaWSSide(0),
946 fHistoElePtvsV0dcaWSSide1(0),
947 fHistoElePtvsV0dcaWSSide2(0),
948 fHistoElePtvsV0dcaWSMix(0),
949 fHistoElePtvsV0dcaWSMix1(0),
950 fHistoElePtvsV0dcaWSMix2(0),
951 fHistoElePtvsV0dcaMCS(0),
952 fHistoElePtvsV0dcaMCS1(0),
953 fHistoElePtvsV0dcaMCS2(0),
954 fHistoElePtvsV0dcaFeedDownXic0MCS(0),
955 fHistoElePtvsV0dcaFeedDownXic0MCS1(0),
956 fHistoElePtvsV0dcaFeedDownXic0MCS2(0),
957 fHistoElePtvsV0dcaFeedDownXicPlusMCS(0),
958 fHistoElePtvsV0dcaFeedDownXicPlusMCS1(0),
959 fHistoElePtvsV0dcaFeedDownXicPlusMCS2(0),
960 fHistoEleLambdaPtvsV0dlRS(0),
961 fHistoEleLambdaPtvsV0dlRS1(0),
962 fHistoEleLambdaPtvsV0dlRS2(0),
963 fHistoEleLambdaPtvsV0dlRSSide(0),
964 fHistoEleLambdaPtvsV0dlRSSide1(0),
965 fHistoEleLambdaPtvsV0dlRSSide2(0),
966 fHistoEleLambdaPtvsV0dlRSMix(0),
967 fHistoEleLambdaPtvsV0dlRSMix1(0),
968 fHistoEleLambdaPtvsV0dlRSMix2(0),
969 fHistoEleLambdaPtvsV0dlWS(0),
970 fHistoEleLambdaPtvsV0dlWS1(0),
971 fHistoEleLambdaPtvsV0dlWS2(0),
972 fHistoEleLambdaPtvsV0dlWSSide(0),
973 fHistoEleLambdaPtvsV0dlWSSide1(0),
974 fHistoEleLambdaPtvsV0dlWSSide2(0),
975 fHistoEleLambdaPtvsV0dlWSMix(0),
976 fHistoEleLambdaPtvsV0dlWSMix1(0),
977 fHistoEleLambdaPtvsV0dlWSMix2(0),
978 fHistoEleLambdaPtvsV0dlMCS(0),
979 fHistoEleLambdaPtvsV0dlMCS1(0),
980 fHistoEleLambdaPtvsV0dlMCS2(0),
981 fHistoEleLambdaPtvsV0dlPromptMCS(0),
982 fHistoEleLambdaPtvsV0dlPromptMCS1(0),
983 fHistoEleLambdaPtvsV0dlPromptMCS2(0),
984 fHistoEleLambdaPtvsV0dlBFeeddownMCS(0),
985 fHistoEleLambdaPtvsV0dlBFeeddownMCS1(0),
986 fHistoEleLambdaPtvsV0dlBFeeddownMCS2(0),
987 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS(0),
988 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS1(0),
989 fHistoEleLambdaPtvsV0dlFeedDownXic0MCS2(0),
990 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS(0),
991 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS1(0),
992 fHistoEleLambdaPtvsV0dlFeedDownXic0PromptMCS2(0),
993 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS(0),
994 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS1(0),
995 fHistoEleLambdaPtvsV0dlFeedDownXic0BFeeddownMCS2(0),
996 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS(0),
997 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS1(0),
998 fHistoEleLambdaPtvsV0dlFeedDownXicPlusMCS2(0),
999 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS(0),
1000 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS1(0),
1001 fHistoEleLambdaPtvsV0dlFeedDownXicPlusPromptMCS2(0),
1002 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS(0),
1003 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS1(0),
1004 fHistoEleLambdaPtvsV0dlFeedDownXicPlusBFeeddownMCS2(0),
1005 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS(0),
1006 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS1(0),
1007 fHistoEleLambdaPtvsV0dlFeedDownSigmaMCS2(0),
1008 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS(0),
1009 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS1(0),
1010 fHistoEleLambdaPtvsV0dlFeedDownSigmaPromptMCS2(0),
1011 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS(0),
1012 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS1(0),
1013 fHistoEleLambdaPtvsV0dlFeedDownSigmaBFeeddownMCS2(0),
1014 fHistoEleLambdaPtvsV0dlLambdabMCS(0),
1015 fHistoEleLambdaPtvsV0dlLambdabMCS1(0),
1016 fHistoEleLambdaPtvsV0dlLambdabMCS2(0),
1017 fHistoEleLambdaPtvsV0dlXibMCS(0),
1018 fHistoEleLambdaPtvsV0dlXibMCS1(0),
1019 fHistoEleLambdaPtvsV0dlXibMCS2(0),
1020 fHistoEleLambdaPtvsV0dlRSAway(0),
1021 fHistoEleLambdaPtvsV0dlRS1Away(0),
1022 fHistoEleLambdaPtvsV0dlRS2Away(0),
1023 fHistoEleLambdaPtvsV0dlRSSideAway(0),
1024 fHistoEleLambdaPtvsV0dlRSSide1Away(0),
1025 fHistoEleLambdaPtvsV0dlRSSide2Away(0),
1026 fHistoEleLambdaPtvsV0dlRSMixAway(0),
1027 fHistoEleLambdaPtvsV0dlRSMix1Away(0),
1028 fHistoEleLambdaPtvsV0dlRSMix2Away(0),
1029 fHistoEleLambdaPtvsV0dlWSAway(0),
1030 fHistoEleLambdaPtvsV0dlWS1Away(0),
1031 fHistoEleLambdaPtvsV0dlWS2Away(0),
1032 fHistoEleLambdaPtvsV0dlWSSideAway(0),
1033 fHistoEleLambdaPtvsV0dlWSSide1Away(0),
1034 fHistoEleLambdaPtvsV0dlWSSide2Away(0),
1035 fHistoEleLambdaPtvsV0dlWSMixAway(0),
1036 fHistoEleLambdaPtvsV0dlWSMix1Away(0),
1037 fHistoEleLambdaPtvsV0dlWSMix2Away(0),
1038 fHistoCorrelationVariablesvsEleLambdaPt(0),
1039 fHistoCorrelationVariablesvsEleLambdaPtMix(0),
1040 fHistoCorrelationVariablesvsEleLambdaPtMC(0),
1041 fHistoCorrelationVariablesvsElePt(0),
1042 fHistoCorrelationVariablesvsElePtMix(0),
1043 fHistoCorrelationVariablesvsElePtMC(0),
1044 fHistoCorrelationVariablesvsLambdaPt(0),
1045 fHistoCorrelationVariablesvsLambdaPtMix(0),
1046 fHistoCorrelationVariablesvsLambdaPtMC(0),
1047 fHistoMassVariablesvsEleLambdaPt(0),
1048 fHistoMassVariablesvsEleLambdaPtMix(0),
1049 fHistoMassVariablesvsEleLambdaPtMC(0),
1050 fHistoMassVariablesvsElePt(0),
1051 fHistoMassVariablesvsElePtMix(0),
1052 fHistoMassVariablesvsElePtMC(0),
1053 fHistoMassVariablesvsLambdaPt(0),
1054 fHistoMassVariablesvsLambdaPtMix(0),
1055 fHistoMassVariablesvsLambdaPtMC(0),
1056 fHistoResponseElePt(0),
1057 fHistoResponseElePt1(0),
1058 fHistoResponseElePt2(0),
1059 fHistoResponseEleLambdaPt(0),
1060 fHistoResponseEleLambdaPt1(0),
1061 fHistoResponseEleLambdaPt2(0),
1062 fHistoResponseEleLambdaPtFeeddownXic0(0),
1063 fHistoResponseEleLambdaPtFeeddownXic01(0),
1064 fHistoResponseEleLambdaPtFeeddownXic02(0),
1065 fHistoResponseEleLambdaPtFeeddownXicPlus(0),
1066 fHistoResponseEleLambdaPtFeeddownXicPlus1(0),
1067 fHistoResponseEleLambdaPtFeeddownXicPlus2(0),
1068 fHistoResponseEleLambdaPtFeeddownSigma(0),
1069 fHistoResponseEleLambdaPtFeeddownSigma1(0),
1070 fHistoResponseEleLambdaPtFeeddownSigma2(0),
1071 fHistoResponseEleLambdaPtLambdab(0),
1072 fHistoResponseElePtLambdab(0),
1073 fHistoResponseLambdaPtLambdab(0),
1074 fHistoResponseLambdaPt(0),
1075 fHistoResponseLambdaPtFeeddownXic0(0),
1076 fHistoResponseLambdaPtFeeddownXicPlus(0),
1077 fHistoResponseLambdaPtFeeddownSigma(0),
1078 fHistoResponseLambdaPtvsEleLambdaPt(0),
1079 fHistoResponseLambdaPtvsEleLambdaPtLambdab(0),
1080 fHistoResponseMcGenLambdabPtvsLambdacPt(0),
1081 fHistoLcPtvseleLambdaPtvsElePtvsLambdaPt(0),
1082 fHistoEleLambdaPtvsRapidityRS(0),
1083 fHistoEleLambdaPtvsRapidityWS(0),
1084 fHistoEleLambdaPtvsRapidityMCS(0),
1086 fHistoElectronPi0Total(0),
1087 fHistoElectronPi0Tag(0),
1089 fHistoElectronEtaTotal(0),
1090 fHistoElectronEtaTag(0),
1094 fHistonEvtvsRunNumber(0),
1095 fHistonElevsRunNumber(0),
1096 fHistonLambdavsRunNumber(0),
1097 fHistoMCEventType(0),
1098 fHistoMCDeltaPhiccbar(0),
1100 fGTI(0),fGTIndex(0), fTrackBuffSize(19000),
1101 fHistodPhiSdEtaSElectronProtonR125RS(0),
1102 fHistodPhiSdEtaSElectronProtonR125WS(0),
1103 fHistodPhiSdEtaSElectronProtonR125RSMix(0),
1104 fHistodPhiSdEtaSElectronProtonR125WSMix(0),
1105 fHistodPhiSdEtaSElectronPionR125RS(0),
1106 fHistodPhiSdEtaSElectronPionR125WS(0),
1107 fHistodPhiSdEtaSElectronPionR125RSMix(0),
1108 fHistodPhiSdEtaSElectronPionR125WSMix(0),
1110 fMixWithoutConversionFlag(kFALSE),
1111 fNumberOfEventsForMixing (5),
1117 fHistoPoolMonitor(0),
1118 fHistoPoolIDCounter(0),
1125 m_ReservoirVarsL1(),
1131 Info(
"AliAnalysisTaskSELc2eleLambdafromAODtracks",
"Calling Constructor");
1133 for(
Int_t i=0;i<17;i++){
1138 for(
Int_t i=0;i<8;i++){
1144 DefineOutput(1,TList::Class());
1145 DefineOutput(2,TList::Class());
1146 DefineOutput(3,TList::Class());
1147 DefineOutput(4,TTree::Class());
1148 DefineOutput(5,TTree::Class());
1149 DefineOutput(6,TTree::Class());
1150 DefineOutput(7,TTree::Class());
1151 DefineOutput(8,AliNormalizationCounter::Class());
1152 DefineOutput(9,TTree::Class());
1153 DefineOutput(10,TTree::Class());
1154 DefineOutput(11,TTree::Class());
1155 DefineOutput(12,TTree::Class());
1163 Info(
"~AliAnalysisTaskSELc2eleLambdafromAODtracks",
"Calling Destructor");
1273 if (fDebug > 1) AliInfo(
"Init");
1292 AliError(
"NO EVENT FOUND!");
1304 AliKFParticle::SetField(
fBzkG);
1305 if (TMath::Abs(
fBzkG)<0.001) {
1314 AliAODTracklets* tracklets=aodEvent->GetTracklets();
1315 Int_t nTr=tracklets->GetNumberOfTracklets();
1316 for(
Int_t iTr=0; iTr<nTr; iTr++){
1317 Double_t theta=tracklets->GetTheta(iTr);
1318 Double_t eta=-TMath::Log(TMath::Tan(theta/2.));
1319 if(eta>-1.0 && eta<1.0) countTr++;
1321 AliAODVertex *vtx1 = (AliAODVertex*)aodEvent->GetPrimaryVertex();
1324 if(vtx1->GetNContributors()>0){
1348 TClonesArray *mcArray = 0;
1349 AliAODMCHeader *mcHeader=0;
1352 mcArray =
dynamic_cast<TClonesArray*
>(aodEvent->FindListObject(AliAODMCParticle::StdBranchName()));
1354 AliError(
"Could not find Monte-Carlo in AOD");
1360 mcHeader = (AliAODMCHeader*)aodEvent->GetList()->FindObject(AliAODMCHeader::StdBranchName());
1362 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: MC header branch not found!\n");
1367 Double_t zMCVertex = mcHeader->GetVtxZ();
1369 AliDebug(2,Form(
"Event rejected: abs(zVtxMC)=%f > fAnalCuts->GetMaxVtxZ()=%f",zMCVertex,
fAnalCuts->
GetMaxVtxZ()));
1383 fVtx1 = (AliAODVertex*)aodEvent->GetPrimaryVertex();
1388 fVtx1->GetCovarianceMatrix(cov);
1389 fV1 =
new AliESDVertex(pos,cov,100.,100,
fVtx1->GetName());
1393 if(!fIsTriggerNotOK)
fCEvents->Fill(3);
1403 fIsMB=(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected()&AliVEvent::kMB)==(AliVEvent::kMB);
1404 fIsSemi=(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected()&AliVEvent::kSemiCentral)==(AliVEvent::kSemiCentral);
1405 fIsCent=(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected()&AliVEvent::kCentral)==(AliVEvent::kCentral);
1406 fIsINT7=(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected()&AliVEvent::kINT7)==(AliVEvent::kINT7);
1407 fIsEMC7=(((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected()&AliVEvent::kEMC7)==(AliVEvent::kEMC7);
1423 if(countCorr>=0 && countCorr<=0)
fCentrality = 5.;
1424 else if(countCorr>=1 && countCorr<=8)
fCentrality = 15.;
1425 else if(countCorr>= 9 && countCorr<=13)
fCentrality = 25.;
1426 else if(countCorr>=14 && countCorr<=19)
fCentrality = 35.;
1427 else if(countCorr>=20 && countCorr<=30)
fCentrality = 45.;
1428 else if(countCorr>=31 && countCorr<=49)
fCentrality = 55.;
1433 if(fCentrality<0.||fCentrality>100.-0.0000001) {
1443 AliEventplane *pl=aodEvent->GetEventplane();
1445 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec:no eventplane! v2 analysis without eventplane not possible!\n");
1464 fQ = pl->GetQVector();
1466 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: no Q vectors");
1473 AliQnCorrectionsManager *flowQnVectorMgr;
1474 AliAnalysisTaskFlowVectorCorrections *flowQnVectorTask =
1475 dynamic_cast<AliAnalysisTaskFlowVectorCorrections *
>(AliAnalysisManager::GetAnalysisManager()->GetTask(
"FlowQnVectorCorrections"));
1476 if (flowQnVectorTask != NULL) {
1477 flowQnVectorMgr = flowQnVectorTask->GetAliQnCorrectionsManager();
1480 AliFatal(
"This task needs the Flow Qn vector corrections framework and it is not present. Aborting!!!");
1484 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: No such event plane method");
1487 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: No such event plane method");
1490 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: No such event plane method");
1493 const AliQnCorrectionsQnVector *myQnVector;
1494 myQnVector = flowQnVectorMgr->GetDetectorQnVector(
"TPC");
1496 AliError(
"AliAnalysisTaskSELc2eleLambdafromAODtracks::UserExec: no Q vectors");
1500 Double_t ep_tpc = myQnVector->EventPlane(2);
1509 Int_t runnumber_offset = 0;
1510 Int_t runnumber = aodEvent->GetRunNumber();
1511 if(runnumber<=131000&&runnumber>=114000){
1512 runnumber_offset = 114000;
1513 }
else if(runnumber<=196000&&runnumber>=195000){
1514 runnumber_offset = 195000;
1515 }
else if(runnumber<=170593&&runnumber>=167902){
1516 runnumber_offset = 167902;
1517 }
else if(runnumber<=246994&&runnumber>=244824){
1518 runnumber_offset = 244824;
1563 AliAnalysisTaskSE::Terminate();
1568 AliError(
"fOutput not available");
1574 AliError(
"fOutputAll not available");
1631 TString normName=
"NormalizationCounter";
1632 AliAnalysisDataContainer *cont = GetOutputSlot(8)->GetContainer();
1633 if(cont)normName=(
TString)cont->GetName();
1680 fPoolIndex=GetPoolIndex(fVtxZ,fCentrality,fEventPlane);
1681 fHistoPoolIDCounter->Fill(fPoolIndex);
1682 if(fPoolIndex<0)
return;
1684 Int_t nextRes( nextResVec[fPoolIndex] );
1685 while(!m_ReservoirE[fPoolIndex][nextRes].empty()){
1686 delete m_ReservoirE[fPoolIndex][nextRes].back();
1687 m_ReservoirE[fPoolIndex][nextRes].pop_back();
1689 while(!m_ReservoirL1[fPoolIndex][nextRes].empty()){
1690 delete m_ReservoirL1[fPoolIndex][nextRes].back();
1691 m_ReservoirL1[fPoolIndex][nextRes].pop_back();
1693 while(!m_ReservoirL2[fPoolIndex][nextRes].empty()){
1694 delete m_ReservoirL2[fPoolIndex][nextRes].back();
1695 m_ReservoirL2[fPoolIndex][nextRes].pop_back();
1697 while(!m_ReservoirVarsE[fPoolIndex][nextRes].empty()){
1698 delete m_ReservoirVarsE[fPoolIndex][nextRes].back();
1699 m_ReservoirVarsE[fPoolIndex][nextRes].pop_back();
1701 while(!m_ReservoirVarsL1[fPoolIndex][nextRes].empty()){
1702 delete m_ReservoirVarsL1[fPoolIndex][nextRes].back();
1703 m_ReservoirVarsL1[fPoolIndex][nextRes].pop_back();
1705 while(!m_ReservoirVarsL2[fPoolIndex][nextRes].empty()){
1706 delete m_ReservoirVarsL2[fPoolIndex][nextRes].back();
1707 m_ReservoirVarsL2[fPoolIndex][nextRes].pop_back();
1712 if(fAnalCuts->GetProdAODFilterBit()==7){
1713 ResetGlobalTrackReference();
1715 for (
Int_t iTrack=0;iTrack<aodEvent->GetNumberOfTracks();iTrack++){
1717 AliAODTrack *track =
dynamic_cast<AliAODTrack *
>(aodEvent->GetTrack(iTrack));
1718 if (!track)
continue;
1721 StoreGlobalTrackReference(track,iTrack);
1729 Int_t nV0s= aodEvent->GetNumberOfV0s();
1730 Int_t nTracks= aodEvent->GetNumberOfTracks();
1732 Bool_t seleTrkFlags[nTracks];
1734 SelectTrack(aodEvent,nTracks,nSeleTrks,seleTrkFlags,mcArray);
1736 Bool_t seleV0Flags[nV0s];
1738 SelectV0(aodEvent,nV0s,nSeleV0,seleV0Flags,mcArray);
1740 Int_t runnumber_offset = 0;
1741 Int_t runnumber = aodEvent->GetRunNumber();
1742 if(runnumber<=131000&&runnumber>=114000){
1743 runnumber_offset = 114000;
1744 }
else if(runnumber<=196000&&runnumber>=195000){
1745 runnumber_offset = 195000;
1746 }
else if(runnumber<=170593&&runnumber>=167902){
1747 runnumber_offset = 167902;
1748 }
else if(runnumber<=246994&&runnumber>=244824){
1749 runnumber_offset = 244824;
1751 fHistonElevsRunNumber->Fill(runnumber-runnumber_offset,nSeleTrks);
1752 fHistonLambdavsRunNumber->Fill(runnumber-runnumber_offset,nSeleV0);
1754 if(nSeleTrks==0 || nSeleV0 ==0)
return;
1759 for (
Int_t itrk = 0; itrk<nTracks; itrk++) {
1760 if(!seleTrkFlags[itrk])
continue;
1761 AliAODTrack *trk = (AliAODTrack*)aodEvent->GetTrack(itrk);
1763 FillElectronROOTObjects(trk,aodEvent,mcArray);
1766 for (
Int_t iv0 = 0; iv0<nV0s; iv0++) {
1767 if(!seleV0Flags[iv0])
continue;
1768 AliAODv0 *v0 = aodEvent->GetV0(iv0);
1771 FillV0ROOTObjects(v0, aodEvent, mcArray);
1774 if(fWriteEachVariableTree)
1780 for (
Int_t iv0 = 0; iv0<nV0s; iv0++) {
1781 if(!seleV0Flags[iv0])
continue;
1782 AliAODv0 *v0 = aodEvent->GetV0(iv0);
1785 AliAODTrack *cptrack = (AliAODTrack*)(v0->GetDaughter(0));
1786 AliAODTrack *cntrack = (AliAODTrack*)(v0->GetDaughter(1));
1791 for (
Int_t itrk = 0; itrk<nTracks; itrk++) {
1792 if(!seleTrkFlags[itrk])
continue;
1793 AliAODTrack *trk = (AliAODTrack*)aodEvent->GetTrack(itrk);
1801 AliAODTrack *trkpid = 0;
1802 if(fAnalCuts->GetProdAODFilterBit()==7){
1803 trkpid = fGTI[-trk->GetID()-1];
1808 Int_t cpid = cptrack->GetID();
1809 Int_t cnid = cntrack->GetID();
1810 Int_t lpid = trkpid->GetID();
1811 if((cpid==lpid)||(cnid==lpid))
continue;
1813 AliAODVertex *secVert = ReconstructSecondaryVertex(v0,trk,aodEvent);
1814 if(!secVert)
continue;
1821 FillROOTObjects(elobj,v0,trk,trkpid,aodEvent,mcArray);
1823 elobj->GetSecondaryVtx()->RemoveDaughters();
1825 delete elobj;elobj=NULL;
1831 DoEventMixingWithPools(fPoolIndex);
1833 Int_t nextRes( nextResVec[fPoolIndex] );
1835 if( nextRes>=fNumberOfEventsForMixing ){
1837 reservoirsReady[fPoolIndex] = kTRUE;
1839 nextResVec[fPoolIndex] = nextRes;
1849 const char* nameoutput = GetOutputSlot(4)->GetContainer()->GetName();
1855 fCandidateVariableNames[ 0]=
"Centrality";
1856 fCandidateVariableNames[ 1]=
"InvMassEleLambda";
1857 fCandidateVariableNames[ 2]=
"EleLambdaPt";
1858 fCandidateVariableNames[ 3]=
"EleLambdaPx";
1859 fCandidateVariableNames[ 4]=
"EleLambdaPy";
1860 fCandidateVariableNames[ 5]=
"EleLambdaPz";
1861 fCandidateVariableNames[ 6]=
"ElePx";
1862 fCandidateVariableNames[ 7]=
"ElePy";
1863 fCandidateVariableNames[ 8]=
"ElePz";
1864 fCandidateVariableNames[ 9]=
"V0Px";
1865 fCandidateVariableNames[10]=
"V0Py";
1866 fCandidateVariableNames[11]=
"V0Pz";
1867 fCandidateVariableNames[12]=
"AntiLambdaFlag";
1868 fCandidateVariableNames[13]=
"MassLambda";
1869 fCandidateVariableNames[14]=
"MassAntiLambda";
1870 fCandidateVariableNames[15]=
"Eled0";
1871 fCandidateVariableNames[16]=
"V0d0";
1872 fCandidateVariableNames[17]=
"nSigmaTPCele";
1873 fCandidateVariableNames[18]=
"nSigmaTOFele";
1874 fCandidateVariableNames[19]=
"nSigmaTPCv0pr";
1875 fCandidateVariableNames[20]=
"nSigmaTOFv0pr";
1876 fCandidateVariableNames[21]=
"EleCharge";
1877 fCandidateVariableNames[22]=
"ProtonPx";
1878 fCandidateVariableNames[23]=
"ProtonPy";
1879 fCandidateVariableNames[24]=
"ProtonPz";
1880 fCandidateVariableNames[25]=
"PiPx";
1881 fCandidateVariableNames[26]=
"PiPy";
1882 fCandidateVariableNames[27]=
"PiPz";
1883 fCandidateVariableNames[28]=
"mcpdglc";
1884 fCandidateVariableNames[29]=
"mclablc";
1885 fCandidateVariableNames[30]=
"mcpdgmomele";
1886 fCandidateVariableNames[31]=
"mcpdgmomv0";
1887 fCandidateVariableNames[32]=
"Mixing";
1888 fCandidateVariableNames[33]=
"mcpdgele";
1889 fCandidateVariableNames[34]=
"nSigmaTPCpr_etrk";
1890 fCandidateVariableNames[35]=
"nSigmaTOFpr_etrk";
1891 fCandidateVariableNames[36]=
"nSigmaTPCka_etrk";
1892 fCandidateVariableNames[37]=
"nSigmaTOFka_etrk";
1893 fCandidateVariableNames[38]=
"MassK0Short";
1894 fCandidateVariableNames[39]=
"mcpdggrmomele";
1895 fCandidateVariableNames[40]=
"mcpdggrmomv0";
1896 fCandidateVariableNames[41]=
"mcngenele";
1897 fCandidateVariableNames[42]=
"mcngenv0";
1898 fCandidateVariableNames[43]=
"mclcpx";
1899 fCandidateVariableNames[44]=
"mclcpy";
1900 fCandidateVariableNames[45]=
"mclcpz";
1901 fCandidateVariableNames[46]=
"mcelepx";
1902 fCandidateVariableNames[47]=
"mcelepy";
1903 fCandidateVariableNames[48]=
"mcelepz";
1904 fCandidateVariableNames[49]=
"mcv0px";
1905 fCandidateVariableNames[50]=
"mcv0py";
1906 fCandidateVariableNames[51]=
"mcv0pz";
1907 fCandidateVariableNames[52]=
"nSigmaTPCpi_etrk";
1908 fCandidateVariableNames[53]=
"nSigmaTOFpi_etrk";
1909 fCandidateVariableNames[54]=
"PrimVertx";
1910 fCandidateVariableNames[55]=
"PrimVerty";
1911 fCandidateVariableNames[56]=
"PrimVertz";
1912 fCandidateVariableNames[57]=
"V0Vertx";
1913 fCandidateVariableNames[58]=
"V0Verty";
1914 fCandidateVariableNames[59]=
"V0Vertz";
1916 fCandidateVariableNames[60]=
"DcaV0PrToPrimVertex";
1917 fCandidateVariableNames[61]=
"DcaV0PiToPrimVertex";
1918 fCandidateVariableNames[62]=
"DcaV0daughters";
1919 fCandidateVariableNames[63]=
"V0CosPointingAngle";
1920 fCandidateVariableNames[64]=
"V0ProperDecayLength";
1921 fCandidateVariableNames[65]=
"MassK0Short2";
1923 fCandidateVariableNames[66]=
"nSigmaTPCv0pi";
1924 fCandidateVariableNames[67]=
"nSigmaTOFv0pi";
1926 fCandidateVariableNames[68]=
"EleITSMatch";
1927 fCandidateVariableNames[69]=
"V0PosITSMatch";
1928 fCandidateVariableNames[70]=
"V0NegITSMatch";
1929 fCandidateVariableNames[71]=
"IsV0PeakRegion";
1930 fCandidateVariableNames[72]=
"mcpdgv0";
1932 fCandidateVariableNames[73]=
"mcv0pospx";
1933 fCandidateVariableNames[74]=
"mcv0pospy";
1934 fCandidateVariableNames[75]=
"mcv0pospz";
1935 fCandidateVariableNames[76]=
"mcpdgv0pos";
1936 fCandidateVariableNames[77]=
"mcv0negpx";
1937 fCandidateVariableNames[78]=
"mcv0negpy";
1938 fCandidateVariableNames[79]=
"mcv0negpz";
1939 fCandidateVariableNames[80]=
"mcpdgv0neg";
1941 fCandidateVariableNames[81]=
"ProtonPxPV";
1942 fCandidateVariableNames[82]=
"ProtonPyPV";
1943 fCandidateVariableNames[83]=
"ProtonPzPV";
1944 fCandidateVariableNames[84]=
"PiPxPV";
1945 fCandidateVariableNames[85]=
"PiPyPV";
1946 fCandidateVariableNames[86]=
"PiPzPV";
1948 fCandidateVariableNames[87]=
"mcv0vertx";
1949 fCandidateVariableNames[88]=
"mcv0verty";
1950 fCandidateVariableNames[89]=
"mcv0vertz";
1952 fCandidateVariableNames[90]=
"OnFlyStatus";
1953 fCandidateVariableNames[91]=
"MagneticField";
1954 fCandidateVariableNames[92]=
"EvNumber";
1955 fCandidateVariableNames[93]=
"RunNumber";
1975 for(
Int_t i=0;i<94;i++)
1980 Bool_t anti_lambda_flag = kFALSE;
1983 AliAODTrack *cptrack = (AliAODTrack*)(v0->GetDaughter(0));
1984 AliAODTrack *cntrack = (AliAODTrack*)(v0->GetDaughter(1));
1993 Double_t momv0 = sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz);
1994 Double_t Ev0 = sqrt(momv0*momv0+1.115683*1.115683);
1998 Double_t mome = sqrt(epx*epx+epy*epy+epz*epz);
1999 Double_t Ee = sqrt(mome*mome+0.000510998928*0.000510998928);
2000 Double_t cosoa = (v0px*epx+v0py*epy+v0pz*epz)/sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz)/sqrt(epx*epx+epy*epy+epz*epz);
2006 Double_t lf = -2.*(v0px*uxe+v0py*uye+v0pz*uze);
2007 Double_t pxv_flip = v0px + lf * uxe;
2008 Double_t pyv_flip = v0py + lf * uye;
2009 Double_t pzv_flip = v0pz + lf * uze;
2010 Double_t pxsum_flip = epx + pxv_flip;
2011 Double_t pysum_flip = epy + pyv_flip;
2012 Double_t pzsum_flip = epz + pzv_flip;
2013 Double_t melam_flip = sqrt(Esum*Esum-pxsum_flip*pxsum_flip-pysum_flip*pysum_flip-pzsum_flip*pzsum_flip);
2014 Double_t ptelam_flip = sqrt(pxsum_flip*pxsum_flip+pysum_flip*pysum_flip);
2022 UInt_t pdgdg[2]={11,3122};
2056 if(anti_lambda_flag){
2074 if(anti_lambda_flag){
2090 AliAODMCParticle *mclc = 0;
2091 AliAODMCParticle *mcele = 0;
2092 AliAODMCParticle *mcv0 = 0;
2094 Int_t mcpdgele_array[100];
2095 Int_t mcpdgv0_array[100];
2096 Int_t mclabelele_array[100];
2097 Int_t mclabelv0_array[100];
2098 Int_t mcngen_ele=-9999;
2099 Int_t mcngen_v0=-9999;
2102 mclablc =
MatchToMC(elobj,mcArray,mcpdgele_array, mcpdgv0_array,mclabelele_array,mclabelv0_array,mcngen_ele,mcngen_v0);
2103 if(mclabelele_array[0]>=0){
2104 mcele = (AliAODMCParticle*) mcArray->At(mclabelele_array[0]);
2111 if(mclabelv0_array[0]>=0){
2112 mcv0 = (AliAODMCParticle*) mcArray->At(mclabelv0_array[0]);
2120 Int_t pdgdgv0[2]={211,211};
2121 Int_t labV0 = v0->MatchToMC(310,mcArray,2,pdgdgv0);
2123 mcv0 = (AliAODMCParticle*) mcArray->At(labV0);
2133 Int_t labPos = cptrack->GetLabel();
2135 AliAODMCParticle *mcv0pos = (AliAODMCParticle*)mcArray->At(labPos);
2144 Int_t labNeg = cntrack->GetLabel();
2146 AliAODMCParticle *mcv0neg = (AliAODMCParticle*)mcArray->At(labNeg);
2154 mclc = (AliAODMCParticle*) mcArray->At(mclablc);
2197 Double_t lDcaPosToPrimVertex = v0->DcaPosToPrimVertex();
2198 Double_t lDcaNegToPrimVertex = v0->DcaNegToPrimVertex();
2199 if(!anti_lambda_flag){
2208 fVtx1->GetXYZ(posVtx);
2210 Double_t ptotlam = TMath::Sqrt(pow(v0->Px(),2)+pow(v0->Py(),2)+pow(v0->Pz(),2));
2220 if(!anti_lambda_flag){
2245 Double_t dphis_ele_pr, detas_ele_pr,dphis_ele_pi, detas_ele_pi;
2246 dphis_ele_pr = 9999.;detas_ele_pr = 9999.;dphis_ele_pi = 9999.;detas_ele_pi = 9999.;
2250 cont[0] = elobj->InvMass(2,pdgdg);
2251 cont[1] = elobj->Pt();
2256 cont_flip[0] = melam_flip;
2257 cont_flip[1] = ptelam_flip;
2261 cont2[0] = elobj->InvMass(2,pdgdg);
2262 cont2[1] = trk->Pt();
2265 cont_eleptvseta[0] = trk->Pt();
2266 cont_eleptvseta[1] = trk->Eta();
2270 cont_eleptvslambdapt[0] = trk->Pt();
2271 cont_eleptvslambdapt[1] = v0->Pt();
2275 cont_eleptvsd0[0] = trk->Pt();
2276 cont_eleptvsd0[1] = elobj->Getd0Prong(0)*trk->Charge();
2280 cont_eleptvsv0dl[0] = trk->Pt();
2281 cont_eleptvsv0dl[1] = v0->DecayLengthV0(posVtx)*1.115683/ptotlam;
2285 cont_elelamptvsv0dl[0] = elobj->Pt();
2286 cont_elelamptvsv0dl[1] = v0->
DecayLengthV0(posVtx)*1.115683/ptotlam;
2287 cont_elelamptvsv0dl[2] = elobj->Getd0Prong(0)*trk->Charge();
2290 Double_t cont_elelamptvsv0dl_flip[4];
2291 cont_elelamptvsv0dl_flip[0] = ptelam_flip;
2292 cont_elelamptvsv0dl_flip[1] = v0->DecayLengthV0(posVtx)*1.115683/ptotlam;
2293 cont_elelamptvsv0dl_flip[2] = 0.0;
2298 cont_eleptvsv0dca[0] = trk->Pt();
2299 cont_eleptvsv0dca[1] = v0->DcaV0ToPrimVertex();
2302 Double_t elobj_mass = elobj->InvMass(2,pdgdg);
2306 Double_t elobj_E = sqrt(elobj_mass*elobj_mass+elobj_px*elobj_px+elobj_py*elobj_py+elobj_pz*elobj_pz);
2307 Double_t elobj_rap = 0.5*log((elobj_E+elobj_pz)/(elobj_E-elobj_pz));
2314 if((trk->Charge()>0 && !anti_lambda_flag) || (trk->Charge()<0 && anti_lambda_flag)){
2341 for(
Int_t ih=0;ih<17;ih++){
2343 cont_eleptvscutvars[0] = elobj->Pt();
2347 cont_eleptvscutvars[1] = trk->GetTPCNcls();
2349 cont_eleptvscutvars[1] = trk->GetTPCsignalN();
2351 cont_eleptvscutvars[1] = nSigmaTPCele;
2353 cont_eleptvscutvars[1] = nSigmaTOFele;
2355 cont_eleptvscutvars[1] = trk->Eta();
2357 cont_eleptvscutvars[1] = trk->GetITSNcls();
2359 if(!anti_lambda_flag)
2360 cont_eleptvscutvars[1] = v0->MassLambda();
2362 cont_eleptvscutvars[1] = v0->MassAntiLambda();
2365 lPosV0[0] = v0->DecayVertexV0X();
2366 lPosV0[1] = v0->DecayVertexV0Y();
2367 lPosV0[2] = v0->DecayVertexV0Z();
2368 cont_eleptvscutvars[1] = TMath::Sqrt(lPosV0[0]*lPosV0[0]+lPosV0[1]*lPosV0[1]);
2370 cont_eleptvscutvars[1] = v0->DcaV0Daughters();
2372 if(!anti_lambda_flag)
2373 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2375 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2377 if(!anti_lambda_flag)
2378 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2380 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2382 cont_eleptvscutvars[1] = v0->CosPointingAngle(posVtx);
2384 cont_eleptvscutvars[1] = v0->MassK0Short();
2386 cont_eleptvscutvars[1] = nSigmaTPCv0pr;
2388 cont_eleptvscutvars[1] = nSigmaTPCv0pi;
2390 cont_eleptvscutvars[1] = v0->Eta();
2398 cont_eleptvscutvars[1] = acos((v0px*epx+v0py*epy+v0pz*epz)/sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz)/sqrt(epx*epx+epy*epy+epz*epz));
2400 cont_eleptvscutvars[1] = -9999.;
2408 Int_t pdgcode = mclc->GetPdgCode();
2410 cont_mclc[0] = mclc->Pt();
2411 cont_mclc[1] = mclc->Y();
2414 cont_mcele[0] = mcele->Pt();
2415 cont_mcele[1] = mcele->Eta();
2418 Int_t labmotherlc = mclc->GetMother();
2419 Bool_t isbottomfd = kFALSE;
2421 AliAODMCParticle *motherlc = (AliAODMCParticle*)mcArray->At(labmotherlc);
2422 Int_t pdgmotherlc = motherlc->GetPdgCode();
2423 if(TMath::Abs(pdgmotherlc)==511||TMath::Abs(pdgmotherlc)==521||TMath::Abs(pdgmotherlc)==5122||TMath::Abs(pdgmotherlc)==5132||TMath::Abs(pdgmotherlc)==5232||TMath::Abs(pdgmotherlc)==5332){
2427 cont2[1] = mcele->Pt();
2429 if(abs(pdgcode)==4122 && abs(mcpdgele_array[1])==4122 && abs(mcpdgv0_array[1])==4122){
2481 Double_t cont_eleptvslambdaptvslcpt[4];
2482 cont_eleptvslambdaptvslcpt[0] = cont_eleptvslambdapt[0];
2483 cont_eleptvslambdaptvslcpt[1] = cont_eleptvslambdapt[1];
2484 cont_eleptvslambdaptvslcpt[2] = mclc->Pt();
2485 cont_eleptvslambdaptvslcpt[3] = cont_eleptvslambdapt[2];
2489 cont_allpt[0] = mclc->Pt();
2490 cont_allpt[1] = elobj->Pt();
2491 cont_allpt[2] = trk->Pt();
2492 cont_allpt[3] = v0->Pt();
2501 for(
Int_t ih=0;ih<17;ih++){
2503 cont_eleptvscutvars[0] = elobj->Pt();
2507 cont_eleptvscutvars[1] = trk->GetTPCNcls();
2509 cont_eleptvscutvars[1] = trk->GetTPCsignalN();
2511 cont_eleptvscutvars[1] = nSigmaTPCele;
2513 cont_eleptvscutvars[1] = nSigmaTOFele;
2515 cont_eleptvscutvars[1] = trk->Eta();
2517 cont_eleptvscutvars[1] = trk->GetITSNcls();
2519 if(!anti_lambda_flag)
2520 cont_eleptvscutvars[1] = v0->MassLambda();
2522 cont_eleptvscutvars[1] = v0->MassAntiLambda();
2525 lPosV0[0] = v0->DecayVertexV0X();
2526 lPosV0[1] = v0->DecayVertexV0Y();
2527 lPosV0[2] = v0->DecayVertexV0Z();
2528 cont_eleptvscutvars[1] = TMath::Sqrt(lPosV0[0]*lPosV0[0]+lPosV0[1]*lPosV0[1]);
2530 cont_eleptvscutvars[1] = v0->DcaV0Daughters();
2532 if(!anti_lambda_flag)
2533 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2535 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2537 if(!anti_lambda_flag)
2538 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2540 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2542 cont_eleptvscutvars[1] = v0->CosPointingAngle(posVtx);
2544 cont_eleptvscutvars[1] = v0->MassK0Short();
2546 cont_eleptvscutvars[1] = nSigmaTPCv0pr;
2548 cont_eleptvscutvars[1] = nSigmaTPCv0pi;
2550 cont_eleptvscutvars[1] = v0->Eta();
2558 cont_eleptvscutvars[1] = acos((v0px*epx+v0py*epy+v0pz*epz)/sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz)/sqrt(epx*epx+epy*epy+epz*epz));
2560 cont_eleptvscutvars[1] = -9999.;
2567 if(abs(pdgcode)==4132 && abs(mcpdgele_array[1])==4132 && abs(mcpdgv0_array[1])==3312){
2614 if(abs(pdgcode)==4232 && abs(mcpdgele_array[1])==4232 && abs(mcpdgv0_array[1])==3322){
2661 if(abs(pdgcode)==4122 && abs(mcpdgele_array[1])==4122 && ( abs(mcpdgv0_array[1])==3212 || abs(mcpdgv0_array[1])==3214 || abs(mcpdgv0_array[1])==3224) ){
2691 }
else if((trk->Charge()<0 && !anti_lambda_flag) || (trk->Charge()>0 && anti_lambda_flag)){
2718 for(
Int_t ih=0;ih<17;ih++){
2720 cont_eleptvscutvars[0] = elobj->Pt();
2724 cont_eleptvscutvars[1] = trk->GetTPCNcls();
2726 cont_eleptvscutvars[1] = trk->GetTPCsignalN();
2728 cont_eleptvscutvars[1] = nSigmaTPCele;
2730 cont_eleptvscutvars[1] = nSigmaTOFele;
2732 cont_eleptvscutvars[1] = trk->Eta();
2734 cont_eleptvscutvars[1] = trk->GetITSNcls();
2736 if(!anti_lambda_flag)
2737 cont_eleptvscutvars[1] = v0->MassLambda();
2739 cont_eleptvscutvars[1] = v0->MassAntiLambda();
2742 lPosV0[0] = v0->DecayVertexV0X();
2743 lPosV0[1] = v0->DecayVertexV0Y();
2744 lPosV0[2] = v0->DecayVertexV0Z();
2745 cont_eleptvscutvars[1] = TMath::Sqrt(lPosV0[0]*lPosV0[0]+lPosV0[1]*lPosV0[1]);
2747 cont_eleptvscutvars[1] = v0->DcaV0Daughters();
2749 if(!anti_lambda_flag)
2750 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2752 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2754 if(!anti_lambda_flag)
2755 cont_eleptvscutvars[1] = v0->DcaNegToPrimVertex();
2757 cont_eleptvscutvars[1] = v0->DcaPosToPrimVertex();
2759 cont_eleptvscutvars[1] = v0->CosPointingAngle(posVtx);
2761 cont_eleptvscutvars[1] = v0->MassK0Short();
2763 cont_eleptvscutvars[1] = nSigmaTPCv0pr;
2765 cont_eleptvscutvars[1] = nSigmaTPCv0pi;
2767 cont_eleptvscutvars[1] = v0->Eta();
2775 cont_eleptvscutvars[1] = acos((v0px*epx+v0py*epy+v0pz*epz)/sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz)/sqrt(epx*epx+epy*epy+epz*epz));
2777 cont_eleptvscutvars[1] = -9999.;
2785 Int_t pdgcode = mclc->GetPdgCode();
2787 cont_mclb[0] = mclc->Pt();
2788 cont_mclb[1] = mclc->Y();
2791 cont_mcele[0] = mcele->Pt();
2792 cont_mcele[1] = mcele->Eta();
2795 if(abs(pdgcode)==5122 && abs(mcpdgele_array[1])==5122 && abs(mcpdgv0_array[1])==4122 && abs(mcpdgv0_array[2])==5122){
2816 if(abs(pdgcode)==5132 && abs(mcpdgele_array[1])==5132 && abs(mcpdgv0_array[1])==4132 && abs(mcpdgv0_array[2])==5132){
2828 if(abs(pdgcode)==5132 && abs(mcpdgele_array[1])==5132 && abs(mcpdgv0_array[1])==4232 && abs(mcpdgv0_array[2])==5132){
2840 if(abs(pdgcode)==5232 && abs(mcpdgele_array[1])==5232 && abs(mcpdgv0_array[1])==4132 && abs(mcpdgv0_array[2])==5232){
2852 if(abs(pdgcode)==5232 && abs(mcpdgele_array[1])==5232 && abs(mcpdgv0_array[1])==4232 && abs(mcpdgv0_array[2])==5232){
2872 if( melam_flip < 10. && cosoa < 0. && fAnalCuts->IsPeakRegion(v0))
2874 if((trk->Charge()>0 && !anti_lambda_flag) || (trk->Charge()<0 && anti_lambda_flag)){
2897 if((trk->Charge()>0 && !anti_lambda_flag) || (trk->Charge()<0 && anti_lambda_flag)){
2918 }
else if((trk->Charge()<0 && !anti_lambda_flag) || (trk->Charge()>0 && anti_lambda_flag)){
2942 if( melam_flip < 10. && cosoa < 0. && fAnalCuts->IsSideBand(v0))
2944 if((trk->Charge()>0 && !anti_lambda_flag) || (trk->Charge()<0 && anti_lambda_flag)){
2968 for(
Int_t iv=0;iv<15;iv++){
2973 for(
Int_t iv=0;iv<7;iv++){
2974 cont_cor_nd[iv] = -9999.;
2977 for(
Int_t iv=0;iv<8;iv++){
2978 cont_mass_nd[iv] = -9999.;
2989 if(trk->Charge()>0){
2992 }
else if(trk->Charge()<0){
3002 cont_cor_nd[0] = elobj->Pt();
3004 cont_cor_nd[2] = v0->DecayLengthV0(posVtx)*1.115683/ptotlam;;
3005 if(trk->Charge()>0){
3006 if(!anti_lambda_flag) cont_cor_nd[3] = 0;
3007 else cont_cor_nd[3] = 2;
3008 }
else if(trk->Charge()<0){
3009 if(!anti_lambda_flag) cont_cor_nd[3] = 3;
3010 else cont_cor_nd[3] = 1;
3018 Int_t pdgcode = mclc->GetPdgCode();
3019 if(abs(pdgcode)==4122 && abs(mcpdgele_array[1])==4122 && abs(mcpdgv0_array[1])==4122){
3023 if(abs(pdgcode)==4122 && abs(mcpdgele_array[1])==4122 && ( abs(mcpdgv0_array[1])==3212 || abs(mcpdgv0_array[1])==3214 || abs(mcpdgv0_array[1])==3224) ){
3027 if(abs(pdgcode)==4132 && abs(mcpdgele_array[1])==4132 && abs(mcpdgv0_array[1])==3312){
3031 if(abs(pdgcode)==4232 && abs(mcpdgele_array[1])==4232 && abs(mcpdgv0_array[1])==3322){
3035 if(abs(pdgcode)==5122 && abs(mcpdgele_array[1])==5122 && abs(mcpdgv0_array[1])==4122 && abs(mcpdgv0_array[2])==5122){
3039 if(abs(pdgcode)==5132 && abs(mcpdgele_array[1])==5132 && abs(mcpdgv0_array[1])==4132 && abs(mcpdgv0_array[2])==5132){
3043 if(abs(pdgcode)==5132 && abs(mcpdgele_array[1])==5132 && abs(mcpdgv0_array[1])==4232 && abs(mcpdgv0_array[2])==5132){
3047 if(abs(pdgcode)==5232 && abs(mcpdgele_array[1])==5232 && abs(mcpdgv0_array[1])==4132 && abs(mcpdgv0_array[2])==5232){
3051 if(abs(pdgcode)==5232 && abs(mcpdgele_array[1])==5232 && abs(mcpdgv0_array[1])==4232 && abs(mcpdgv0_array[2])==5232){
3100 cont_cor_nd[0] = trk->Pt();
3102 cont_cor_nd[0] = v0->Pt();
3107 cont_cor_nd[0] = trk->Pt();
3109 cont_cor_nd[0] = v0->Pt();
3114 cont_mass_nd[0] = elobj->InvMass(2,pdgdg);
3115 cont_mass_nd[1] = cont_cor_nd[0];
3116 cont_mass_nd[4] = cont_cor_nd[3];
3117 cont_mass_nd[5] = cont_cor_nd[4];
3118 cont_mass_nd[6] = cont_cor_nd[5];
3119 cont_mass_nd[7] = cont_cor_nd[6];
3124 if(melam_flip < 10.&& cosoa < 0.) cont_mass_nd[2]=0;
3127 cont_mass_nd[1] = trk->Pt();
3129 cont_mass_nd[1] = v0->Pt();
3133 cont_mass_nd[1] = trk->Pt();
3135 cont_mass_nd[1] = v0->Pt();
3151 for(
Int_t i=0;i<94;i++)
3160 Double_t mome = sqrt(pxe*pxe+pye*pye+pze*pze);
3161 Double_t Ee = sqrt(mome*mome+0.000510998928*0.000510998928);
3166 Double_t momv = sqrt(pxv*pxv+pyv*pyv+pzv*pzv);
3167 Double_t Ev = sqrt(momv*momv+1.115683*1.115683);
3169 Double_t cosoa = (pxe*pxv+pye*pyv+pze*pzv)/mome/momv;
3175 Double_t mel = sqrt(Esum*Esum-pxsum*pxsum-pysum*pysum-pzsum*pzsum);
3180 Double_t lf = -2.*(pxv*uxe+pyv*uye+pzv*uze);
3181 Double_t pxv_flip = pxv + lf * uxe;
3182 Double_t pyv_flip = pyv + lf * uye;
3183 Double_t pzv_flip = pzv + lf * uze;
3184 Double_t pxsum_flip = pxe + pxv_flip;
3185 Double_t pysum_flip = pye + pyv_flip;
3186 Double_t pzsum_flip = pze + pzv_flip;
3187 Double_t mel_flip = sqrt(Esum*Esum-pxsum_flip*pxsum_flip-pysum_flip*pysum_flip-pzsum_flip*pzsum_flip);
3188 Double_t ptel_flip = sqrt(pxsum_flip*pxsum_flip+pysum_flip*pysum_flip);
3191 UInt_t pdgdg[2]={11,3122};
3244 cont[1] = sqrt(pxsum*pxsum+pysum*pysum);
3249 cont_flip[0] = mel_flip;
3250 cont_flip[1] = ptel_flip;
3255 cont2[1] = sqrt(pxe*pxe+pye*pye);
3258 cont_eleptvseta[0] = trke->Pt();
3259 cont_eleptvseta[1] = trke->Eta();
3263 cont_eleptvslambdapt[0] = trke->Pt();
3264 cont_eleptvslambdapt[1] = v0->Pt();
3268 cont_eleptvsd0[0] = trke->Pt();
3269 cont_eleptvsd0[1] = 0.;
3273 cont_eleptvsv0dl[0] = trke->Pt();
3274 cont_eleptvsv0dl[1] = (*v0vars)[15];
3278 cont_eleptvsv0dca[0] = trke->Pt();
3279 cont_eleptvsv0dca[1] = (*v0vars)[16];
3283 cont_elelamptvsv0dl[0] = sqrt(pxsum*pxsum+pysum*pysum);
3284 cont_elelamptvsv0dl[1] = (*v0vars)[15];
3285 cont_elelamptvsv0dl[2] = 0.0;
3288 Double_t cont_elelamptvsv0dl_flip[4];
3289 cont_elelamptvsv0dl_flip[0] = ptel_flip;
3290 cont_elelamptvsv0dl_flip[1] = (*v0vars)[15];
3291 cont_elelamptvsv0dl_flip[2] = 0.0;
3294 Double_t xyzR125_ele[3], xyzR125_pr[3], xyzR125_pi[3];
3295 xyzR125_ele[0] = (*elevars)[0];
3296 xyzR125_ele[1] = (*elevars)[1];
3297 xyzR125_ele[2] = (*elevars)[2];
3298 xyzR125_pr[0] = (*v0vars)[0];
3299 xyzR125_pr[1] = (*v0vars)[1];
3300 xyzR125_pr[2] = (*v0vars)[2];
3301 xyzR125_pi[0] = (*v0vars)[3];
3302 xyzR125_pi[1] = (*v0vars)[4];
3303 xyzR125_pi[2] = (*v0vars)[5];
3306 rdhfcutvars[0] = xyzR125_ele[0];
3307 rdhfcutvars[1] = xyzR125_ele[1];
3308 rdhfcutvars[2] = xyzR125_ele[2];
3309 rdhfcutvars[3] = xyzR125_pr[0];
3310 rdhfcutvars[4] = xyzR125_pr[1];
3311 rdhfcutvars[5] = xyzR125_pr[2];
3312 rdhfcutvars[6] = xyzR125_pi[0];
3313 rdhfcutvars[7] = xyzR125_pi[1];
3314 rdhfcutvars[8] = xyzR125_pi[2];
3325 if(((
int)trke->T())*chargepr>0){
3385 if(mel_flip < 10. && cosoa<0. && fAnalCuts->IsPeakRegion(v0))
3387 if(((
int)trke->T())*chargepr>0){
3411 for(
Int_t iv=0;iv<15;iv++){
3416 for(
Int_t iv=0;iv<7;iv++){
3417 cont_cor_nd[iv] = -9999.;
3420 for(
Int_t iv=0;iv<8;iv++){
3421 cont_mass_nd[iv] = -9999.;
3428 fCorrelationVariables[4] = (*v0vars)[15];
3429 fCorrelationVariables[5] = (*elevars)[5];
3430 fCorrelationVariables[6] = 2;
3432 if(chargepr>0) fCorrelationVariables[7] = 0;
3433 else fCorrelationVariables[7] = 2;
3434 }
else if(trke->T()<0){
3435 if(chargepr>0) fCorrelationVariables[7] = 1;
3436 else fCorrelationVariables[7] = 3;
3438 fCorrelationVariables[8] = (*elevars)[6];
3439 fCorrelationVariables[9] = (*elevars)[7];
3441 fCorrelationVariables[11] = sqrt(pxsum*pxsum+pysum*pysum);
3442 fCorrelationVariables[12] = mel;
3443 fCorrelationVariables[13] = cosoa;
3445 cont_cor_nd[0] = sqrt(pxsum*pxsum+pysum*pysum);
3446 cont_cor_nd[1] = TVector2::Phi_mpi_pi(v0->Phi()-trke->Phi());
3447 cont_cor_nd[2] = (*v0vars)[15];
3449 if(chargepr>0) cont_cor_nd[3] = 0;
3450 else cont_cor_nd[3] = 2;
3451 }
else if(trke->T()<0){
3452 if(chargepr>0) cont_cor_nd[3] = 3;
3453 else cont_cor_nd[3] = 1;
3455 cont_cor_nd[4] = fCorrelationVariables[8];
3457 if(fabs(fCorrelationVariables[9]-1013)<0.001) cont_cor_nd[5] = 7;
3458 if(fabs(fCorrelationVariables[9]-1016)<0.001) cont_cor_nd[5] = 8;
3459 if(fabs(fCorrelationVariables[9]-1019)<0.001) cont_cor_nd[5] = 9;
3467 if(mel<fAnalCuts->GetEleLambdaMassMax())
3469 cont_cor_nd[0] = trke->Pt();
3471 cont_cor_nd[0] = v0->Pt();
3475 cont_mass_nd[0] = mel;
3476 cont_mass_nd[1] = cont_cor_nd[0];
3477 cont_mass_nd[4] = cont_cor_nd[3];
3478 cont_mass_nd[5] = cont_cor_nd[4];
3479 cont_mass_nd[6] = cont_cor_nd[5];
3480 cont_mass_nd[7] = cont_cor_nd[6];
3485 if(mel_flip < 10.&& cosoa < 0.) cont_mass_nd[2]=0;
3487 cont_mass_nd[0] = trke->Pt();
3489 cont_mass_nd[0] = v0->Pt();
3501 const char* nameoutput = GetOutputSlot(11)->GetContainer()->GetName();
3507 fCandidateVariableNames[ 0]=
"Px";
3508 fCandidateVariableNames[ 1]=
"Py";
3509 fCandidateVariableNames[ 2]=
"Pz";
3510 fCandidateVariableNames[ 3]=
"Charge";
3511 fCandidateVariableNames[ 4]=
"LambdaMass";
3512 fCandidateVariableNames[ 5]=
"Bz";
3513 fCandidateVariableNames[ 6]=
"Centrality";
3514 fCandidateVariableNames[ 7]=
"PrimVertZ";
3515 fCandidateVariableNames[ 8]=
"EvNumber";
3516 fCandidateVariableNames[ 9]=
"RunNumber";
3517 fCandidateVariableNames[10]=
"EventPlane";
3518 fCandidateVariableNames[11]=
"Vars0";
3519 fCandidateVariableNames[12]=
"Vars1";
3520 fCandidateVariableNames[13]=
"Vars2";
3521 fCandidateVariableNames[14]=
"Vars3";
3522 fCandidateVariableNames[15]=
"Vars4";
3523 fCandidateVariableNames[16]=
"MCVars0";
3524 fCandidateVariableNames[17]=
"MCVars1";
3525 fCandidateVariableNames[18]=
"MCVars2";
3526 fCandidateVariableNames[19]=
"MCVars3";
3527 fCandidateVariableNames[20]=
"MCVars4";
3528 fCandidateVariableNames[21]=
"Vars5";
3529 fCandidateVariableNames[22]=
"Vars6";
3530 fCandidateVariableNames[23]=
"Vars7";
3531 fCandidateVariableNames[24]=
"Vars8";
3532 fCandidateVariableNames[25]=
"Vars9";
3533 fCandidateVariableNames[26]=
"Vars10";
3534 fCandidateVariableNames[27]=
"Vars11";
3535 fCandidateVariableNames[28]=
"Vars12";
3536 fCandidateVariableNames[29]=
"Vars13";
3555 const char* nameoutput = GetOutputSlot(5)->GetContainer()->GetName();
3561 fCandidateVariableNames[ 0]=
"ElePx";
3562 fCandidateVariableNames[ 1]=
"ElePy";
3563 fCandidateVariableNames[ 2]=
"ElePz";
3564 fCandidateVariableNames[ 3]=
"TPCChi2overNDF";
3565 fCandidateVariableNames[ 4]=
"ITSNcls";
3566 fCandidateVariableNames[ 5]=
"TPCNcls";
3567 fCandidateVariableNames[ 6]=
"TPCNclsPID";
3568 fCandidateVariableNames[ 7]=
"TPCNclsRatio";
3569 fCandidateVariableNames[ 8]=
"d0R";
3570 fCandidateVariableNames[ 9]=
"d0Z";
3571 fCandidateVariableNames[10]=
"ITSClusterMap";
3572 fCandidateVariableNames[11]=
"nSigmaTPCele";
3573 fCandidateVariableNames[12]=
"nSigmaTOFele";
3574 fCandidateVariableNames[13]=
"nSigmaTPCpi";
3575 fCandidateVariableNames[14]=
"nSigmaTPCka";
3576 fCandidateVariableNames[15]=
"nSigmaTPCpr";
3577 fCandidateVariableNames[16]=
"EvNumber";
3578 fCandidateVariableNames[17]=
"EleCharge";
3579 fCandidateVariableNames[18]=
"ElePdgCode";
3580 fCandidateVariableNames[19]=
"EleMotherPdgCode";
3581 fCandidateVariableNames[20]=
"mcelepx";
3582 fCandidateVariableNames[21]=
"mcelepy";
3583 fCandidateVariableNames[22]=
"mcelepz";
3584 fCandidateVariableNames[23]=
"Centrality";
3585 fCandidateVariableNames[24]=
"PrimVertZ";
3586 fCandidateVariableNames[25]=
"RunNumber";
3603 AliAODTrack *trkpid = 0;
3605 trkpid =
fGTI[-trk->GetID()-1];
3615 for(
Int_t i=0;i<6;i++){
3616 if(trk->HasPointOnITSLayer(i)) ncls_its++;
3618 Int_t ncls_its_shared = 0;
3619 for(
Int_t i=0;i<6;i++){
3620 if(trk->HasPointOnITSLayer(i) && trk->HasSharedPointOnITSLayer(i)) ncls_its_shared++;
3632 trk->PropagateToDCA(
fVtx1,
fBzkG,kVeryBig,d0z0,covd0z0);
3641 Int_t pdgEle = -9999;
3642 Int_t pdgEleMother = -9999;
3646 Int_t pdgarray_ele[100], labelarray_ele[100], ngen_ele;
3647 for(
Int_t i=0;i<100;i++){
3648 pdgarray_ele[i]=-9999;
3649 labelarray_ele[i]=-9999;
3652 Int_t mcetype = -9999;
3655 Int_t labEle = trk->GetLabel();
3656 if(labEle<0)
return;
3657 AliAODMCParticle *mcetrk = (AliAODMCParticle*)mcArray->At(labEle);
3659 if(abs(mcetrk->GetPdgCode())!=11)
return;
3661 pdgEle = mcetrk->GetPdgCode();
3662 mcelepx = mcetrk->Px();
3663 mcelepy = mcetrk->Py();
3664 mcelepz = mcetrk->Pz();
3666 Int_t labEleMother = mcetrk->GetMother();
3667 if(labEleMother>-1){
3668 AliAODMCParticle *mcemothertrk = (AliAODMCParticle*)mcArray->At(labEleMother);
3670 pdgEleMother = mcemothertrk->GetPdgCode();
3677 Bool_t gamma_flag = kFALSE;
3678 Bool_t pi0_flag = kFALSE;
3679 Bool_t eta_flag = kFALSE;
3682 if(abs(pdgarray_ele[0])>400&&abs(pdgarray_ele[0])<440){
3685 if(abs(pdgarray_ele[0])>4000&&abs(pdgarray_ele[0])<4400){
3688 if(abs(pdgarray_ele[0])>500&&abs(pdgarray_ele[0])<540){
3691 if(abs(pdgarray_ele[0])>5000&&abs(pdgarray_ele[0])<5400){
3695 if(abs(pdgarray_ele[0])==22){
3702 if((abs(pdgarray_ele[0])==22) && (abs(pdgarray_ele[1])==111)){
3704 AliAODMCParticle *mctrkm = (AliAODMCParticle*)mcArray->At(labelarray_ele[1]);
3705 pt_pi0 = mctrkm->Pt();
3707 if(abs(pdgarray_ele[0])==111){
3709 AliAODMCParticle *mctrkm = (AliAODMCParticle*)mcArray->At(labelarray_ele[0]);
3710 pt_pi0 = mctrkm->Pt();
3712 if((abs(pdgarray_ele[0])==22) && (abs(pdgarray_ele[1])==221)){
3714 AliAODMCParticle *mctrkm = (AliAODMCParticle*)mcArray->At(labelarray_ele[1]);
3715 pt_eta = mctrkm->Pt();
3717 if(abs(pdgarray_ele[0])==221){
3719 AliAODMCParticle *mctrkm = (AliAODMCParticle*)mcArray->At(labelarray_ele[0]);
3720 pt_eta = mctrkm->Pt();
3725 cont_pi0[0] = trk->Pt();
3726 cont_pi0[1] = pt_pi0;
3734 cont_eta[0] = trk->Pt();
3735 cont_eta[1] = pt_eta;
3741 if(hfe_flag==0)
return;
3756 pv[0] =
fVtx1->GetX();
3757 pv[1] =
fVtx1->GetY();
3758 pv[2] =
fVtx1->GetZ();
3759 Double_t xyzR125[3]={9999.,9999.,9999.};
3761 TVector *varvec =
new TVector(8);
3762 (*varvec)[0] = xyzR125[0];
3763 (*varvec)[1] = xyzR125[1];
3764 (*varvec)[2] = xyzR125[2];
3767 (*varvec)[5] = d0z0[0];
3768 (*varvec)[6] = (
Int_t)isconv + 2*(
Int_t)isconv_like;
3769 (*varvec)[7] = mcetype;
3772 m_ReservoirE[
fPoolIndex][nextRes].push_back(
new TLorentzVector(trk->Px(),trk->Py(),trk->Pz(),trk->Charge()));
3791 for(
Int_t i=0;i<26;i++){
3794 for(
Int_t i=0;i<30;i++){
3901 const char* nameoutput = GetOutputSlot(6)->GetContainer()->GetName();
3907 fCandidateVariableNames[ 0]=
"V0Px";
3908 fCandidateVariableNames[ 1]=
"V0Py";
3909 fCandidateVariableNames[ 2]=
"V0Pz";
3910 fCandidateVariableNames[ 3]=
"MassLambda";
3911 fCandidateVariableNames[ 4]=
"MassAntiLambda";
3912 fCandidateVariableNames[ 5]=
"ProtonPx";
3913 fCandidateVariableNames[ 6]=
"ProtonPy";
3914 fCandidateVariableNames[ 7]=
"ProtonPz";
3915 fCandidateVariableNames[ 8]=
"PionPx";
3916 fCandidateVariableNames[ 9]=
"PionPy";
3917 fCandidateVariableNames[10]=
"PionPz";
3918 fCandidateVariableNames[11]=
"RfidV0";
3919 fCandidateVariableNames[12]=
"DcaV0PrToPrimVertex";
3920 fCandidateVariableNames[13]=
"DcaV0PiToPrimVertex";
3921 fCandidateVariableNames[14]=
"DcaV0daughters";
3922 fCandidateVariableNames[15]=
"V0CosPointingAngle";
3923 fCandidateVariableNames[16]=
"V0ProperDecayLength";
3924 fCandidateVariableNames[17]=
"MassK0Short";
3925 fCandidateVariableNames[18]=
"nSigmaTPCpr";
3926 fCandidateVariableNames[19]=
"nSigmaTPCpi";
3927 fCandidateVariableNames[20]=
"TPCNCrossV0Pr";
3928 fCandidateVariableNames[21]=
"TPCNCrossV0Pi";
3929 fCandidateVariableNames[22]=
"TPCNCrossRatioV0Pr";
3930 fCandidateVariableNames[23]=
"TPCNCrossRatioV0Pi";
3931 fCandidateVariableNames[24]=
"V0PdgCode";
3932 fCandidateVariableNames[25]=
"V0MotherPdgCode";
3933 fCandidateVariableNames[26]=
"mcv0px";
3934 fCandidateVariableNames[27]=
"mcv0py";
3935 fCandidateVariableNames[28]=
"mcv0pz";
3936 fCandidateVariableNames[29]=
"mcv0vertx";
3937 fCandidateVariableNames[30]=
"mcv0verty";
3938 fCandidateVariableNames[31]=
"mcv0vertz";
3939 fCandidateVariableNames[32]=
"EvNumber";
3940 fCandidateVariableNames[33]=
"Centrality";
3941 fCandidateVariableNames[34]=
"PrimVertZ";
3942 fCandidateVariableNames[35]=
"RunNumber";
3958 AliAODTrack *cptrack = (AliAODTrack*)(v0->GetDaughter(0));
3959 AliAODTrack *cntrack = (AliAODTrack*)(v0->GetDaughter(1));
3960 if(!cptrack)
return;
3961 if(!cntrack)
return;
3980 Double_t mlamPDG = TDatabasePDG::Instance()->GetParticle(3122)->Mass();
3982 fVtx1->GetXYZ(posVtx);
3983 Double_t ptotlam = TMath::Sqrt(pow(v0->Px(),2)+pow(v0->Py(),2)+pow(v0->Pz(),2));
3984 Double_t v0propdl = v0->DecayLengthV0(posVtx)*mlamPDG/ptotlam;
3986 cont_arm[0] = v0->Pt();
3987 cont_arm[1] = v0->PtArmV0();
3988 cont_arm[2] = v0->AlphaV0();
4009 Double_t phi_alice = atan2(momv0y,momv0x);
4010 if(phi_alice<0.) phi_alice += 2 * M_PI;
4016 fVtx1->GetXYZ(posVtx);
4017 TLorentzVector *lv =
new TLorentzVector();
4018 Double_t ptotlam = TMath::Sqrt(pow(v0->Px(),2)+pow(v0->Py(),2)+pow(v0->Pz(),2));
4019 Double_t xyzR125pr[3] = {9999.,9999.,9999.};
4020 Double_t xyzR125pi[3] = {9999.,9999.,9999.};
4022 lv->SetXYZM(v0->Px(),v0->Py(),v0->Pz(),v0->MassLambda());
4026 TVector *varvec =
new TVector(17);
4027 (*varvec)[0] = xyzR125pr[0];
4028 (*varvec)[1] = xyzR125pr[1];
4029 (*varvec)[2] = xyzR125pr[2];
4030 (*varvec)[3] = xyzR125pi[0];
4031 (*varvec)[4] = xyzR125pi[1];
4032 (*varvec)[5] = xyzR125pi[2];
4033 (*varvec)[6] = v0->DecayVertexV0X();
4034 (*varvec)[7] = v0->DecayVertexV0Y();
4035 (*varvec)[8] = v0->DecayVertexV0Z();
4036 (*varvec)[9] = v0->MomPosX();
4037 (*varvec)[10] = v0->MomPosY();
4038 (*varvec)[11] = v0->MomPosZ();
4039 (*varvec)[12] = v0->MomNegX();
4040 (*varvec)[13] = v0->MomNegY();
4041 (*varvec)[14] = v0->MomNegZ();
4042 (*varvec)[15] = v0->DecayLengthV0(posVtx)*mlamPDG/ptotlam;
4043 (*varvec)[16] = v0->DcaV0ToPrimVertex();
4046 lv->SetXYZM(v0->Px(),v0->Py(),v0->Pz(),v0->MassAntiLambda());
4050 TVector *varvec =
new TVector(17);
4051 (*varvec)[0] = xyzR125pr[0];
4052 (*varvec)[1] = xyzR125pr[1];
4053 (*varvec)[2] = xyzR125pr[2];
4054 (*varvec)[3] = xyzR125pi[0];
4055 (*varvec)[4] = xyzR125pi[1];
4056 (*varvec)[5] = xyzR125pi[2];
4057 (*varvec)[6] = v0->DecayVertexV0X();
4058 (*varvec)[7] = v0->DecayVertexV0Y();
4059 (*varvec)[8] = v0->DecayVertexV0Z();
4060 (*varvec)[9] = v0->MomNegX();
4061 (*varvec)[10] = v0->MomNegY();
4062 (*varvec)[11] = v0->MomNegZ();
4063 (*varvec)[12] = v0->MomPosX();
4064 (*varvec)[13] = v0->MomPosY();
4065 (*varvec)[14] = v0->MomPosZ();
4066 (*varvec)[15] = v0->DecayLengthV0(posVtx)*mlamPDG/ptotlam;
4067 (*varvec)[16] = v0->DcaV0ToPrimVertex();
4074 Int_t v0pdgcode = -9999;
4075 Int_t v0motherpdgcode = -9999;
4082 Int_t pdgarray_v0[100], labelarray_v0[100], ngen_v0;
4085 Int_t pdgdgv0[2]={2212,211};
4086 Int_t labV0 = v0->MatchToMC(3122,mcArray,2,pdgdgv0);
4099 AliAODMCParticle *mcv0trk = (AliAODMCParticle*)mcArray->At(labV0);
4101 mcv0px = mcv0trk->Px();
4102 mcv0py = mcv0trk->Py();
4103 mcv0pz = mcv0trk->Pz();
4105 Int_t labptrk = cptrack->GetLabel();
4107 AliAODMCParticle *mcv0ptrk = (AliAODMCParticle*)mcArray->At(labptrk);
4109 mcv0vertx = mcv0ptrk->Xv();
4110 mcv0verty = mcv0ptrk->Yv();
4111 mcv0vertz = mcv0ptrk->Zv();
4117 Bool_t hfv0_flag = kFALSE;
4118 Bool_t promptv0_flag = kFALSE;
4119 v0pdgcode = mcv0trk->GetPdgCode();
4120 Int_t labv0mother = mcv0trk->GetMother();
4122 AliAODMCParticle *motherv0 = (AliAODMCParticle*)mcArray->At(labv0mother);
4124 v0motherpdgcode = motherv0->GetPdgCode();
4125 if(abs(v0motherpdgcode)>4000&&abs(v0motherpdgcode)<4400){
4128 if(abs(v0motherpdgcode)==3322){
4130 }
else if(abs(v0motherpdgcode)==3312){
4132 }
else if(abs(v0motherpdgcode)==3334){
4136 promptv0_flag = kTRUE;
4144 for(
Int_t i=0;i<100;i++){
4145 pdgarray_v0[i] = -9999;
4146 labelarray_v0[i] = -9999;
4153 for(
Int_t i=0;i<36;i++){
4157 for(
Int_t i=0;i<30;i++){
4161 Bool_t isparticle = kFALSE;
4335 const char* nameoutput = GetOutputSlot(7)->GetContainer()->GetName();
4341 fCandidateVariableNames[ 0]=
"Centrality";
4342 fCandidateVariableNames[ 1]=
"DecayType";
4343 fCandidateVariableNames[ 2]=
"LcPx";
4344 fCandidateVariableNames[ 3]=
"LcPy";
4345 fCandidateVariableNames[ 4]=
"LcPz";
4346 fCandidateVariableNames[ 5]=
"ElePx";
4347 fCandidateVariableNames[ 6]=
"ElePy";
4348 fCandidateVariableNames[ 7]=
"ElePz";
4349 fCandidateVariableNames[ 8]=
"V0Px";
4350 fCandidateVariableNames[ 9]=
"V0Py";
4351 fCandidateVariableNames[10]=
"V0Pz";
4365 if(!mcepart)
return;
4366 if(!mcv0part)
return;
4368 for(
Int_t i=0;i<11;i++){
4387 Double_t eE = sqrt(epx*epx+epy*epy+epz*epz+0.000511*0.000511);
4391 Double_t v0E = sqrt(v0px*v0px+v0py*v0py+v0pz*v0pz+1.1157*1.1157);
4393 Double_t InvMassEleLambda = sqrt(pow(eE+v0E,2)-pow(epx+v0px,2)-pow(epy+v0py,2)-pow(epz+v0pz,2));
4396 cont[0] = InvMassEleLambda;
4397 cont[1] = mcpart->Pt();
4400 cont2[0] = InvMassEleLambda;
4401 cont2[1] = mcepart->Pt();
4404 cont_eleptvseta[0] = mcepart->Pt();
4405 cont_eleptvseta[1] = mcepart->Eta();
4408 cont_eleptvslambdapt[0] = mcepart->Pt();
4409 cont_eleptvslambdapt[1] = mcv0part->Pt();
4411 Double_t cont_eleptvslambdaptvslcpt[4];
4412 cont_eleptvslambdaptvslcpt[0] = mcepart->Pt();
4413 cont_eleptvslambdaptvslcpt[1] = mcv0part->Pt();
4414 cont_eleptvslambdaptvslcpt[2] = mcpart->Pt();
4417 contmc[0] = mcpart->Pt();
4418 contmc[1] = mcpart->Y();
4421 contmcele[0] = mcepart->Pt();
4422 contmcele[1] = mcepart->Eta();
4425 contmc_withele[0] = mcpart->Pt();
4426 contmc_withele[1] = mcpart->Y();
4427 contmc_withele[2] = mcepart->Y();
4431 esdcuts->GetEtaRange(etamin,etamax);
4438 if(fabs(mcepart->Eta())<0.8){
4445 if(fabs(mcepart->Eta())<etamax){
4449 if(InvMassEleLambda<fAnalCuts->GetEleLambdaMassMax()){
4455 if(fabs(mcpart->Y())<0.7){
4456 if(InvMassEleLambda<fAnalCuts->GetEleLambdaMassMax()){
4461 }
else if(decaytype==1){
4469 if(fabs(mcepart->Eta())<etamax){
4473 if(InvMassEleLambda<fAnalCuts->GetEleLambdaMassMax()){
4479 }
else if(decaytype==2){
4487 if(fabs(mcepart->Eta())<etamax){
4491 if(InvMassEleLambda<fAnalCuts->GetEleLambdaMassMax()){
4497 }
else if(decaytype==3){
4501 }
else if(decaytype==10){
4510 if(fabs(mcepart->Eta())<0.8){
4513 }
else if(decaytype==11){
4529 const char* nameoutput = GetOutputSlot(9)->GetContainer()->GetName();
4535 fCandidateVariableNames[ 0]=
"Centrality";
4536 fCandidateVariableNames[ 1]=
"ElePx";
4537 fCandidateVariableNames[ 2]=
"ElePy";
4538 fCandidateVariableNames[ 3]=
"ElePz";
4539 fCandidateVariableNames[ 4]=
"ElePdgCode";
4540 fCandidateVariableNames[ 5]=
"EleMotherPdgCode";
4541 fCandidateVariableNames[ 6]=
"RunNumber";
4542 fCandidateVariableNames[ 7]=
"EvNumber";
4555 if(!mcepart)
return;
4557 Int_t pdgarray_ele[100], labelarray_ele[100], ngen_ele;
4562 Int_t semi_flag = 0;
4563 if(pdgarray_ele[0]>400&&pdgarray_ele[0]<450) semi_flag = 1;
4564 if(pdgarray_ele[0]>4000&&pdgarray_ele[0]<4500) semi_flag = 1;
4565 if(pdgarray_ele[0]>500&&pdgarray_ele[0]<550) semi_flag = 2;
4566 if(pdgarray_ele[0]>5000&&pdgarray_ele[0]<5500) semi_flag = 2;
4569 contmc[0] = mcepart->Pt();
4570 contmc[1] = mcepart->Eta();
4573 if(semi_flag==1 && !ele_from_bottom){
4576 if(semi_flag==1 && ele_from_bottom){
4583 Bool_t hfe_flag = kFALSE;
4584 Int_t labemother = mcepart->GetMother();
4585 Int_t pdgmotherele = -9999;
4587 AliAODMCParticle *motherele = (AliAODMCParticle*)mcArray->At(labemother);
4588 pdgmotherele = motherele->GetPdgCode();
4589 if(abs(pdgmotherele)>4000&&abs(pdgmotherele)<4400){
4594 if(!hfe_flag)
return;
4598 for(
Int_t i=0;i<8;i++){
4622 const char* nameoutput = GetOutputSlot(10)->GetContainer()->GetName();
4628 fCandidateVariableNames[ 0]=
"Centrality";
4629 fCandidateVariableNames[ 1]=
"V0Px";
4630 fCandidateVariableNames[ 2]=
"V0Py";
4631 fCandidateVariableNames[ 3]=
"V0Pz";
4632 fCandidateVariableNames[ 4]=
"V0PdgCode";
4633 fCandidateVariableNames[ 5]=
"V0MotherPdgCode";
4634 fCandidateVariableNames[ 6]=
"RunNumber";
4635 fCandidateVariableNames[ 7]=
"EvNumber";
4648 if(!mcv0part)
return;
4650 for(
Int_t i=0;i<8;i++){
4654 Bool_t hfv0_flag = kFALSE;
4655 Int_t labv0mother = mcv0part->GetMother();
4656 Int_t pdgmotherv0 = -9999;
4658 AliAODMCParticle *motherv0 = (AliAODMCParticle*)mcArray->At(labv0mother);
4660 pdgmotherv0 = motherv0->GetPdgCode();
4661 if(abs(pdgmotherv0)>4000&&abs(pdgmotherv0)<4400){
4666 if(!hfv0_flag)
return;
4669 contmc[0] = mcv0part->Pt();
4670 contmc[1] = mcv0part->Eta();
4694 fCEvents =
new TH1F(
"fCEvents",
"conter",20,-0.5,19.5);
4696 fCEvents->GetXaxis()->SetBinLabel(1,
"X1");
4697 fCEvents->GetXaxis()->SetBinLabel(2,
"Analyzed events");
4698 fCEvents->GetXaxis()->SetBinLabel(3,
"AliAODVertex exists");
4699 fCEvents->GetXaxis()->SetBinLabel(4,
"TriggerOK");
4700 fCEvents->GetXaxis()->SetBinLabel(5,
"IsEventSelected");
4701 fCEvents->GetXaxis()->SetBinLabel(6,
"CascadesHF exists");
4702 fCEvents->GetXaxis()->SetBinLabel(7,
"MCarray exists");
4703 fCEvents->GetXaxis()->SetBinLabel(8,
"MCheader exists");
4704 fCEvents->GetXaxis()->SetBinLabel(9,
"triggerClass!=CINT1");
4705 fCEvents->GetXaxis()->SetBinLabel(10,
"triggerMask!=kAnyINT");
4706 fCEvents->GetXaxis()->SetBinLabel(11,
"triggerMask!=kAny");
4707 fCEvents->GetXaxis()->SetBinLabel(12,
"vtxTitle.Contains(Z)");
4708 fCEvents->GetXaxis()->SetBinLabel(13,
"vtxTitle.Contains(3D)");
4709 fCEvents->GetXaxis()->SetBinLabel(14,
"vtxTitle.Doesn'tContain(Z-3D)");
4711 fCEvents->GetXaxis()->SetBinLabel(16,
"!IsEventSelected");
4712 fCEvents->GetXaxis()->SetBinLabel(17,
"triggerMask!=kAnyINT || triggerClass!=CINT1");
4714 fCEvents->GetXaxis()->SetBinLabel(19,
"No RP");
4715 fCEvents->GetXaxis()->SetBinLabel(20,
"No Qvector (only for TPC event plane)");
4717 fCEvents->GetYaxis()->SetTitle(
"counts");
4719 fHTrigger =
new TH1F(
"fHTrigger",
"counter",18,-0.5,17.5);
4721 fHTrigger->GetXaxis()->SetBinLabel(1,
"X1");
4722 fHTrigger->GetXaxis()->SetBinLabel(2,
"kMB");
4723 fHTrigger->GetXaxis()->SetBinLabel(3,
"kSemiCentral");
4724 fHTrigger->GetXaxis()->SetBinLabel(4,
"kCentral");
4725 fHTrigger->GetXaxis()->SetBinLabel(5,
"kINT7");
4726 fHTrigger->GetXaxis()->SetBinLabel(6,
"kEMC7");
4728 fHTrigger->GetXaxis()->SetBinLabel(8,
"kMB|kSemiCentral|kCentral");
4729 fHTrigger->GetXaxis()->SetBinLabel(9,
"kINT7|kEMC7");
4730 fHTrigger->GetXaxis()->SetBinLabel(11,
"kMB&kSemiCentral");
4731 fHTrigger->GetXaxis()->SetBinLabel(12,
"kMB&kCentral");
4732 fHTrigger->GetXaxis()->SetBinLabel(13,
"kINT7&kEMC7");
4734 fHCentrality =
new TH1F(
"fHCentrality",
"conter",100,0.,100.);
4735 fHEventPlane =
new TH1F(
"fHEventPlane",
"conter",100,-3.14,3.14);
4736 fHNTrackletvsZ =
new TH2F(
"fHNTrackletvsZ",
"N_{tracklet} vs z",30,-15.,15.,120,-0.5,119.5);
4762 Int_t bins_base[3]= {23,100 ,10};
4763 Double_t xmin_base[3]={1.1,0 ,0.00};
4764 Double_t xmax_base[3]={5.7,20. ,100};
4765 fHistoEleLambdaMass =
new THnSparseF(
"fHistoEleLambdaMass",
"",3,bins_base,xmin_base,xmax_base);
4841 Int_t bins_base_elept[3]= {10,100 ,10};
4842 Double_t xmin_base_elept[3]={1.1,0 ,0.00};
4843 Double_t xmax_base_elept[3]={3.1,10. ,100};
4915 Int_t bins_eleptvseta[3]= {10,10 ,10};
4916 Double_t xmin_eleptvseta[3]={0.,-1. ,0.0};
4917 Double_t xmax_eleptvseta[3]={5.,1. ,100};
4919 fHistoElePtvsEtaRS =
new THnSparseF(
"fHistoElePtvsEtaRS",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4921 fHistoElePtvsEtaWS =
new THnSparseF(
"fHistoElePtvsEtaWS",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4923 fHistoElePtvsEtaRSMix =
new THnSparseF(
"fHistoElePtvsEtaRSMix",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4925 fHistoElePtvsEtaWSMix =
new THnSparseF(
"fHistoElePtvsEtaWSMix",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4927 fHistoElePtvsEtaMCS =
new THnSparseF(
"fHistoElePtvsEtaMCS",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4929 fHistoElePtvsEtaMCGen =
new THnSparseF(
"fHistoElePtvsEtaMCGen",
"",3,bins_eleptvseta,xmin_eleptvseta,xmax_eleptvseta);
4932 Int_t bins_eleptvslambdapt[3]= {10,10 ,10};
4933 Double_t xmin_eleptvslambdapt[3]={0.,0. ,0.0};
4934 Double_t xmax_eleptvslambdapt[3]={5.,5. ,100};
4936 fHistoElePtvsLambdaPtRS =
new THnSparseF(
"fHistoElePtvsLambdaPtRS",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4938 fHistoElePtvsLambdaPtWS =
new THnSparseF(
"fHistoElePtvsLambdaPtWS",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4940 fHistoElePtvsLambdaPtRSMix =
new THnSparseF(
"fHistoElePtvsLambdaPtRSMix",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4942 fHistoElePtvsLambdaPtWSMix =
new THnSparseF(
"fHistoElePtvsLambdaPtWSMix",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4944 fHistoElePtvsLambdaPtMCS =
new THnSparseF(
"fHistoElePtvsLambdaPtMCS",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4946 fHistoElePtvsLambdaPtMCGen =
new THnSparseF(
"fHistoElePtvsLambdaPtMCGen",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4948 fHistoElePtvsLambdaPtMCLcGen =
new THnSparseF(
"fHistoElePtvsLambdaPtMCLcGen",
"",3,bins_eleptvslambdapt,xmin_eleptvslambdapt,xmax_eleptvslambdapt);
4951 Int_t bins_eleptvslambdaptvslcpt[4]= {10,10,10,10};
4952 Double_t xmin_eleptvslambdaptvslcpt[4]={0.,0.,0.,0.0};
4953 Double_t xmax_eleptvslambdaptvslcpt[4]={5.,5.,10.,100};
4954 fHistoElePtvsLambdaPtvsLcPtMCS =
new THnSparseF(
"fHistoElePtvsLambdaPtvsLcPtMCS",
"",4,bins_eleptvslambdaptvslcpt,xmin_eleptvslambdaptvslcpt,xmax_eleptvslambdaptvslcpt);
4956 fHistoElePtvsLambdaPtvsLcPtMCGen =
new THnSparseF(
"fHistoElePtvsLambdaPtvsLcPtMCGen",
"",4,bins_eleptvslambdaptvslcpt,xmin_eleptvslambdaptvslcpt,xmax_eleptvslambdaptvslcpt);
4959 Int_t bins_allpt[4]= {10,10,20,20};
4960 Double_t xmin_allpt[4]={0.,0.,0.,0.0};
4961 Double_t xmax_allpt[4]={20.,20.,10.,10};
4972 Int_t bins_eleptvsd0[3]= {10 ,10 ,10};
4973 Double_t xmin_eleptvsd0[3]={0.,-0.2 ,0.0};
4974 Double_t xmax_eleptvsd0[3]={5.,0.2 ,100};
4976 fHistoElePtvsd0RS =
new THnSparseF(
"fHistoElePtvsd0RS",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
4978 fHistoElePtvsd0WS =
new THnSparseF(
"fHistoElePtvsd0WS",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
4980 fHistoElePtvsd0RSMix =
new THnSparseF(
"fHistoElePtvsd0RSMix",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
4982 fHistoElePtvsd0WSMix =
new THnSparseF(
"fHistoElePtvsd0WSMix",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
4984 fHistoElePtvsd0MCS =
new THnSparseF(
"fHistoElePtvsd0MCS",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
4986 fHistoElePtvsd0PromptMCS =
new THnSparseF(
"fHistoElePtvsd0PromptMCS",
"",3,bins_eleptvsd0,xmin_eleptvsd0,xmax_eleptvsd0);
5055 fHistoBachPt =
new TH1F(
"fHistoBachPt",
"Bachelor p_{T}",100,0.0,5.0);
5057 fHistoBachPtMCS =
new TH1F(
"fHistoBachPtMCS",
"Bachelor p_{T}",100,0.0,5.0);
5065 fHistod0Bach =
new TH1F(
"fHistod0Bach",
"Bachelor d_{0}",100,-0.5,0.5);
5094 Int_t bins_armenteros[3]= {20 ,100 ,200};
5095 Double_t xmin_armenteros[3]={0.,0. ,-1.};
5096 Double_t xmax_armenteros[3]={20.,1. ,1.};
5097 fHistoLambdaArmenteros =
new THnSparseF(
"fHistoLambdaArmenteros",
"",3,bins_armenteros,xmin_armenteros,xmax_armenteros);
5099 fHistoLambdaArmenterosMCS =
new THnSparseF(
"fHistoLambdaArmenterosMCS",
"",3,bins_armenteros,xmin_armenteros,xmax_armenteros);
5132 for(
Int_t i=0;i<8;i++){
5143 Int_t bins_lcmcgen_withelea[3]= {20 ,100 ,100};
5144 Double_t xmin_lcmcgen_withelea[3]={0.,-5.,-5.};
5145 Double_t xmax_lcmcgen_withelea[3]={20.,5.,5.};
5146 fHistoLcMCGenWithEleA =
new THnSparseF(
"fHistoLcMCGenWithEleA",
"",3,bins_lcmcgen_withelea,xmin_lcmcgen_withelea,xmax_lcmcgen_withelea);
5151 fHistoLbMCGenWithEleA =
new THnSparseF(
"fHistoLbMCGenWithEleA",
"",3,bins_lcmcgen_withelea,xmin_lcmcgen_withelea,xmax_lcmcgen_withelea);
5156 Int_t bins_lbmcgen_withlc[3]= {50 ,100 ,100};
5157 Double_t xmin_lbmcgen_withlc[3]={0.,-5.,-5.};
5158 Double_t xmax_lbmcgen_withlc[3]={50.,5.,5.};
5159 fHistoLbMCGenWithLambdac =
new THnSparseF(
"fHistoLbMCGenWithLambdac",
"",3,bins_lbmcgen_withlc,xmin_lbmcgen_withlc,xmax_lbmcgen_withlc);
5162 Int_t bins_lcmcgen[3]= {100 ,20 ,10};
5163 Double_t xmin_lcmcgen[3]={0.,-1.0 ,0.0};
5164 Double_t xmax_lcmcgen[3]={20.,1.0 ,100};
5165 Int_t bins_lbmcgen[3]= {100 ,20 ,10};
5166 Double_t xmin_lbmcgen[3]={0.,-1.0 ,0.0};
5167 Double_t xmax_lbmcgen[3]={50.,1.0 ,100};
5168 fHistoLcMCGen =
new THnSparseF(
"fHistoLcMCGen",
"",3,bins_lcmcgen,xmin_lcmcgen,xmax_lcmcgen);
5170 fHistoLcMCGen1 =
new THnSparseF(
"fHistoLcMCGen1",
"",3,bins_lcmcgen,xmin_lcmcgen,xmax_lcmcgen);