@@ -169,6 +169,7 @@ class FemtoUniverseDetaDphiStar
169169 }
170170 auto deta = part1.eta () - part2.eta ();
171171 auto dphiAvg = averagePhiStar (part1, part2, 0 );
172+ auto dphi = averagePhiStarFrac (part1, part2);
172173 if (ChosenEventType == femto_universe_container::EventType::same) {
173174 histdetadpisame[0 ][0 ]->Fill (deta, dphiAvg);
174175 } else if (ChosenEventType == femto_universe_container::EventType::mixed) {
@@ -177,7 +178,8 @@ class FemtoUniverseDetaDphiStar
177178 LOG (fatal) << " FemtoUniverseDetaDphiStar: passed arguments don't agree with FemtoUniverseDetaDphiStar's type of events! Please provide same or mixed." ;
178179 }
179180
180- if (std::pow (dphiAvg, 2 ) / std::pow (cutDeltaPhiStarMax, 2 ) + std::pow (deta, 2 ) / std::pow (cutDeltaEtaMax, 2 ) < 1 .) {
181+ // if (std::pow(dphiAvg, 2) / std::pow(cutDeltaPhiStarMax, 2) + std::pow(deta, 2) / std::pow(cutDeltaEtaMax, 2) < 1.) {
182+ if (dphi > 0.02 ) {
181183 return true ;
182184 } else {
183185 if (ChosenEventType == femto_universe_container::EventType::same) {
@@ -554,6 +556,36 @@ class FemtoUniverseDetaDphiStar
554556 return dPhiAvg / static_cast <float >(entries);
555557 }
556558
559+ // / Calculate average phi
560+ template <typename T1, typename T2>
561+ float averagePhiStarFrac (const T1& part1, const T2& part2)
562+ {
563+ std::vector<float > tmpVec1;
564+ std::vector<float > tmpVec2;
565+ phiAtRadiiTPC (part1, tmpVec1);
566+ phiAtRadiiTPC (part2, tmpVec2);
567+ int num = tmpVec1.size ();
568+ float dphi = 0 ;
569+ int entries = 0 ;
570+ double distance = 0 ;
571+ int badpoints = 0 ;
572+
573+ for (int i = 0 ; i < num; i++) {
574+ if (tmpVec1.at (i) != 999 && tmpVec2.at (i) != 999 ) {
575+ dphi = tmpVec1.at (i) - tmpVec2.at (i);
576+ entries++;
577+ } else {
578+ dphi = 0 ;
579+ }
580+ dphi = TVector2::Phi_mpi_pi (dphi);
581+ distance = 2 * TMath::Sin (TMath::Abs (dphi) * 0.5 ) * TmpRadiiTPC[i];
582+ if (distance < 10.0 ) {
583+ badpoints++;
584+ }
585+ }
586+ return badpoints / entries;
587+ }
588+
557589 // Get particle charge from mask
558590 template <typename T1>
559591 float getCharge (const T1& part)
0 commit comments