- if (TMath::Abs(s1->GetC()-s2->GetC())>0.004) return;
- if (TMath::Abs(s1->GetTgl()-s2->GetTgl())>0.6) return;
-
- Float_t dz2 =(s1->GetZ() - s2->GetZ());
- dz2*=dz2;
- Float_t dy2 =(s1->GetY() - s2->GetY());
- dy2*=dy2;
- Float_t distance = dz2+dy2;
- if (distance>325.) return ; // if there are far away - not overlap - to reduce combinatorics
+ Float_t thetaCut = 0.2;//+10.*TMath::Sqrt(s1->GetSigmaTglZ()+ s2->GetSigmaTglZ());
+ if (TMath::Abs(s1->GetTgl()-s2->GetTgl())>thetaCut) return;
+ Float_t minCl = TMath::Min(s1->GetNumberOfClusters(),s2->GetNumberOfClusters());
+ Int_t cutN0 = TMath::Max(5,TMath::Nint(0.1*minCl));