From 12524a2382b3034ea4ff20722ffa2353e0ac6284 Mon Sep 17 00:00:00 2001 From: gconesab Date: Thu, 14 May 2009 12:10:45 +0000 Subject: [PATCH] Corrected bug in cluster selection with PID --- .../AliAnaParticleHadronCorrelation.cxx | 26 ++++++++----------- ...liAnaParticleJetLeadingConeCorrelation.cxx | 2 +- PWG4/macros/AddTaskPartCorr.C | 1 + 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.cxx b/PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.cxx index 259a6da965b..28df77acc12 100755 --- a/PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.cxx +++ b/PWG4/PartCorrDep/AliAnaParticleHadronCorrelation.cxx @@ -468,8 +468,8 @@ void AliAnaParticleHadronCorrelation::MakeNeutralCorrelationFillAOD(AliAODPWG4P //Cluster selection, not charged, with photon or pi0 id and in fidutial cut Int_t pdg=0; if(!SelectCluster(calo, vertex, gammai, pdg)) continue ; - - if(GetDebug() > 2) + + if(GetDebug() > 2) printf("AliAnaParticleHadronCorrelation::MakeNeutralCorrelationFillAOD() - Neutral cluster in %s: pt %f, phi %f, phi trigger %f. Cuts: delta phi min %2.2f, max %2.2f, pT min %2.2f \n", detector.Data(), gammai.Pt(),gammai.Phi(),phiTrig,fDeltaPhiMinCut, fDeltaPhiMaxCut, GetMinPt()); @@ -633,18 +633,18 @@ Bool_t AliAnaParticleHadronCorrelation::SelectCluster(AliAODCaloCluster * calo, //Select cluster depending on its pid and acceptance selections //Skip matched clusters with tracks - if(calo->GetNTracksMatched() > 0) { - return kFALSE;} + if(calo->GetNTracksMatched() > 0) return kFALSE; + TString detector = ""; + if(calo->IsPHOSCluster()) detector= "PHOS"; + else if(calo->IsEMCALCluster()) detector= "EMCAL"; + //Check PID calo->GetMomentum(mom,vertex);//Assume that come from vertex in straight line pdg = AliCaloPID::kPhoton; if(IsCaloPIDOn()){ //Get most probable PID, 2 options check PID weights (in MC this option is mandatory) //or redo PID, recommended option for EMCal. - TString detector = ""; - if(calo->IsPHOSCluster()) detector= "PHOS"; - else if(calo->IsEMCALCluster()) detector= "EMCAL"; if(!IsCaloPIDRecalculationOn() || GetReader()->GetDataType() == AliCaloTrackReader::kMC ) pdg = GetCaloPID()->GetPdg(detector,calo->PID(),mom.E());//PID with weights @@ -654,19 +654,15 @@ Bool_t AliAnaParticleHadronCorrelation::SelectCluster(AliAODCaloCluster * calo, if(GetDebug() > 5) printf("AliAnaParticleHadronCorrelation::SelectCluster() - PDG of identified particle %d\n",pdg); //If it does not pass pid, skip - if(pdg != AliCaloPID::kPhoton || pdg != AliCaloPID::kPi0) { + if(pdg != AliCaloPID::kPhoton && pdg != AliCaloPID::kPi0) { return kFALSE ; } - } + }//PID on //Check acceptance selection if(IsFidutialCutOn()){ - Bool_t in = kFALSE; - if(calo->IsPHOSCluster()) - in = GetFidutialCut()->IsInFidutialCut(mom,"PHOS") ; - else if(calo->IsEMCALCluster()) - in = GetFidutialCut()->IsInFidutialCut(mom,"EMCAL") ; - if(! in ) { return kFALSE ;} + Bool_t in = GetFidutialCut()->IsInFidutialCut(mom,detector) ; + if(! in ) return kFALSE ; } if(GetDebug() > 5) printf("AliAnaParticleHadronCorrelation::SelectCluster() - Correlation photon selection cuts passed: pT %3.2f, pdg %d\n",mom.Pt(), pdg); diff --git a/PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.cxx b/PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.cxx index fc546a4ac4a..2ce67a4e453 100755 --- a/PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.cxx +++ b/PWG4/PartCorrDep/AliAnaParticleJetLeadingConeCorrelation.cxx @@ -1629,7 +1629,7 @@ Bool_t AliAnaParticleJetLeadingConeCorrelation::SelectCluster(AliAODCaloCluster // if(GetDebug() > 3) printf("AliAnaParticleJetLeadingConeCorrelation::SelectCluster() - PDG of identified particle %d\n",pdg); //If it does not pass pid, skip - if(pdg != AliCaloPID::kPhoton || pdg != AliCaloPID::kPi0) + if(pdg != AliCaloPID::kPhoton && pdg != AliCaloPID::kPi0) return kFALSE ; }//CaloPID diff --git a/PWG4/macros/AddTaskPartCorr.C b/PWG4/macros/AddTaskPartCorr.C index bd30f198130..f7341697555 100644 --- a/PWG4/macros/AddTaskPartCorr.C +++ b/PWG4/macros/AddTaskPartCorr.C @@ -131,6 +131,7 @@ AliAnalysisTaskParticleCorrelation *AddTaskPartCorr(TString data, TString calori anacorrhadron->SetOutputAODName("CorrelatedPi0s"+calorimeter); anacorrhadron->SetOutputAODClassName("AliAODPWG4ParticleCorrelation"); anacorrhadron->SetDebug(-1); + anacorrhadron->SwitchOffCaloPID(); anacorrhadron->SwitchOffFidutialCut(); anacorrhadron->SetPtCutRange(1,100); anacorrhadron->SetDeltaPhiCutRange(1.5,4.5); -- 2.31.1