From 2d2513f084d0adf2f17cfbf07b0e45bfd5ea1170 Mon Sep 17 00:00:00 2001 From: hdalsgaa Date: Wed, 7 Mar 2012 13:59:00 +0000 Subject: [PATCH] MC upgrades to displaced vertices --- .../analysis2/AliFMDMCEventInspector.cxx | 47 ++++++++++++++++--- .../AliForwardMCMultiplicityTask.cxx | 2 +- 2 files changed, 41 insertions(+), 8 deletions(-) diff --git a/PWGLF/FORWARD/analysis2/AliFMDMCEventInspector.cxx b/PWGLF/FORWARD/analysis2/AliFMDMCEventInspector.cxx index 3e64b651df9..8c6f9f1551a 100644 --- a/PWGLF/FORWARD/analysis2/AliFMDMCEventInspector.cxx +++ b/PWGLF/FORWARD/analysis2/AliFMDMCEventInspector.cxx @@ -29,6 +29,8 @@ #include "AliGenEposEventHeader.h" #include "AliGenHerwigEventHeader.h" #include "AliGenGeVSimEventHeader.h" +#include "AliAnalysisManager.h" +#include "AliMCEventHandler.h" #include "AliHeader.h" #include #include @@ -544,13 +546,44 @@ AliFMDMCEventInspector::ReadCentrality(const AliESDEvent* esd, qual = 0; AliCentrality* centObj = const_cast(esd)->GetCentrality(); if (!centObj) return true; - - qual = centObj->GetQuality(); - if (qual == 0x8) // Ignore ZDC outliers - cent = centObj->GetCentralityPercentileUnchecked("V0M"); - else - cent = centObj->GetCentralityPercentile("V0M"); - +AliAnalysisManager* am = AliAnalysisManager::GetAnalysisManager(); + Bool_t isMC = am->GetMCtruthEventHandler() != 0; + + //std::cout<(am->GetMCtruthEventHandler()); + AliMCEvent* mcevent = mchandler->MCEvent(); + + AliHeader* header = mcevent->Header(); + AliGenEventHeader* genHeader = header->GenEventHeader(); + AliCollisionGeometry* colGeometry = + dynamic_cast(genHeader); + Double_t b = -1; + if (colGeometry) + b = colGeometry->ImpactParameter(); + //std::cout<<"Hallo!! "<0) cent = 2.5; //0-5% + if(b>3.5 && b<4.95) cent = 7.5; //5-10% + if(b>4.95 && b<6.98) cent = 15; //10-20% + if(b>6.98 && b<8.55) cent = 25; //20-30% + if(b>8.55 && b<9.88) cent = 35; //30-40% + if(b>9.88 && b<11.04) cent = 45; //40-50% + if(b>11.04) cent = 55; //50-60% + //cent = 10; + qual = 0; + } + else { + + qual = centObj->GetQuality(); + if (qual == 0x8) // Ignore ZDC outliers + cent = centObj->GetCentralityPercentileUnchecked("V0M"); + else + cent = centObj->GetCentralityPercentile("V0M"); + } return true; } diff --git a/PWGLF/FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx b/PWGLF/FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx index 520b54bb459..9a1328233ea 100644 --- a/PWGLF/FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx +++ b/PWGLF/FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx @@ -402,7 +402,7 @@ AliForwardMCMultiplicityTask::UserExec(Option_t*) fSharingFilter.CompareResults(fESDFMD, fMCESDFMD); // Calculate the inclusive charged particle density - if (!fDensityCalculator.Calculate(fESDFMD, fHistos, ivz, lowFlux, cent)) { + if (!fDensityCalculator.Calculate(fESDFMD, fHistos, ivz, lowFlux, cent, vz)) { AliWarning("Density calculator failed!"); return; } -- 2.43.0