Bool_t AliAnalysisEtSelectorEmcal::PassTrackMatchingCut(const AliESDCaloCluster& cluster) const
{
- Float_t pos[3];
+ Int_t nTracksMatched = cluster.GetNTracksMatched();
+ if(nTracksMatched == 0){
+ return kTRUE;
+ }
+
+ Int_t trackMatchedIndex = cluster.GetTrackMatchedIndex();
+ if(trackMatchedIndex < 0){
+ return kTRUE;
+ }
+ AliVParticle *track = fEvent->GetTrack(trackMatchedIndex);
+ if(track->Pt()<0.5) return kTRUE;//Track matches below about 500 MeV are mostly random. It takes ~460 MeV to reach the EMCal
- cluster.GetPosition(pos);
- Int_t trackMatchIdx = cluster.GetTrackMatchedIndex();
- Double_t distance = 9999.0;
- if(trackMatchIdx>-1)
- {
- distance = CalcTrackClusterDistance(pos, &trackMatchIdx);
- }
-
- return distance > fCuts->GetEmcalTrackDistanceCut();
+ //Float_t recoE = cluster.E();
+ //Float_t pos[3];
+
+// //cluster.GetPosition(pos);
+// Int_t trackMatchIdx = cluster.GetTrackMatchedIndex();
+// //Double_t distance = 9999.0;
+// if(trackMatchIdx>-1)
+// {
+// return kTRUE;
+// //distance = CalcTrackClusterDistance(pos, &trackMatchIdx);
+// }
+
+
+ return kFALSE;
+ //return distance > fCuts->GetEmcalTrackDistanceCut();
}
-Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const TParticle& part) const
+Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const TParticle& part)
{
+ float myphi = part.Phi();
+ myphi = AliAnalysisEtSelector::ShiftAngle(myphi);
return TMath::Abs(part.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
- && part.Phi() < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
- && part.Phi() > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
+ && myphi < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
+ && myphi > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
}
-Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const AliVTrack& part) const
+Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const AliVTrack& part)
{
- return TMath::Abs(part.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
- && part.Phi() < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
- && part.Phi() > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
+ float myphi = part.Phi();
+ myphi = AliAnalysisEtSelector::ShiftAngle(myphi);
+ return TMath::Abs(part.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
+ && myphi < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
+ && myphi > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
+}
+
+Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const AliESDCaloCluster& cluster)
+{
+ Float_t pos[3];
+ cluster.GetPosition(pos);
+ TVector3 cp(pos);
+ float myphi = cp.Phi();
+ myphi = AliAnalysisEtSelector::ShiftAngle(myphi);
+ return TMath::Abs(cp.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
+ && myphi < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
+ && myphi > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
}