@@ -300,8 +300,10 @@ struct FlowEseTask {
300300
301301 AxisSpec shiftAxis = {10 , 0 , 10 , " shift" };
302302 AxisSpec basisAxis = {20 , 0 , 20 , " basis" };
303+ AxisSpec q2GroupAxis = {10 , 0.0 , 10.0 , " q_{2} percentile group" };
303304
304305 histos.add (" histQvecCent" , " " , {HistType::kTH2F , {q2QaAxis, centQaAxis}});
306+ histos.add (" histEventCountQ2Group" , " " , {HistType::kTH2F , {centQaAxis, q2GroupAxis}});
305307 histos.add (Form (" histVertex" ), " " , {HistType::kTHnSparseF , {vertexAxis, vertexAxis, vertexAxis, centAxis}});
306308 for (int iGroup = 0 ; iGroup < NQ2Groups; ++iGroup) {
307309 histos.add (Form (" histV2_%s" , q2GroupSuffix (iGroup)), " " , {HistType::kTHnSparseF , {centAxis, ptAxis, cosAxis}});
@@ -434,6 +436,13 @@ struct FlowEseTask {
434436 histos.add (Form (" psi%d/QA/EPRes_Det_RefA" , i), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
435437 histos.add (Form (" psi%d/QA/EPRes_Det_RefB" , i), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
436438 histos.add (Form (" psi%d/QA/EPRes_RefA_RefB" , i), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
439+ if (i == CorrLevel[0 ]) {
440+ for (int iGroup = 0 ; iGroup < NQ2Groups; ++iGroup) {
441+ histos.add (Form (" psi2/QA/EPRes_Det_RefA_%s" , q2GroupSuffix (iGroup)), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
442+ histos.add (Form (" psi2/QA/EPRes_Det_RefB_%s" , q2GroupSuffix (iGroup)), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
443+ histos.add (Form (" psi2/QA/EPRes_RefA_RefB_%s" , q2GroupSuffix (iGroup)), " " , {HistType::kTH2F , {centQaAxis, cosAxis}});
444+ }
445+ }
437446 histos.add (Form (" psi%d/QA/EP_FT0C_shifted" , i), " " , {HistType::kTH2F , {centQaAxis, epQaAxis}});
438447 histos.add (Form (" psi%d/QA/EP_FT0A_shifted" , i), " " , {HistType::kTH2F , {centQaAxis, epQaAxis}});
439448 histos.add (Form (" psi%d/QA/EP_FV0A_shifted" , i), " " , {HistType::kTH2F , {centQaAxis, epQaAxis}});
@@ -682,6 +691,63 @@ struct FlowEseTask {
682691 histos.fill (HIST (" psi2/QA/EPRes_Det_RefA" ), centrality, std::cos (std::atan2 (collision.qvecIm ()[qvecDetInd], collision.qvecRe ()[qvecDetInd]) - std::atan2 (collision.qvecIm ()[qvecRefAInd], collision.qvecRe ()[qvecRefAInd])));
683692 histos.fill (HIST (" psi2/QA/EPRes_Det_RefB" ), centrality, std::cos (std::atan2 (collision.qvecIm ()[qvecDetInd], collision.qvecRe ()[qvecDetInd]) - std::atan2 (collision.qvecIm ()[qvecRefBInd], collision.qvecRe ()[qvecRefBInd])));
684693 histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB" ), centrality, std::cos (std::atan2 (collision.qvecIm ()[qvecRefAInd], collision.qvecRe ()[qvecRefAInd]) - std::atan2 (collision.qvecIm ()[qvecRefBInd], collision.qvecRe ()[qvecRefBInd])));
694+ const double epResDetRefA = std::cos (std::atan2 (collision.qvecIm ()[qvecDetInd], collision.qvecRe ()[qvecDetInd]) - std::atan2 (collision.qvecIm ()[qvecRefAInd], collision.qvecRe ()[qvecRefAInd]));
695+ const double epResDetRefB = std::cos (std::atan2 (collision.qvecIm ()[qvecDetInd], collision.qvecRe ()[qvecDetInd]) - std::atan2 (collision.qvecIm ()[qvecRefBInd], collision.qvecRe ()[qvecRefBInd]));
696+ const double epResRefARefB = std::cos (std::atan2 (collision.qvecIm ()[qvecRefAInd], collision.qvecRe ()[qvecRefAInd]) - std::atan2 (collision.qvecIm ()[qvecRefBInd], collision.qvecRe ()[qvecRefBInd]));
697+ switch (q2Group (centrality, getQ2 (collision))) {
698+ case 0 :
699+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p00_10" ), centrality, epResDetRefA);
700+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p00_10" ), centrality, epResDetRefB);
701+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p00_10" ), centrality, epResRefARefB);
702+ break ;
703+ case 1 :
704+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p10_20" ), centrality, epResDetRefA);
705+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p10_20" ), centrality, epResDetRefB);
706+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p10_20" ), centrality, epResRefARefB);
707+ break ;
708+ case 2 :
709+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p20_30" ), centrality, epResDetRefA);
710+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p20_30" ), centrality, epResDetRefB);
711+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p20_30" ), centrality, epResRefARefB);
712+ break ;
713+ case 3 :
714+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p30_40" ), centrality, epResDetRefA);
715+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p30_40" ), centrality, epResDetRefB);
716+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p30_40" ), centrality, epResRefARefB);
717+ break ;
718+ case 4 :
719+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p40_50" ), centrality, epResDetRefA);
720+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p40_50" ), centrality, epResDetRefB);
721+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p40_50" ), centrality, epResRefARefB);
722+ break ;
723+ case 5 :
724+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p50_60" ), centrality, epResDetRefA);
725+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p50_60" ), centrality, epResDetRefB);
726+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p50_60" ), centrality, epResRefARefB);
727+ break ;
728+ case 6 :
729+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p60_70" ), centrality, epResDetRefA);
730+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p60_70" ), centrality, epResDetRefB);
731+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p60_70" ), centrality, epResRefARefB);
732+ break ;
733+ case 7 :
734+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p70_80" ), centrality, epResDetRefA);
735+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p70_80" ), centrality, epResDetRefB);
736+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p70_80" ), centrality, epResRefARefB);
737+ break ;
738+ case 8 :
739+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p80_90" ), centrality, epResDetRefA);
740+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p80_90" ), centrality, epResDetRefB);
741+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p80_90" ), centrality, epResRefARefB);
742+ break ;
743+ case 9 :
744+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefA_q2p90_100" ), centrality, epResDetRefA);
745+ histos.fill (HIST (" psi2/QA/EPRes_Det_RefB_q2p90_100" ), centrality, epResDetRefB);
746+ histos.fill (HIST (" psi2/QA/EPRes_RefA_RefB_q2p90_100" ), centrality, epResRefARefB);
747+ break ;
748+ default :
749+ break ;
750+ }
685751 } else if (nmode == CorrLevel[1 ]) {
686752 histos.fill (HIST (" psi3/QA/EP_Det" ), centrality, std::atan2 (collision.qvecIm ()[qvecDetInd], collision.qvecRe ()[qvecDetInd]) / static_cast <float >(nmode));
687753 histos.fill (HIST (" psi3/QA/EP_RefA" ), centrality, std::atan2 (collision.qvecIm ()[qvecRefAInd], collision.qvecRe ()[qvecRefAInd]) / static_cast <float >(nmode));
@@ -1212,6 +1278,10 @@ struct FlowEseTask {
12121278 histos.fill (HIST (" QA/CentDist" ), centrality, 1.0 );
12131279 histos.fill (HIST (" QA/PVzDist" ), collision.posZ (), 1.0 );
12141280 histos.fill (HIST (" histQvecCent" ), getQ2 (collision), centrality);
1281+ const int q2PercentileGroup = q2Group (centrality, getQ2 (collision));
1282+ if (q2PercentileGroup >= 0 ) {
1283+ histos.fill (HIST (" histEventCountQ2Group" ), centrality, q2PercentileGroup + 0.5 );
1284+ }
12151285
12161286 if (cfgShiftCorr) {
12171287 auto bc = collision.bc_as <aod::BCsWithTimestamps>();
0 commit comments