@@ -593,75 +593,70 @@ struct ThreeParticleCorrelations {
593593 void processMCSame (MyFilteredMCGenCollision const & collision, MyFilteredMCParticles const &, soa::SmallGroups<MCRecCollisions> const & recCollisions)
594594 {
595595
596- if (recCollisions.size () == 1 ) {
597- for (const auto & recCollision : recCollisions) {
598- if (!acceptEvent (recCollision, false )) {
599- return ;
600- }
601- }
602- }
596+ if (recCollisions.size () == 1 && acceptEvent (recCollisions.begin (), false )) {
603597
604- rQARegistry.fill (HIST (" hEventCentrality_MC" ), collision.bestCollisionCentFT0C ());
605- auto groupMCTriggers = mcTriggers->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
606- auto groupMCAssociates = mcAssociates->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
598+ rQARegistry.fill (HIST (" hEventCentrality_MC" ), collision.bestCollisionCentFT0C ());
599+ auto groupMCTriggers = mcTriggers->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
600+ auto groupMCAssociates = mcAssociates->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
607601
608- // Start of the MC Track QA
609- for (const auto & track : groupMCAssociates) {
610- if (track.isPhysicalPrimary ()) {
602+ // Start of the MC Track QA
603+ for (const auto & track : groupMCAssociates) {
604+ if (track.isPhysicalPrimary ()) {
611605
612- if (track.pdgCode () > 0 ) {
613- assocSign = 1 ;
614- } else if (track.pdgCode () < 0 ) {
615- assocSign = -1 ;
616- }
606+ if (track.pdgCode () > 0 ) {
607+ assocSign = 1 ;
608+ } else if (track.pdgCode () < 0 ) {
609+ assocSign = -1 ;
610+ }
617611
618- if (std::abs (track.pdgCode ()) == kPiPlus ) { // Pions
619- rQARegistry.fill (HIST (" hPtPion_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
620- } else if (std::abs (track.pdgCode ()) == kKPlus ) { // Kaons
621- rQARegistry.fill (HIST (" hPtKaon_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
622- } else if (std::abs (track.pdgCode ()) == kProton ) { // Protons
623- rQARegistry.fill (HIST (" hPtProton_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
612+ if (std::abs (track.pdgCode ()) == kPiPlus ) { // Pions
613+ rQARegistry.fill (HIST (" hPtPion_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
614+ } else if (std::abs (track.pdgCode ()) == kKPlus ) { // Kaons
615+ rQARegistry.fill (HIST (" hPtKaon_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
616+ } else if (std::abs (track.pdgCode ()) == kProton ) { // Protons
617+ rQARegistry.fill (HIST (" hPtProton_MC" ), track.pt (), collision.bestCollisionCentFT0C (), assocSign);
618+ }
624619 }
625620 }
626- }
627- // End of the MC Track QA
621+ // End of the MC Track QA
628622
629- // Start of the MC Same-Event correlations
630- for (const auto & trigger : groupMCTriggers) {
631- if (trigger.isPhysicalPrimary ()) {
623+ // Start of the MC Same-Event correlations
624+ for (const auto & trigger : groupMCTriggers) {
625+ if (trigger.isPhysicalPrimary ()) {
632626
633- if (trigger.pdgCode () > 0 ) {
634- triggSign = 1 ;
635- } else if (trigger.pdgCode () < 0 ) {
636- triggSign = -1 ;
637- }
638- rQARegistry.fill (HIST (" hPtV0_MC" ), trigger.pt (), collision.bestCollisionCentFT0C (), triggSign);
639- rQARegistry.fill (HIST (" hNLambdas" ), triggSign, trigger.pt (), collision.bestCollisionCentFT0C ());
627+ if (trigger.pdgCode () > 0 ) {
628+ triggSign = 1 ;
629+ } else if (trigger.pdgCode () < 0 ) {
630+ triggSign = -1 ;
631+ }
632+ rQARegistry.fill (HIST (" hPtV0_MC" ), trigger.pt (), collision.bestCollisionCentFT0C (), triggSign);
633+ rQARegistry.fill (HIST (" hNLambdas" ), triggSign, trigger.pt (), collision.bestCollisionCentFT0C ());
640634
641- for (const auto & associate : groupMCAssociates) {
642- if (associate.isPhysicalPrimary ()) {
635+ for (const auto & associate : groupMCAssociates) {
636+ if (associate.isPhysicalPrimary ()) {
643637
644- if (associate.pdgCode () > 0 ) {
645- assocSign = 1 ;
646- } else if (associate.pdgCode () < 0 ) {
647- assocSign = -1 ;
648- }
638+ if (associate.pdgCode () > 0 ) {
639+ assocSign = 1 ;
640+ } else if (associate.pdgCode () < 0 ) {
641+ assocSign = -1 ;
642+ }
649643
650- deltaPhi = RecoDecay::constrainAngle (trigger.phi () - associate.phi (), -constants::math::PIHalf);
651- deltaEta = trigger.eta () - associate.eta ();
644+ deltaPhi = RecoDecay::constrainAngle (trigger.phi () - associate.phi (), -constants::math::PIHalf);
645+ deltaEta = trigger.eta () - associate.eta ();
652646
653- if (std::abs (associate.pdgCode ()) == kPiPlus ) {
654- rSECorrRegistry.fill (HIST (" hSameLambdaPion_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
655- } else if (std::abs (associate.pdgCode ()) == kKPlus ) {
656- rSECorrRegistry.fill (HIST (" hSameLambdaKaon_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
657- } else if (std::abs (associate.pdgCode ()) == kProton ) {
658- rSECorrRegistry.fill (HIST (" hSameLambdaProton_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
647+ if (std::abs (associate.pdgCode ()) == kPiPlus ) {
648+ rSECorrRegistry.fill (HIST (" hSameLambdaPion_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
649+ } else if (std::abs (associate.pdgCode ()) == kKPlus ) {
650+ rSECorrRegistry.fill (HIST (" hSameLambdaKaon_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
651+ } else if (std::abs (associate.pdgCode ()) == kProton ) {
652+ rSECorrRegistry.fill (HIST (" hSameLambdaProton_MC" ), deltaPhi, deltaEta, collision.bestCollisionCentFT0C (), collision.posZ (), triggSign, assocSign);
653+ }
659654 }
660655 }
661656 }
662657 }
658+ // End of the MC Same-Event Correlations
663659 }
664- // End of the MC Same-Event Correlations
665660 }
666661
667662 void processMCMixed (MyFilteredMCGenCollisions const &, MyFilteredMCParticles const &, MyFilteredMCRecCollisions const & recCollisions)
@@ -671,44 +666,35 @@ struct ThreeParticleCorrelations {
671666 for (const auto & [coll_1, v0_1, coll_2, particle_2] : pairMC) {
672667 auto recCollsA1 = recCollisions.sliceBy (perMCCol, coll_1.globalIndex ());
673668 auto recCollsA2 = recCollisions.sliceBy (perMCCol, coll_2.globalIndex ());
674- if (recCollsA1.size () == 1 && recCollsA2.size () == 1 ) {
675- for (const auto & recColl_1 : recCollsA1) {
676- if (!acceptEvent (recColl_1, false )) {
677- continue ;
678- }
679- }
680- for (const auto & recColl_2 : recCollsA2) {
681- if (!acceptEvent (recColl_2, false )) {
682- continue ;
683- }
684- }
685- }
686-
687- auto groupMCTriggers = mcTriggers->sliceByCached (aod::mcparticle::mcCollisionId, coll_1.globalIndex (), cache);
688- auto groupMCAssociates = mcAssociates->sliceByCached (aod::mcparticle::mcCollisionId, coll_2.globalIndex (), cache);
689- for (const auto & [trigger, associate] : soa::combinations (soa::CombinationsFullIndexPolicy (groupMCTriggers, groupMCAssociates))) {
690- if (trigger.isPhysicalPrimary () && associate.isPhysicalPrimary ()) {
691-
692- if (trigger.pdgCode () > 0 ) {
693- triggSign = 1 ;
694- } else if (trigger.pdgCode () < 0 ) {
695- triggSign = -1 ;
696- }
697- if (associate.pdgCode () > 0 ) {
698- assocSign = 1 ;
699- } else if (associate.pdgCode () < 0 ) {
700- assocSign = -1 ;
701- }
669+ if (recCollsA1.size () == 1 && recCollsA2.size () == 1 && acceptEvent (recCollsA1.begin (), false ) && acceptEvent (recCollsA2.begin (), false )) {
670+
671+ LOGF (info, " Size_1 = %i, Size_2 = %i" , recCollsA1.size (), recCollsA1.size ());
672+ auto groupMCTriggers = mcTriggers->sliceByCached (aod::mcparticle::mcCollisionId, coll_1.globalIndex (), cache);
673+ auto groupMCAssociates = mcAssociates->sliceByCached (aod::mcparticle::mcCollisionId, coll_2.globalIndex (), cache);
674+ for (const auto & [trigger, associate] : soa::combinations (soa::CombinationsFullIndexPolicy (groupMCTriggers, groupMCAssociates))) {
675+ if (trigger.isPhysicalPrimary () && associate.isPhysicalPrimary ()) {
676+
677+ if (trigger.pdgCode () > 0 ) {
678+ triggSign = 1 ;
679+ } else if (trigger.pdgCode () < 0 ) {
680+ triggSign = -1 ;
681+ }
682+ if (associate.pdgCode () > 0 ) {
683+ assocSign = 1 ;
684+ } else if (associate.pdgCode () < 0 ) {
685+ assocSign = -1 ;
686+ }
702687
703- deltaPhi = RecoDecay::constrainAngle (trigger.phi () - associate.phi (), -constants::math::PIHalf);
704- deltaEta = trigger.eta () - associate.eta ();
688+ deltaPhi = RecoDecay::constrainAngle (trigger.phi () - associate.phi (), -constants::math::PIHalf);
689+ deltaEta = trigger.eta () - associate.eta ();
705690
706- if (std::abs (associate.pdgCode ()) == kPiPlus ) {
707- rMECorrRegistry.fill (HIST (" hMixLambdaPion_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
708- } else if (std::abs (associate.pdgCode ()) == kKPlus ) {
709- rMECorrRegistry.fill (HIST (" hMixLambdaKaon_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
710- } else if (std::abs (associate.pdgCode ()) == kProton ) {
711- rMECorrRegistry.fill (HIST (" hMixLambdaProton_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
691+ if (std::abs (associate.pdgCode ()) == kPiPlus ) {
692+ rMECorrRegistry.fill (HIST (" hMixLambdaPion_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
693+ } else if (std::abs (associate.pdgCode ()) == kKPlus ) {
694+ rMECorrRegistry.fill (HIST (" hMixLambdaKaon_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
695+ } else if (std::abs (associate.pdgCode ()) == kProton ) {
696+ rMECorrRegistry.fill (HIST (" hMixLambdaProton_MC" ), deltaPhi, deltaEta, coll_1.bestCollisionCentFT0C (), coll_1.posZ (), triggSign, assocSign);
697+ }
712698 }
713699 }
714700 }
@@ -719,51 +705,46 @@ struct ThreeParticleCorrelations {
719705 void processMCGen (MyFilteredMCGenCollision const & collision, MyFilteredMCParticles const &, soa::SmallGroups<MCRecCollisions> const & recCollisions)
720706 {
721707
722- if (recCollisions.size () == 1 ) {
723- for (const auto & recCollision : recCollisions) {
724- if (!acceptEvent (recCollision, false )) {
725- return ;
726- }
727- }
728- }
729-
730- auto groupMCTracks = mcTracks->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
731- auto groupMCV0s = mcV0s->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
732-
733- // Start of the Monte-Carlo generated QA
734- for (const auto & particle : groupMCTracks) {
735- if (particle.isPhysicalPrimary ()) {
736-
737- // Track efficiency - Generated
738- rMCRegistry.fill (HIST (" hGenerated" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
739- if (particle.pdgCode () == kPiPlus ) { // Pos pions
740- rMCRegistry.fill (HIST (" hGenPionP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
741- } else if (particle.pdgCode () == kPiMinus ) { // Neg pions
742- rMCRegistry.fill (HIST (" hGenPionN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
743- } else if (particle.pdgCode () == kKPlus ) { // Pos kaons
744- rMCRegistry.fill (HIST (" hGenKaonP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
745- } else if (particle.pdgCode () == kKMinus ) { // Neg kaons
746- rMCRegistry.fill (HIST (" hGenKaonN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
747- } else if (particle.pdgCode () == kProton ) { // Pos protons
748- rMCRegistry.fill (HIST (" hGenProtonP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
749- } else if (particle.pdgCode () == kProtonBar ) { // Neg protons
750- rMCRegistry.fill (HIST (" hGenProtonN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
708+ if (recCollisions.size () == 1 && acceptEvent (recCollisions.begin (), false )) {
709+
710+ auto groupMCTracks = mcTracks->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
711+ auto groupMCV0s = mcV0s->sliceByCached (aod::mcparticle::mcCollisionId, collision.globalIndex (), cache);
712+
713+ // Start of the Monte-Carlo generated QA
714+ for (const auto & particle : groupMCTracks) {
715+ if (particle.isPhysicalPrimary ()) {
716+
717+ // Track efficiency - Generated
718+ rMCRegistry.fill (HIST (" hGenerated" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
719+ if (particle.pdgCode () == kPiPlus ) { // Pos pions
720+ rMCRegistry.fill (HIST (" hGenPionP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
721+ } else if (particle.pdgCode () == kPiMinus ) { // Neg pions
722+ rMCRegistry.fill (HIST (" hGenPionN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
723+ } else if (particle.pdgCode () == kKPlus ) { // Pos kaons
724+ rMCRegistry.fill (HIST (" hGenKaonP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
725+ } else if (particle.pdgCode () == kKMinus ) { // Neg kaons
726+ rMCRegistry.fill (HIST (" hGenKaonN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
727+ } else if (particle.pdgCode () == kProton ) { // Pos protons
728+ rMCRegistry.fill (HIST (" hGenProtonP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
729+ } else if (particle.pdgCode () == kProtonBar ) { // Neg protons
730+ rMCRegistry.fill (HIST (" hGenProtonN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
731+ }
751732 }
752733 }
753- }
754734
755- for (const auto & particle : groupMCV0s) {
756- if (particle.isPhysicalPrimary ()) {
735+ for (const auto & particle : groupMCV0s) {
736+ if (particle.isPhysicalPrimary ()) {
757737
758- // V0 efficiency - Generated
759- if (particle.pdgCode () == kLambda0 ) { // Lambdas
760- rMCRegistry.fill (HIST (" hGenLambdaP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
761- } else if (particle.pdgCode () == kLambda0Bar ) { // AntiLambdas
762- rMCRegistry.fill (HIST (" hGenLambdaN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
738+ // V0 efficiency - Generated
739+ if (particle.pdgCode () == kLambda0 ) { // Lambdas
740+ rMCRegistry.fill (HIST (" hGenLambdaP" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
741+ } else if (particle.pdgCode () == kLambda0Bar ) { // AntiLambdas
742+ rMCRegistry.fill (HIST (" hGenLambdaN" ), particle.pt (), particle.eta (), collision.bestCollisionCentFT0C ());
743+ }
763744 }
764745 }
746+ // End of the Monte-Carlo generated QA
765747 }
766- // End of the Monte-Carlo generated QA
767748 }
768749
769750 void processMCRec (MyFilteredMCRecCollisions::iterator const & collision, MyMCV0s const & v0s, MyFilteredMCTracks const & tracks, aod::McCollisions const &, aod::McParticles const &)
0 commit comments