@@ -310,55 +310,21 @@ struct v0selector {
310310 if (fillhisto) {
311311 registry.fill (HIST (" hV0Candidate" ), 1 );
312312 }
313- if (std::fabs (V0.posTrack_as <FullTracksExt>().eta ()) > 0.9 ) {
314- continue ;
315- }
316- if (std::fabs (V0.negTrack_as <FullTracksExt>().eta ()) > 0.9 ) {
317- continue ;
318- }
319313
320- if (V0.posTrack_as <FullTracksExt>().tpcNClsCrossedRows () < mincrossedrows) {
321- continue ;
322- }
323- if (V0.negTrack_as <FullTracksExt>().tpcNClsCrossedRows () < mincrossedrows) {
324- continue ;
325- }
326- if (V0.posTrack_as <FullTracksExt>().tpcChi2NCl () > maxchi2tpc) {
327- continue ;
328- }
329- if (V0.negTrack_as <FullTracksExt>().tpcChi2NCl () > maxchi2tpc) {
330- continue ;
331- }
332- if (std::fabs (V0.posTrack_as <FullTracksExt>().dcaXY ()) < dcamin) {
333- continue ;
334- }
335- if (std::fabs (V0.negTrack_as <FullTracksExt>().dcaXY ()) < dcamin) {
336- continue ;
337- }
338- if (std::fabs (V0.posTrack_as <FullTracksExt>().dcaXY ()) > dcamax) {
339- continue ;
340- }
341- if (std::fabs (V0.negTrack_as <FullTracksExt>().dcaXY ()) > dcamax) {
342- continue ;
343- }
314+ const auto & posTrack = casc.posTrack_as <FullTracksExt>();
315+ const auto & negTrack = casc.negTrack_as <FullTracksExt>();
344316
345- if (V0.posTrack_as <FullTracksExt>().sign () * V0.negTrack_as <FullTracksExt>().sign () > 0 ) { // reject same sign pair
346- continue ;
317+ bool isRejectV0{false };
318+ for (const auto & prong : std::array<FullTracksExt, 2 >{posTrack, negTrack}) {
319+ isRejectV0 = isRejectV0 || std::fabs (prong.eta ()) > 0.9 ;
320+ isRejectV0 = isRejectV0 || prong.tpcNClsCrossedRows () < mincrossedrows;
321+ isRejectV0 = isRejectV0 || prong.tpcChi2NCl () > maxchi2tpc;
322+ isRejectV0 = isRejectV0 || std::fabs (prong.dcaXY ()) < dcamin;
323+ isRejectV0 = isRejectV0 || std::fabs (prong.dcaXY ()) > dcamax;
347324 }
325+ isRejectV0 = isRejectV0 || (posTrack.sign () * negTrack.sign () > 0 );
348326
349- // if (V0.posTrack_as<FullTracksExt>().collisionId() != V0.negTrack_as<FullTracksExt>().collisionId()) {
350- // continue;
351- // }
352-
353- // if (!V0.posTrack_as<FullTracksExt>().has_collision() || !V0.negTrack_as<FullTracksExt>().has_collision()) {
354- // continue;
355- // }
356-
357- // auto const& collision = V0.collision_as<aod::Collisions>();
358-
359- // if (V0.collisionId() != collision.globalIndex()) {
360- // continue;
361- // }
327+ if (isRejectV0) continue ;
362328
363329 float V0dca = V0.dcaV0daughters ();
364330 float V0CosinePA = V0.v0cosPA ();
@@ -471,56 +437,21 @@ struct v0selector {
471437 registry.fill (HIST (" hCascCandidate" ), 1 );
472438 }
473439
474- if (std::fabs (casc.posTrack_as <FullTracksExt>().eta ()) > 0.9 ) {
475- continue ;
476- }
477- if (std::fabs (casc.negTrack_as <FullTracksExt>().eta ()) > 0.9 ) {
478- continue ;
479- }
480- if (std::fabs (casc.negTrack_as <FullTracksExt>().eta ()) > 0.9 ) {
481- continue ;
482- }
440+ const auto & posTrack = casc.posTrack_as <FullTracksExt>();
441+ const auto & negTrack = casc.negTrack_as <FullTracksExt>();
442+ const auto & bachelor = casc.bachelor_as <FullTracksExt>();
483443
484- if (casc.posTrack_as <FullTracksExt>().tpcNClsCrossedRows () < mincrossedrows) {
485- continue ;
486- }
487- if (casc.negTrack_as <FullTracksExt>().tpcNClsCrossedRows () < mincrossedrows) {
488- continue ;
489- }
490- if (casc.bachelor_as <FullTracksExt>().tpcNClsCrossedRows () < mincrossedrows) {
491- continue ;
492- }
493- if (casc.posTrack_as <FullTracksExt>().tpcChi2NCl () > maxchi2tpc) {
494- continue ;
495- }
496- if (casc.negTrack_as <FullTracksExt>().tpcChi2NCl () > maxchi2tpc) {
497- continue ;
498- }
499- if (casc.bachelor_as <FullTracksExt>().tpcChi2NCl () > maxchi2tpc) {
500- continue ;
501- }
502- if (std::fabs (casc.posTrack_as <FullTracksExt>().dcaXY ()) < dcamin) {
503- continue ;
504- }
505- if (std::fabs (casc.negTrack_as <FullTracksExt>().dcaXY ()) < dcamin) {
506- continue ;
507- }
508- if (std::fabs (casc.bachelor_as <FullTracksExt>().dcaXY ()) < dcamin) {
509- continue ;
510- }
511- if (std::fabs (casc.posTrack_as <FullTracksExt>().dcaXY ()) > dcamax) {
512- continue ;
513- }
514- if (std::fabs (casc.negTrack_as <FullTracksExt>().dcaXY ()) > dcamax) {
515- continue ;
516- }
517- if (std::fabs (casc.bachelor_as <FullTracksExt>().dcaXY ()) > dcamax) {
518- continue ;
444+ bool isRejectCascade{false };
445+ for (const auto & prong : std::array<FullTracksExt, 3 >{posTrack, negTrack, bachelor}) {
446+ isRejectCascade = isRejectCascade || std::fabs (prong.eta ()) > 0.9 ;
447+ isRejectCascade = isRejectCascade || prong.tpcNClsCrossedRows () < mincrossedrows;
448+ isRejectCascade = isRejectCascade || prong.tpcChi2NCl () > maxchi2tpc;
449+ isRejectCascade = isRejectCascade || std::fabs (prong.dcaXY ()) < dcamin;
450+ isRejectCascade = isRejectCascade || std::fabs (prong.dcaXY ()) > dcamax;
519451 }
452+ isRejectCascade = isRejectCascade || (posTrack.sign () * negTrack.sign () > 0 );
520453
521- if (casc.posTrack_as <FullTracksExt>().sign () * casc.negTrack_as <FullTracksExt>().sign () > 0 ) { // reject same sign pair
522- continue ;
523- }
454+ if (isRejectCascade) continue ;
524455
525456 if (fillhisto) {
526457 registry.fill (HIST (" hCascCandidate" ), 2 );
0 commit comments