1414// /
1515// / \author Yunfan Liu <[email protected] >, China University of Geosciences1616
17-
1817#include < vector>
1918
2019#include " CommonConstants/PhysicsConstants.h"
@@ -56,14 +55,13 @@ struct HfTaskOmegac0 {
5655 ConfigurableAxis thnConfigAxisGenPtB{" thnConfigAxisGenPtB" , {1000 , 0 , 100 }, " Gen Pt B" };
5756 ConfigurableAxis thnConfigAxisNumPvContr{" thnConfigAxisNumPvContr" , {200 , -0.5 , 199.5 }, " Number of PV contributors" };
5857
59-
6058 HfHelper hfHelper;
6159 using MyTracksWMc = soa::Join<aod::Tracks, aod::TracksIU, aod::McTrackLabels>;
62-
60+
6361 using Omegac0Candidates = soa::Join<aod::HfCandToOmegaPi, aod::HfSelToOmegaPi>;
6462 using Omegac0CandidatesKF = soa::Join<Omegac0Candidates, aod::HfOmegacKf>;
6563 using OmegaC0CandidatesMcKF = soa::Join<Omegac0CandidatesKF, aod::HfToOmegaPiMCRec>;
66-
64+
6765 using Omegac0CandidatesMl = soa::Join<aod::HfCandToOmegaPi, aod::HfMlSelOmegacToOmegaPi>;
6866 using Omegac0CandidatesMlKF = soa::Join<Omegac0CandidatesMl, aod::HfOmegacKf>;
6967 using Omegac0CandidatesMlMcKF = soa::Join<Omegac0CandidatesMlKF, aod::HfToOmegaPiMCRec>;
@@ -73,14 +71,13 @@ struct HfTaskOmegac0 {
7371 PresliceUnsorted<CollisionsWithMcLabels> colPerMcCollision = aod::mccollisionlabel::mcCollisionId;
7472 SliceCache cache;
7573
76-
7774 HistogramRegistry registry{
7875 " registry" ,
79- {}};
76+ {}};
8077
8178 void init (InitContext&)
8279 {
83- std::array<bool , 12 > doprocess{ doprocessDataWithKFParticle, doprocessMcWithKFParticle, doprocessDataWithKFParticleMl, doprocessMcWithKFParticleMl};
80+ std::array<bool , 12 > doprocess{doprocessDataWithKFParticle, doprocessMcWithKFParticle, doprocessDataWithKFParticleMl, doprocessMcWithKFParticleMl};
8481 if ((std::accumulate (doprocess.begin (), doprocess.end (), 0 )) == 0 ) {
8582 LOGP (fatal, " At least one process function should be enabled at a time." );
8683 }
@@ -94,14 +91,18 @@ struct HfTaskOmegac0 {
9491 const AxisSpec thnAxisGenPtB{thnConfigAxisGenPtB, " #it{p}_{T}^{B} (GeV/#it{c})" };
9592 const AxisSpec thnAxisNumPvContr{thnConfigAxisNumPvContr, " Number of PV contributors" };
9693
97- if ( doprocessMcWithKFParticle || doprocessMcWithKFParticleMl) {
94+ if (doprocessMcWithKFParticle || doprocessMcWithKFParticleMl) {
9895 std::vector<AxisSpec> axesAcc = {thnAxisGenPtD, thnAxisGenPtB, thnAxisY, thnAxisOrigin, thnAxisNumPvContr};
9996 registry.add (" hSparseAcc" , " Thn for generated Omega0 from charm and beauty" , HistType::kTHnSparseD , axesAcc);
10097 registry.get <THnSparse>(HIST (" hSparseAcc" ))->Sumw2 ();
10198 }
10299
103- std::vector<AxisSpec> axes = {thnAxisMass, thnAxisPt, thnAxisY,};
104- if ( doprocessMcWithKFParticle|| doprocessMcWithKFParticleMl) {
100+ std::vector<AxisSpec> axes = {
101+ thnAxisMass,
102+ thnAxisPt,
103+ thnAxisY,
104+ };
105+ if (doprocessMcWithKFParticle || doprocessMcWithKFParticleMl) {
105106 axes.push_back (thnAxisPtB);
106107 axes.push_back (thnAxisOrigin);
107108 axes.push_back (thnAxisNumPvContr);
@@ -134,9 +135,9 @@ struct HfTaskOmegac0 {
134135 auto rapidityCandidate = candidate.kfRapOmegac ();
135136 auto ptCandidate = candidate.ptCharmBaryon ();
136137 if constexpr (applyMl) {
137- registry.fill (HIST (" hBdtScoreVsMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), candidate.mlProbOmegac ()[0 ], massOmegac0, ptCandidate, rapidityCandidate);
138- } else {
139- registry.fill (HIST (" hMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), massOmegac0, ptCandidate, rapidityCandidate);
138+ registry.fill (HIST (" hBdtScoreVsMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), candidate.mlProbOmegac ()[0 ], massOmegac0, ptCandidate, rapidityCandidate);
139+ } else {
140+ registry.fill (HIST (" hMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), massOmegac0, ptCandidate, rapidityCandidate);
140141 }
141142 }
142143 }
@@ -148,9 +149,9 @@ struct HfTaskOmegac0 {
148149 PROCESS_SWITCH (HfTaskOmegac0, processDataWithKFParticle, " process taskOmegac0 with KFParticle" , false );
149150 // TODO: add processKFParticleCent
150151
151- void processDataWithKFParticleMl (Omegac0CandidatesMlKF const &omegac0CandidatesMlKF, Collisions const & collisions)
152+ void processDataWithKFParticleMl (Omegac0CandidatesMlKF const & omegac0CandidatesMlKF, Collisions const & collisions)
152153 {
153- processData<true >(omegac0CandidatesMlKF, collisions);
154+ processData<true >(omegac0CandidatesMlKF, collisions);
154155 }
155156 PROCESS_SWITCH (HfTaskOmegac0, processDataWithKFParticleMl, " process taskOmegac0 with KFParticle and ML selections" , false );
156157 // TODO: add processKFParticleMlCent
@@ -176,15 +177,15 @@ struct HfTaskOmegac0 {
176177 massOmegac0 = candidate.invMassCharmBaryon ();
177178 auto ptCandidate = candidate.ptCharmBaryon ();
178179 auto rapidityCandidate = candidate.kfRapOmegac ();
179-
180- if (candidate.flagMcMatchRec () == (1 << aod::hf_cand_xic0_omegac0::DecayType::OmegaczeroToOmegaPi)) {
181- if constexpr (applyMl) {
182- registry.fill (HIST (" hBdtScoreVsMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), candidate.mlProbOmegac ()[0 ], massOmegac0, ptCandidate, rapidityCandidate, candidate.ptBhadMotherPart (), candidate.originRec (), numPvContributors);
183-
184- } else {
185- registry.fill (HIST (" hMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), massOmegac0, ptCandidate, rapidityCandidate, candidate.ptBhadMotherPart (), candidate.originRec (), numPvContributors);
186- }
187- }
180+
181+ if (candidate.flagMcMatchRec () == (1 << aod::hf_cand_xic0_omegac0::DecayType::OmegaczeroToOmegaPi)) {
182+ if constexpr (applyMl) {
183+ registry.fill (HIST (" hBdtScoreVsMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), candidate.mlProbOmegac ()[0 ], massOmegac0, ptCandidate, rapidityCandidate, candidate.ptBhadMotherPart (), candidate.originRec (), numPvContributors);
184+
185+ } else {
186+ registry.fill (HIST (" hMassVsPtVsPtBVsYVsOriginVsOmegac0Type" ), massOmegac0, ptCandidate, rapidityCandidate, candidate.ptBhadMotherPart (), candidate.originRec (), numPvContributors);
187+ }
188+ }
188189 }
189190 // MC gen.
190191 for (const auto & particle : mcParticles) {
@@ -198,12 +199,11 @@ struct HfTaskOmegac0 {
198199 registry.fill (HIST (" hPtGen" ), ptGen);
199200 registry.fill (HIST (" hPtVsYGen" ), ptGen, yGen);
200201
201- unsigned maxNumContrib = 0 ;
202+ unsigned maxNumContrib = 0 ;
202203 const auto & recoCollsPerMcColl = collisions.sliceBy (colPerMcCollision, particle.mcCollision ().globalIndex ());
203204 for (const auto & recCol : recoCollsPerMcColl) {
204205 maxNumContrib = recCol.numContrib () > maxNumContrib ? recCol.numContrib () : maxNumContrib;
205206 }
206-
207207
208208 if (particle.originGen () == RecoDecay::OriginType::Prompt) {
209209 registry.fill (HIST (" hSparseAcc" ), ptGen, ptGenB, yGen, 1 , maxNumContrib);
@@ -216,7 +216,7 @@ struct HfTaskOmegac0 {
216216 }
217217 }
218218
219- void processMcWithKFParticle (OmegaC0CandidatesMcKF const &omegaC0CandidatesMcKF,
219+ void processMcWithKFParticle (OmegaC0CandidatesMcKF const & omegaC0CandidatesMcKF,
220220 soa::Join<aod::McParticles, aod::HfToOmegaPiMCGen> const & mcParticles,
221221 MyTracksWMc const & tracks,
222222 CollisionsWithMcLabels const & collisions,
0 commit comments