additional fixes from Salvatore
authorloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 25 Mar 2013 10:02:48 +0000 (10:02 +0000)
committerloizides <loizides@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 25 Mar 2013 10:02:48 +0000 (10:02 +0000)
PWG/EMCAL/AliAnalysisTaskEMCALClusterizeFast.cxx
PWG/EMCAL/AliEmcalMCTrackSelector.cxx
PWGJE/EMCALJetTasks/AliAnalysisTaskDeltaPt.cxx
PWGJE/EMCALJetTasks/AliJetEmbeddingFromAODTask.cxx
PWGJE/EMCALJetTasks/AliJetResponseMaker.cxx

index 89aba2a..a608490 100644 (file)
@@ -832,7 +832,11 @@ void AliAnalysisTaskEMCALClusterizeFast::Init()
   }
 
   // then setup clusterizer
-  delete fClusterizer;
+  if (fClusterizer) {
+    // avoid to delete digits array
+    fClusterizer->SetDigitsArr(0);
+    delete fClusterizer;
+  }
   if (fRecParam->GetClusterizerFlag() == AliEMCALRecParam::kClusterizerv1)
     fClusterizer = new AliEMCALClusterizerv1(fGeom);
   else if (fRecParam->GetClusterizerFlag() == AliEMCALRecParam::kClusterizerNxN) {
index ace0d3f..f0d7d87 100644 (file)
@@ -88,7 +88,7 @@ void AliEmcalMCTrackSelector::UserCreateOutputObjects()
 
   fTracksMapName = fTracksOutName;
   fTracksMapName += "_Map";
-  fTracksMap = new AliNamedArrayI(fTracksMapName, 9999);
+  fTracksMap = new AliNamedArrayI(fTracksMapName, 99999);
 }
 
 //________________________________________________________________________
@@ -139,6 +139,9 @@ void AliEmcalMCTrackSelector::UserExec(Option_t *)
   // loop over tracks
   for (Int_t iTracks = 0, nacc = 0; iTracks < Ntracks; ++iTracks) {
 
+    if (iTracks >= fTracksMap->GetSize())
+      fTracksMap->Set(iTracks*2);
+
     fTracksMap->AddAt(-1, iTracks);
 
     AliVParticle* track = GetTrack(iTracks);
index 841b51a..caa78f5 100644 (file)
@@ -326,6 +326,10 @@ void AliAnalysisTaskDeltaPt::UserCreateOutputObjects()
     }
   }
 
+  delete[] binsPt;
+  delete[] binsCorrPt;
+  delete[] binsArea;
+
   PostData(1, fOutput); // Post data for ALL output slots >0 here, to get at least an empty histogram
 }
 
index 0398a83..dd0cd19 100644 (file)
@@ -571,7 +571,7 @@ void AliJetEmbeddingFromAODTask::Run()
            label = TMath::Abs(track->GetLabel());
          
          if (label == 0) 
-           AliWarning(Form("%s: Track %d with label==0", GetName(), i));
+           AliDebug(1,Form("%s: Track %d with label==0", GetName(), i));
        }
 
        AddTrack(track->Pt(), track->Eta(), track->Phi(), type, track->GetTrackEtaOnEMCal(), track->GetTrackPhiOnEMCal(), isEmc, label);
@@ -609,7 +609,7 @@ void AliJetEmbeddingFromAODTask::Run()
        if (fIsAODMC) {
          label = clus->GetLabel();
          if (label <= 0) 
-           AliWarning(Form("%s: Clus %d with label<=0", GetName(), i));
+           AliDebug(1,Form("%s: Clus %d with label<=0", GetName(), i));
        }
        AddCluster(clus);
       }
@@ -643,7 +643,7 @@ void AliJetEmbeddingFromAODTask::Run()
 
        if (fIsAODMC) {
          if (mclabel <= 0) 
-           AliWarning(Form("%s: Cell %d with label<=0", GetName(), i));
+           AliDebug(1,Form("%s: Cell %d with label<=0", GetName(), i));
        }
        else {
          mclabel = 0;
index 2bdca64..f9438d3 100644 (file)
@@ -1310,23 +1310,25 @@ void AliJetResponseMaker::GetSameCollectionsMatchingLevel(AliEmcalJet *jet1, Ali
       Int_t index2 = jet2->ClusterAt(iClus2);
       for (Int_t iClus = 0; iClus < jet1->GetNumberOfClusters(); iClus++) {
        Int_t index = jet1->ClusterAt(iClus);
-       AliVCluster *clus =  static_cast<AliVCluster*>(fCaloClusters->At(index));
-       if (!clus) {
-         AliWarning(Form("Could not find cluster %d!", index));
-         continue;
-       }
-       AliVCluster *clus2 =  static_cast<AliVCluster*>(fCaloClusters2->At(index2));
-       if (!clus2) {
-         AliWarning(Form("Could not find cluster %d!", index2));
-         continue;
+       if (index2 == index) { // found common particle
+         AliVCluster *clus =  static_cast<AliVCluster*>(fCaloClusters->At(index));
+         if (!clus) {
+           AliWarning(Form("Could not find cluster %d!", index));
+           continue;
+         }
+         AliVCluster *clus2 =  static_cast<AliVCluster*>(fCaloClusters2->At(index2));
+         if (!clus2) {
+           AliWarning(Form("Could not find cluster %d!", index2));
+           continue;
+         }
+         TLorentzVector part, part2;
+         clus->GetMomentum(part, const_cast<Double_t*>(fVertex));
+         clus2->GetMomentum(part2, const_cast<Double_t*>(fVertex));
+         
+         d1 -= part.Pt();
+         d2 -= part2.Pt();
+         break;
        }
-       TLorentzVector part, part2;
-       clus->GetMomentum(part, const_cast<Double_t*>(fVertex));
-       clus2->GetMomentum(part2, const_cast<Double_t*>(fVertex));
-
-       d1 -= part.Pt();
-       d2 -= part2.Pt();
-       break;
       }
     }