#include "TChain.h"
#include "AliAnalysisDataSlot.h"
#include "AliAnalysisDataContainer.h"
#include "AliAnalysisManager.h"
#include "AliMCEvent.h"
#include "AliVEvent.h"
#include "AliTwoParticlePIDCorrKine.h"
#include "AliGenEventHeader.h"
#include "AliCollisionGeometry.h"
#include "AliVEvent.h"
#include "AliVParticle.h"
ClassImp(AliTwoParticlePIDCorrKine)
AliTwoParticlePIDCorrKine::AliTwoParticlePIDCorrKine():
fEvent(0x0),
fMcHandler(0x0),
fHistEventsProcessed(0x0),
fOutputList(0),
fHistZvtx(0),
fHistPt(0),
fHistImpact(0x0),
fZvtxLim(10),
fCentralityFrom("Impact"),
fCentralityEstimator("V0M")
{
}
AliTwoParticlePIDCorrKine::AliTwoParticlePIDCorrKine(const Char_t* name) :
AliAnalysisTaskSE(name),
fEvent(0x0),
fMcHandler(0x0),
fHistEventsProcessed(0x0),
fOutputList(0),
fHistZvtx(0),
fHistPt(0),
fHistImpact(0x0),
fZvtxLim(10),
fCentralityFrom("Impact"),
fCentralityEstimator("V0M")
{
Info("AliTwoParticlePIDCorrKine","Calling Constructor");
DefineInput(0, TChain::Class());
DefineOutput(1,TList::Class());
}
AliTwoParticlePIDCorrKine::~AliTwoParticlePIDCorrKine()
{
Info("~AliTwoParticlePIDCorrKine","Calling Destructor");
if (fHistEventsProcessed) delete fHistEventsProcessed;
if (fOutputList) delete fOutputList;
if (fHistZvtx) delete fHistZvtx;
if (fHistPt) delete fHistPt;
}
void AliTwoParticlePIDCorrKine::UserCreateOutputObjects()
{
Info("CreateOutputObjects","CreateOutputObjects of task %s", GetName());
fOutputList = new TList();
fOutputList->SetOwner(kTRUE);
fHistEventsProcessed = new TH1F("fHistNEvents","fHistEventsProcessed",3,-0.5,2.5) ;
fHistEventsProcessed->GetXaxis()->SetBinLabel(1,"All events");
fHistEventsProcessed->GetXaxis()->SetBinLabel(2,"Event within |Ztx| 10cm");
fHistEventsProcessed->GetXaxis()->SetBinLabel(3,"Good Reconstructed events");
fHistPt = new TH1F("fHistPt", "P_{T} distribution", 15, 0.1, 3.1);
fHistPt->GetXaxis()->SetTitle("P_{T} (GeV/c)");
fHistPt->GetYaxis()->SetTitle("dN/dP_{T} (c/GeV)");
fHistPt->SetMarkerStyle(kFullCircle);
fHistZvtx = new TH1F("fHistZvtx", "Zvtx distribution", 40, -20, 20);
fHistZvtx->GetXaxis()->SetTitle("ZVtx (cm)");
fHistZvtx->GetYaxis()->SetTitle("Nch");
fHistZvtx->SetMarkerStyle(kFullCircle);
fHistImpact = new TH1F ("fHistImpact","ImpactParameter_Dist", 100,0.0,20.0);
fOutputList->Add(fHistEventsProcessed);
fOutputList->Add(fHistZvtx);
fOutputList->Add(fHistPt);
fOutputList->Add(fHistImpact);
PostData(1, fOutputList);
return;
}
void AliTwoParticlePIDCorrKine::UserExec(Option_t *)
{
fEvent = dynamic_cast<AliVEvent*>(MCEvent());
if(!fEvent)
{
return;
}
fHistEventsProcessed->Fill(0.0);
const AliVVertex *vtxMC = fEvent->GetPrimaryVertex();
Float_t zVtx = vtxMC->GetZ();
if(TMath::Abs(zVtx) < fZvtxLim)fHistZvtx->Fill(zVtx);
else return;
fHistEventsProcessed->Fill(1.0);
Double_t gImpactParameter = 0.;
AliMCEvent *gMCEvent = dynamic_cast<AliMCEvent*>(fEvent);
if(gMCEvent){
AliCollisionGeometry* headerH = dynamic_cast<AliCollisionGeometry*>(gMCEvent->GenEventHeader());
if(headerH){
gImpactParameter = headerH->ImpactParameter();
}
}
fHistImpact->Fill(gImpactParameter);
for (Int_t iTracks = 0; iTracks < fEvent->GetNumberOfTracks(); iTracks++) {
AliVParticle* track = fEvent->GetTrack(iTracks);
if (!track) {
continue;
}
fHistPt->Fill(track->Pt());
}
fHistEventsProcessed->Fill(2.0);
PostData(1, fOutputList);
return;
}
void AliTwoParticlePIDCorrKine::Terminate(Option_t*)
{
Info("Terminate","Start and end of Method");
AliAnalysisTaskSE::Terminate();
fOutputList = dynamic_cast<TList*> (GetOutputData(1));
if (!fOutputList) {
Printf("ERROR: Output list not available");
return;
}
}
AliTwoParticlePIDCorrKine.cxx:1 AliTwoParticlePIDCorrKine.cxx:2 AliTwoParticlePIDCorrKine.cxx:3 AliTwoParticlePIDCorrKine.cxx:4 AliTwoParticlePIDCorrKine.cxx:5 AliTwoParticlePIDCorrKine.cxx:6 AliTwoParticlePIDCorrKine.cxx:7 AliTwoParticlePIDCorrKine.cxx:8 AliTwoParticlePIDCorrKine.cxx:9 AliTwoParticlePIDCorrKine.cxx:10 AliTwoParticlePIDCorrKine.cxx:11 AliTwoParticlePIDCorrKine.cxx:12 AliTwoParticlePIDCorrKine.cxx:13 AliTwoParticlePIDCorrKine.cxx:14 AliTwoParticlePIDCorrKine.cxx:15 AliTwoParticlePIDCorrKine.cxx:16 AliTwoParticlePIDCorrKine.cxx:17 AliTwoParticlePIDCorrKine.cxx:18 AliTwoParticlePIDCorrKine.cxx:19 AliTwoParticlePIDCorrKine.cxx:20 AliTwoParticlePIDCorrKine.cxx:21 AliTwoParticlePIDCorrKine.cxx:22 AliTwoParticlePIDCorrKine.cxx:23 AliTwoParticlePIDCorrKine.cxx:24 AliTwoParticlePIDCorrKine.cxx:25 AliTwoParticlePIDCorrKine.cxx:26 AliTwoParticlePIDCorrKine.cxx:27 AliTwoParticlePIDCorrKine.cxx:28 AliTwoParticlePIDCorrKine.cxx:29 AliTwoParticlePIDCorrKine.cxx:30 AliTwoParticlePIDCorrKine.cxx:31 AliTwoParticlePIDCorrKine.cxx:32 AliTwoParticlePIDCorrKine.cxx:33 AliTwoParticlePIDCorrKine.cxx:34 AliTwoParticlePIDCorrKine.cxx:35 AliTwoParticlePIDCorrKine.cxx:36 AliTwoParticlePIDCorrKine.cxx:37 AliTwoParticlePIDCorrKine.cxx:38 AliTwoParticlePIDCorrKine.cxx:39 AliTwoParticlePIDCorrKine.cxx:40 AliTwoParticlePIDCorrKine.cxx:41 AliTwoParticlePIDCorrKine.cxx:42 AliTwoParticlePIDCorrKine.cxx:43 AliTwoParticlePIDCorrKine.cxx:44 AliTwoParticlePIDCorrKine.cxx:45 AliTwoParticlePIDCorrKine.cxx:46 AliTwoParticlePIDCorrKine.cxx:47 AliTwoParticlePIDCorrKine.cxx:48 AliTwoParticlePIDCorrKine.cxx:49 AliTwoParticlePIDCorrKine.cxx:50 AliTwoParticlePIDCorrKine.cxx:51 AliTwoParticlePIDCorrKine.cxx:52 AliTwoParticlePIDCorrKine.cxx:53 AliTwoParticlePIDCorrKine.cxx:54 AliTwoParticlePIDCorrKine.cxx:55 AliTwoParticlePIDCorrKine.cxx:56 AliTwoParticlePIDCorrKine.cxx:57 AliTwoParticlePIDCorrKine.cxx:58 AliTwoParticlePIDCorrKine.cxx:59 AliTwoParticlePIDCorrKine.cxx:60 AliTwoParticlePIDCorrKine.cxx:61 AliTwoParticlePIDCorrKine.cxx:62 AliTwoParticlePIDCorrKine.cxx:63 AliTwoParticlePIDCorrKine.cxx:64 AliTwoParticlePIDCorrKine.cxx:65 AliTwoParticlePIDCorrKine.cxx:66 AliTwoParticlePIDCorrKine.cxx:67 AliTwoParticlePIDCorrKine.cxx:68 AliTwoParticlePIDCorrKine.cxx:69 AliTwoParticlePIDCorrKine.cxx:70 AliTwoParticlePIDCorrKine.cxx:71 AliTwoParticlePIDCorrKine.cxx:72 AliTwoParticlePIDCorrKine.cxx:73 AliTwoParticlePIDCorrKine.cxx:74 AliTwoParticlePIDCorrKine.cxx:75 AliTwoParticlePIDCorrKine.cxx:76 AliTwoParticlePIDCorrKine.cxx:77 AliTwoParticlePIDCorrKine.cxx:78 AliTwoParticlePIDCorrKine.cxx:79 AliTwoParticlePIDCorrKine.cxx:80 AliTwoParticlePIDCorrKine.cxx:81 AliTwoParticlePIDCorrKine.cxx:82 AliTwoParticlePIDCorrKine.cxx:83 AliTwoParticlePIDCorrKine.cxx:84 AliTwoParticlePIDCorrKine.cxx:85 AliTwoParticlePIDCorrKine.cxx:86 AliTwoParticlePIDCorrKine.cxx:87 AliTwoParticlePIDCorrKine.cxx:88 AliTwoParticlePIDCorrKine.cxx:89 AliTwoParticlePIDCorrKine.cxx:90 AliTwoParticlePIDCorrKine.cxx:91 AliTwoParticlePIDCorrKine.cxx:92 AliTwoParticlePIDCorrKine.cxx:93 AliTwoParticlePIDCorrKine.cxx:94 AliTwoParticlePIDCorrKine.cxx:95 AliTwoParticlePIDCorrKine.cxx:96 AliTwoParticlePIDCorrKine.cxx:97 AliTwoParticlePIDCorrKine.cxx:98 AliTwoParticlePIDCorrKine.cxx:99 AliTwoParticlePIDCorrKine.cxx:100 AliTwoParticlePIDCorrKine.cxx:101 AliTwoParticlePIDCorrKine.cxx:102 AliTwoParticlePIDCorrKine.cxx:103 AliTwoParticlePIDCorrKine.cxx:104 AliTwoParticlePIDCorrKine.cxx:105 AliTwoParticlePIDCorrKine.cxx:106 AliTwoParticlePIDCorrKine.cxx:107 AliTwoParticlePIDCorrKine.cxx:108 AliTwoParticlePIDCorrKine.cxx:109 AliTwoParticlePIDCorrKine.cxx:110 AliTwoParticlePIDCorrKine.cxx:111 AliTwoParticlePIDCorrKine.cxx:112 AliTwoParticlePIDCorrKine.cxx:113 AliTwoParticlePIDCorrKine.cxx:114 AliTwoParticlePIDCorrKine.cxx:115 AliTwoParticlePIDCorrKine.cxx:116 AliTwoParticlePIDCorrKine.cxx:117 AliTwoParticlePIDCorrKine.cxx:118 AliTwoParticlePIDCorrKine.cxx:119 AliTwoParticlePIDCorrKine.cxx:120 AliTwoParticlePIDCorrKine.cxx:121 AliTwoParticlePIDCorrKine.cxx:122 AliTwoParticlePIDCorrKine.cxx:123 AliTwoParticlePIDCorrKine.cxx:124 AliTwoParticlePIDCorrKine.cxx:125 AliTwoParticlePIDCorrKine.cxx:126 AliTwoParticlePIDCorrKine.cxx:127 AliTwoParticlePIDCorrKine.cxx:128 AliTwoParticlePIDCorrKine.cxx:129 AliTwoParticlePIDCorrKine.cxx:130 AliTwoParticlePIDCorrKine.cxx:131 AliTwoParticlePIDCorrKine.cxx:132 AliTwoParticlePIDCorrKine.cxx:133 AliTwoParticlePIDCorrKine.cxx:134 AliTwoParticlePIDCorrKine.cxx:135 AliTwoParticlePIDCorrKine.cxx:136 AliTwoParticlePIDCorrKine.cxx:137 AliTwoParticlePIDCorrKine.cxx:138 AliTwoParticlePIDCorrKine.cxx:139 AliTwoParticlePIDCorrKine.cxx:140 AliTwoParticlePIDCorrKine.cxx:141 AliTwoParticlePIDCorrKine.cxx:142 AliTwoParticlePIDCorrKine.cxx:143 AliTwoParticlePIDCorrKine.cxx:144 AliTwoParticlePIDCorrKine.cxx:145 AliTwoParticlePIDCorrKine.cxx:146 AliTwoParticlePIDCorrKine.cxx:147 AliTwoParticlePIDCorrKine.cxx:148 AliTwoParticlePIDCorrKine.cxx:149 AliTwoParticlePIDCorrKine.cxx:150 AliTwoParticlePIDCorrKine.cxx:151 AliTwoParticlePIDCorrKine.cxx:152 AliTwoParticlePIDCorrKine.cxx:153 AliTwoParticlePIDCorrKine.cxx:154 AliTwoParticlePIDCorrKine.cxx:155 AliTwoParticlePIDCorrKine.cxx:156 AliTwoParticlePIDCorrKine.cxx:157 AliTwoParticlePIDCorrKine.cxx:158 AliTwoParticlePIDCorrKine.cxx:159 AliTwoParticlePIDCorrKine.cxx:160 AliTwoParticlePIDCorrKine.cxx:161 AliTwoParticlePIDCorrKine.cxx:162 AliTwoParticlePIDCorrKine.cxx:163 AliTwoParticlePIDCorrKine.cxx:164 AliTwoParticlePIDCorrKine.cxx:165 AliTwoParticlePIDCorrKine.cxx:166 AliTwoParticlePIDCorrKine.cxx:167 AliTwoParticlePIDCorrKine.cxx:168 AliTwoParticlePIDCorrKine.cxx:169 AliTwoParticlePIDCorrKine.cxx:170 AliTwoParticlePIDCorrKine.cxx:171 AliTwoParticlePIDCorrKine.cxx:172 AliTwoParticlePIDCorrKine.cxx:173 AliTwoParticlePIDCorrKine.cxx:174 AliTwoParticlePIDCorrKine.cxx:175 AliTwoParticlePIDCorrKine.cxx:176 AliTwoParticlePIDCorrKine.cxx:177 AliTwoParticlePIDCorrKine.cxx:178 AliTwoParticlePIDCorrKine.cxx:179 AliTwoParticlePIDCorrKine.cxx:180 AliTwoParticlePIDCorrKine.cxx:181 AliTwoParticlePIDCorrKine.cxx:182 AliTwoParticlePIDCorrKine.cxx:183 AliTwoParticlePIDCorrKine.cxx:184 AliTwoParticlePIDCorrKine.cxx:185 AliTwoParticlePIDCorrKine.cxx:186 AliTwoParticlePIDCorrKine.cxx:187 AliTwoParticlePIDCorrKine.cxx:188 AliTwoParticlePIDCorrKine.cxx:189 AliTwoParticlePIDCorrKine.cxx:190 AliTwoParticlePIDCorrKine.cxx:191 AliTwoParticlePIDCorrKine.cxx:192 AliTwoParticlePIDCorrKine.cxx:193