@@ -2641,72 +2641,72 @@ struct Lambdastarproxy {
26412641
26422642 // --- SAME-EVENT: genuine pK #Lambda^{*} candidates ---
26432643 if (hasProtonCandidates) {
2644- for (auto const & pr : protonCands) {
2645- for (auto const & k : kaonCands) {
2646- if (pr.tid == k.tid ) {
2647- continue ;
2648- }
2649- const double mass = invariantMass (pr.px , pr.py , pr.pz , MassProton,
2650- k.px , k.py , k.pz , MassKaonCharged);
2651-
2652- const float pxTot = pr.px + k.px ;
2653- const float pyTot = pr.py + k.py ;
2654- const float pzTot = pr.pz + k.pz ;
2655- const float ptPair = ptFromPxPy (pxTot, pyTot);
2656- const float phiPair = phiFromPxPy (pxTot, pyTot);
2644+ for (auto const & pr : protonCands) {
2645+ for (auto const & k : kaonCands) {
2646+ if (pr.tid == k.tid ) {
2647+ continue ;
2648+ }
2649+ const double mass = invariantMass (pr.px , pr.py , pr.pz , MassProton,
2650+ k.px , k.py , k.pz , MassKaonCharged);
26572651
2658- const float yPair = rapidityFromMomentumAndMass (pxTot, pyTot, pzTot, mass);
2652+ const float pxTot = pr.px + k.px ;
2653+ const float pyTot = pr.py + k.py ;
2654+ const float pzTot = pr.pz + k.pz ;
2655+ const float ptPair = ptFromPxPy (pxTot, pyTot);
2656+ const float phiPair = phiFromPxPy (pxTot, pyTot);
26592657
2660- if (std::abs (yPair) > lstarLambdaAbsYMax.value ) {
2661- continue ;
2662- }
2658+ const float yPair = rapidityFromMomentumAndMass (pxTot, pyTot, pzTot, mass);
26632659
2664- const bool unlikeSignPK = (pr.charge * k.charge ) < 0 ;
2665- if (unlikeSignPK) {
2666- histos.fill (HIST (" hInvMassPKUnlike" ), mass);
2667- if (lstarEnableSparse.value != 0 ) {
2668- histos.fill (HIST (" hLambdaStarPKUnlikeSparse" ), mass, ptPair, eventMult);
2660+ if (std::abs (yPair) > lstarLambdaAbsYMax.value ) {
2661+ continue ;
26692662 }
2670- } else {
2671- histos.fill (HIST (" hInvMassPKLike" ), mass);
2672- if (lstarEnableSparse.value != 0 ) {
2673- histos.fill (HIST (" hLambdaStarPKLikeSparse" ), mass, ptPair, eventMult);
2663+
2664+ const bool unlikeSignPK = (pr.charge * k.charge ) < 0 ;
2665+ if (unlikeSignPK) {
2666+ histos.fill (HIST (" hInvMassPKUnlike" ), mass);
2667+ if (lstarEnableSparse.value != 0 ) {
2668+ histos.fill (HIST (" hLambdaStarPKUnlikeSparse" ), mass, ptPair, eventMult);
2669+ }
2670+ } else {
2671+ histos.fill (HIST (" hInvMassPKLike" ), mass);
2672+ if (lstarEnableSparse.value != 0 ) {
2673+ histos.fill (HIST (" hLambdaStarPKLikeSparse" ), mass, ptPair, eventMult);
2674+ }
26742675 }
26752676 }
26762677 }
26772678 }
2678- }
26792679
26802680 // --- SAME-EVENT: proxy (d/2) + K ---
26812681 if (hasProxyCandidates) {
2682- for (auto const & pr : proxyCands) {
2683- for (auto const & k : kaonCands) {
2684- if (pr.tid == k.tid )
2685- continue ; // sanity check: should never match, but just in case of bug in candidate-building logic
2686- const double mass = invariantMass (pr.px , pr.py , pr.pz , MassProton, k.px , k.py , k.pz , MassKaonCharged);
2687-
2688- const float pxTot = pr.px + k.px ;
2689- const float pyTot = pr.py + k.py ;
2690- const float pzTot = pr.pz + k.pz ;
2691- const float ptPair = ptFromPxPy (pxTot, pyTot);
2692- const float phiPair = phiFromPxPy (pxTot, pyTot);
2693-
2694- const float yPair = rapidityFromMomentumAndMass (pxTot, pyTot, pzTot, mass);
2695-
2696- // Inclusive invariant-mass spectrum for the #Lambda^{*} proxy (d/2 + K)
2697- histos.fill (HIST (" hDeuteronProxyMass" ), mass);
2698- if (lstarEnableSparse.value != 0 ) {
2699- histos.fill (HIST (" hLambdaStarProxySparse" ), mass, ptPair, eventMult);
2700-
2701- // Like-sign proxy background: proxy and kaon have the same charge sign.
2702- // Here the proxy charge follows the original deuteron-candidate charge.
2703- if ((pr.charge * k.charge ) > 0 ) {
2704- histos.fill (HIST (" hLambdaStarProxyLikeSparse" ), mass, ptPair, eventMult);
2682+ for (auto const & pr : proxyCands) {
2683+ for (auto const & k : kaonCands) {
2684+ if (pr.tid == k.tid )
2685+ continue ; // sanity check: should never match, but just in case of bug in candidate-building logic
2686+ const double mass = invariantMass (pr.px , pr.py , pr.pz , MassProton, k.px , k.py , k.pz , MassKaonCharged);
2687+
2688+ const float pxTot = pr.px + k.px ;
2689+ const float pyTot = pr.py + k.py ;
2690+ const float pzTot = pr.pz + k.pz ;
2691+ const float ptPair = ptFromPxPy (pxTot, pyTot);
2692+ const float phiPair = phiFromPxPy (pxTot, pyTot);
2693+
2694+ const float yPair = rapidityFromMomentumAndMass (pxTot, pyTot, pzTot, mass);
2695+
2696+ // Inclusive invariant-mass spectrum for the #Lambda^{*} proxy (d/2 + K)
2697+ histos.fill (HIST (" hDeuteronProxyMass" ), mass);
2698+ if (lstarEnableSparse.value != 0 ) {
2699+ histos.fill (HIST (" hLambdaStarProxySparse" ), mass, ptPair, eventMult);
2700+
2701+ // Like-sign proxy background: proxy and kaon have the same charge sign.
2702+ // Here the proxy charge follows the original deuteron-candidate charge.
2703+ if ((pr.charge * k.charge ) > 0 ) {
2704+ histos.fill (HIST (" hLambdaStarProxyLikeSparse" ), mass, ptPair, eventMult);
2705+ }
27052706 }
27062707 }
27072708 }
27082709 }
2709- }
27102710
27112711 // --- MIXED-EVENT: current kaons + previous-event real protons ---
27122712 // This fills the standard pK mixed-event background.
0 commit comments