AliAODEvent::GetHeader() returns AliVHeader
[u/mrichter/AliRoot.git] / PWGCF / Correlations / DPhi / MuonHadron / AliAnalysisTaskDiMuonCorrelations.cxx
index 3681799..f0832b8 100644 (file)
@@ -209,20 +209,20 @@ void AliAnalysisTaskDiMuonCorrelations::UserCreateOutputObjects() {
 
     fHistNMuons_vs_NMuons[iCent] = new TH2D(Form("fHistNMuons_vs_NMuons_Cent%02d",iCent),
                                                  Form("%d-%d %%",Int_t(fCentAxis->GetBinLowEdge(iCent+1)),Int_t(fCentAxis->GetBinUpEdge(iCent+1))),
-                                                 100, 0, 500, 20, 0, 20);
+                                                 20, 0, 20, 20, 0, 20);
     fHistNMuons_vs_NMuons[iCent] -> SetXTitle("N_{tracks} Muon Arm");
     fHistNMuons_vs_NMuons[iCent] -> SetYTitle("N_{tracks} Muon Arm");
     fHistNMuons_vs_NMuons[iCent] -> Sumw2();
 
     fHistNMuons_vs_NMuons_Mixed[iCent] = new TH2D(Form("fHistNMuons_vs_NMuons_Mixed_Cent%02d",iCent),
                                                  Form("%d-%d %% MIXED",Int_t(fCentAxis->GetBinLowEdge(iCent+1)),Int_t(fCentAxis->GetBinUpEdge(iCent+1))),
-                                                 100, 0, 500, 20, 0, 20);
+                                                 20, 0, 20, 20, 0, 20);
     fHistNMuons_vs_NMuons_Mixed[iCent] -> SetXTitle("N_{tracks} Muon Arm");
     fHistNMuons_vs_NMuons_Mixed[iCent] -> SetYTitle("N_{tracks} Muon Arm");
     fHistNMuons_vs_NMuons_Mixed[iCent] -> Sumw2();
 
-    fHistTracksEtavsEta[iCent]       = new TH2D(Form("fHistTracksEtavsEta_%02d",iCent),       "#eta 1st muon vs #eta 2nd muon", 100,-4.5,-2.,100,-1.5,1.5);
-    fHistTracksEtavsEta_Mixed[iCent] = new TH2D(Form("fHistTracksEtavsEta_Mixed_%02d",iCent), "#eta 1st muon vs #eta 2nd muon", 100,-4.5,-2.,100,-1.5,1.5);
+    fHistTracksEtavsEta[iCent]       = new TH2D(Form("fHistTracksEtavsEta_%02d",iCent),       "#eta 1st muon vs #eta 2nd muon", 100,-4.5,-2.,100,-4.5,-2.);
+    fHistTracksEtavsEta_Mixed[iCent] = new TH2D(Form("fHistTracksEtavsEta_Mixed_%02d",iCent), "#eta 1st muon vs #eta 2nd muon", 100,-4.5,-2.,100,-4.5,-2.);
 
     fOutputList -> Add(fHistNMuons_vs_NMuons[iCent]);
     fOutputList -> Add(fHistNMuons_vs_NMuons_Mixed[iCent]);
@@ -330,7 +330,8 @@ void AliAnalysisTaskDiMuonCorrelations::UserExec(Option_t *) {
     fMuonTrack[0] = (AliAODTrack*) tracksMuonArm->At(iTrMuon1);
     fHistSingleMuonsPt[centBin]->Fill(fMuonTrack[0]->Pt());
     fHistSingleMuonsEtaPt[centBin]->Fill(fMuonTrack[0]->Pt(),fMuonTrack[0]->Eta());
-    for (Int_t iTrMuon2=iTrMuon1+1; iTrMuon2<tracksMuonArm->GetEntriesFast(); iTrMuon2++) {
+    for (Int_t iTrMuon2=0; iTrMuon2<tracksMuonArm->GetEntriesFast(); iTrMuon2++) {
+      if (iTrMuon2 == iTrMuon1) continue;
       fMuonTrack[1] = (AliAODTrack*) tracksMuonArm -> At(iTrMuon2);
       FillHistograms(centBin, kSingleEvent);
     }
@@ -356,8 +357,6 @@ void AliAnalysisTaskDiMuonCorrelations::UserExec(Option_t *) {
   }
   pool->UpdatePool(tracksMuonArm);
 
-  delete tracksMuonArm;
-
   PostData(1, fOutputList); 
 
 }
@@ -366,11 +365,20 @@ void AliAnalysisTaskDiMuonCorrelations::UserExec(Option_t *) {
 
 void AliAnalysisTaskDiMuonCorrelations::FillHistograms(Int_t centrality, Int_t option) {
 
+  if (fLikeSign) {
+    if ((fMuonTrack[0]->Charge()*fMuonTrack[1]->Charge()) <= 0) return;
+  }
+  else {
+    if ((fMuonTrack[0]->Charge()*fMuonTrack[1]->Charge()) >= 0) return;
+  }
+
   Int_t ptBinTrackMuon1 = fPtAxis -> FindBin(fMuonTrack[0]->Pt());
   Int_t ptBinTrackMuon2 = fPtAxis -> FindBin(fMuonTrack[1]->Pt());
 
   if (ptBinTrackMuon1<1 || ptBinTrackMuon1>fNbinsPt || ptBinTrackMuon2<1 || ptBinTrackMuon2>fNbinsPt) return;
 
+  if (fMuonTrack[0]->Pt() < fMuonTrack[1]->Pt()) return;
+
   Double_t deltaPhi = fMuonTrack[0]->Phi() - fMuonTrack[1]->Phi();
   if (deltaPhi >  1.5*TMath::Pi()) deltaPhi -= TMath::TwoPi();
   if (deltaPhi < -0.5*TMath::Pi()) deltaPhi += TMath::TwoPi();
@@ -415,7 +423,7 @@ TObjArray* AliAnalysisTaskDiMuonCorrelations::GetAcceptedTracksMuonArm(AliAODEve
   TObjArray *tracks = new TObjArray;
   tracks->SetOwner(kFALSE);
 
-  Int_t nTracks = aodEvent->GetNTracks();
+  Int_t nTracks = aodEvent->GetNumberOfTracks();
 
   AliAODTrack *track = 0;
   
@@ -503,7 +511,7 @@ Int_t AliAnalysisTaskDiMuonCorrelations::GetCentBin() {
 
 Double_t AliAnalysisTaskDiMuonCorrelations::GetITSMultiplicity() {
 
-  Double_t multiplicity = fAOD->GetHeader()->GetNumberOfITSClusters(1);
+  Double_t multiplicity = ((AliVAODHeader*)fAOD->GetHeader())->GetNumberOfITSClusters(1);
 
   return multiplicity;