From 4c932314a7120de3a6f21c778ab8e9b669be99cc Mon Sep 17 00:00:00 2001 From: RD0407 Date: Wed, 10 May 2023 15:27:44 +0200 Subject: [PATCH 01/25] Centrality additon to MC plots --- PWGLF/Tasks/spectraTOF.cxx | 92 +++++++++++++++++++++++++++++--------- 1 file changed, 71 insertions(+), 21 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 4dfb9b375d2..2467441091f 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -404,13 +404,13 @@ struct tofSpectra { histos.add(hdcaxyphi[i].data(), Form("%s -- 0.9 < #it{p}_{T} < 1.1 GeV/#it{c}", pTCharge[i]), kTH2D, {phiAxis, dcaXyAxis}); if (doprocessMC) { - histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); // RD + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis});// RD + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis});// RD + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis});// RD + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hdcaxyprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); histos.add(hdcazprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaZAxis}); @@ -871,7 +871,7 @@ struct tofSpectra { makeProcessFunctionFull(Al, Alpha); #undef makeProcessFunctionFull - using CollisionCandidateMC = soa::Join; + using CollisionCandidateMC = soa::Join;// RD template void fillTrackHistograms_MC(TrackType const& track, ParticleType const& mcParticle, CollisionCandidateMC::iterator const& collision) { @@ -932,7 +932,51 @@ struct tofSpectra { } break; } + + + + float multiplicity = 0.f; + switch (multiplicityEstimator) { + case kNoMultiplicity: // No multiplicity + multiplicity = 50; //to check if its filled + break; + case kMultFV0M: // MultFV0M + + multiplicity = collision.multZeqFV0A(); + break; + case kMultFT0M: + multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); + break; + case kMultFDDM: // MultFDDM + + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); + break; + case kMultTracklets: // MultTracklets + multiplicity = collision.multTracklets(); + break; + case kMultTPC: // MultTPC + multiplicity = collision.multTPC(); + break; + case kMultNTracksPV: // MultNTracksPV + // multiplicity = collision.multNTracksPV(); + multiplicity = collision.multZeqNTracksPV(); + break; + case kMultNTracksPVeta1: // MultNTracksPVeta1 + multiplicity = collision.multNTracksPVeta1(); + break; + case kCentralityFT0C: // Centrality FT0C + multiplicity = collision.centFT0C(); + break; + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); //collision.centFT0A() + break; + default: + LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; + } + + // if (multiplicityEstimator != kNoMultiplicity){ + if (mcParticle.pdgCode() != PDGs[i]) { return; } @@ -962,15 +1006,18 @@ struct tofSpectra { if (!passesDCAxyCut(track)) { // Skipping tracks that don't pass the standard cuts return; } - - if (!mcParticle.isPhysicalPrimary()) { + + + + if (!mcParticle.isPhysicalPrimary()) { + if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_num_str[i]), track.pt()); + histos.fill(HIST(hpt_num_str[i]), track.pt(), multiplicity);// RD } else { - histos.fill(HIST(hpt_num_mat[i]), track.pt()); + histos.fill(HIST(hpt_num_mat[i]), track.pt(), multiplicity);// RD } } else { - histos.fill(HIST(hpt_num_prm[i]), track.pt()); + histos.fill(HIST(hpt_num_prm[i]), track.pt(), multiplicity);// RD if (track.hasTRD() && lastRequiredTrdCluster > 0) { int lastLayer = 0; @@ -986,13 +1033,16 @@ struct tofSpectra { } if (track.hasTOF()) { - histos.fill(HIST(hpt_numtof_prm[i]), track.pt()); + histos.fill(HIST(hpt_numtof_prm[i]), track.pt(),multiplicity); } } + + // } // RD + } - - template - void fillParticleHistograms_MC(ParticleType const& mcParticle) +// using CollisionCandidateMC = soa::Join; + template // RD + void fillParticleHistograms_MC(ParticleType const& mcParticle, CollisionCandidateMC::iterator const& collision)// RD { switch (i) { @@ -1058,12 +1108,12 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt()); + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), collision.centFT0C());// RD } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt()); + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), collision.centFT0C());// RD } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt()); + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), collision.centFT0C());// RD } } @@ -1114,7 +1164,7 @@ struct tofSpectra { continue; } static_for<0, 17>([&](auto i) { - fillParticleHistograms_MC(mcParticle); + fillParticleHistograms_MC(mcParticle, mcParticle.mcCollision_as());// RD }); } } From a4e65295a110c31b832733d2e4e0fc5dd2eef6f0 Mon Sep 17 00:00:00 2001 From: Rohaan Deb Date: Wed, 10 May 2023 18:11:24 +0200 Subject: [PATCH 02/25] Added multiplicity to MC plots --- PWGLF/Tasks/spectraTOF.cxx | 50 ++++++++++++++++++++++++++++++++++---- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 2467441091f..a5eb106158d 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -934,7 +934,7 @@ struct tofSpectra { } - + //RD **************************************************** float multiplicity = 0.f; switch (multiplicityEstimator) { @@ -973,7 +973,7 @@ struct tofSpectra { break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; - } + } //RD **************************************************** // if (multiplicityEstimator != kNoMultiplicity){ @@ -1101,6 +1101,46 @@ struct tofSpectra { } break; } + + float multiplicity = 0.f; //RD **************************************************** + + switch (multiplicityEstimator) { + case kNoMultiplicity: // No multiplicity + multiplicity = 50; //to check if its filled + break; + case kMultFV0M: // MultFV0M + + multiplicity = collision.multZeqFV0A(); + break; + case kMultFT0M: + multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); + break; + case kMultFDDM: // MultFDDM + + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); + break; + case kMultTracklets: // MultTracklets + multiplicity = collision.multTracklets(); + break; + case kMultTPC: // MultTPC + multiplicity = collision.multTPC(); + break; + case kMultNTracksPV: // MultNTracksPV + // multiplicity = collision.multNTracksPV(); + multiplicity = collision.multZeqNTracksPV(); + break; + case kMultNTracksPVeta1: // MultNTracksPVeta1 + multiplicity = collision.multNTracksPVeta1(); + break; + case kCentralityFT0C: // Centrality FT0C + multiplicity = collision.centFT0C(); + break; + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); //collision.centFT0A() + break; + default: + LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; + } //RD ******************************************************************************** if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1108,12 +1148,12 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), collision.centFT0C());// RD + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity);// RD } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), collision.centFT0C());// RD + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity);// RD } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), collision.centFT0C());// RD + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity);// RD } } From b394c62bf7b32fc6e030faadee221904bb7c24e3 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 11:51:41 +0200 Subject: [PATCH 03/25] Update spectraTOF.h Additional hists for secondaries were added to numtof --- PWGLF/Tasks/spectraTOF.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 314af8789c7..2fe7cb9e847 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -110,6 +110,21 @@ static constexpr std::string_view hpt_numtof_prm[NpCharge] = {"MC/el/pos/prm/pt/ "MC/el/neg/prm/pt/numtof", "MC/mu/neg/prm/pt/numtof", "MC/pi/neg/prm/pt/numtof", "MC/ka/neg/prm/pt/numtof", "MC/pr/neg/prm/pt/numtof", "MC/de/neg/prm/pt/numtof", "MC/tr/neg/prm/pt/numtof", "MC/he/neg/prm/pt/numtof", "MC/al/neg/prm/pt/numtof"}; +//****************************************************RD**************************************************************************************************** +static constexpr std::string_view hpt_numtof_str[NpCharge] = {"MC/el/pos/str/pt/numtof", "MC/mu/pos/str/pt/numtof", "MC/pi/pos/str/pt/numtof", + "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", + "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", + "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", + "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", + "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; + +static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/numtof", "MC/mu/pos/mat/pt/numtof", "MC/pi/pos/mat/pt/numtof", + "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", + "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", + "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", + "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", + "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; +//*********************************************************************************************************************************************************** static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", "MC/tr/pos/prm/pt/den", "MC/he/pos/prm/pt/den", "MC/al/pos/prm/pt/den", From 79c19b7c3a7d1d6f3faae9c11fd1c4d0f3fce266 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 13 Jun 2023 09:52:19 +0000 Subject: [PATCH 04/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 160 +++++++++++++++++-------------------- PWGLF/Tasks/spectraTOF.h | 26 +++--- 2 files changed, 88 insertions(+), 98 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index f96d39dd353..0e5d037c34e 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -89,7 +89,7 @@ struct tofSpectra { Configurable maxDcaXYFactor{"maxDcaXYFactor", 1.f, "Additional cut on the maximum value of the DCA xy (multiplicative factor)"}; Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; - Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"};//RD + Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"}; // RD // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; @@ -412,15 +412,15 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD - histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis});//RD - histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis});//RD - + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis}); // RD + histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis}); // RD + } else { - - histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); + + histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); histos.add(hnsigmatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTPCAxis, multAxis}); - if (enableDeltaHistograms) { + if (enableDeltaHistograms) { histos.add(hdeltatof[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTOFAxis, multAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTPCAxis, multAxis}); } @@ -431,22 +431,21 @@ struct tofSpectra { histos.add(hdcaxyphi[i].data(), Form("%s -- 0.9 < #it{p}_{T} < 1.1 GeV/#it{c}", pTCharge[i]), kTH2D, {phiAxis, dcaXyAxis}); if (doprocessMC) { - /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ - - + /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ + //*************************************RD********************************************** - + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); @@ -456,19 +455,15 @@ struct tofSpectra { histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - - - - + //*************************************************************************************** - - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - - + histos.add(hdcaxyprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); histos.add(hdcazprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaZAxis}); histos.add(hdcaxystr[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); @@ -545,12 +540,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD - if (track.sign() > 0) { //RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - } else { //RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - }//RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -652,13 +647,13 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) {//RD - if (track.sign() > 0) {//RD - histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - } else {//RD - histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - }//RD - } else { + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } else { // RD + histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } // RD + } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); } else { @@ -1000,7 +995,7 @@ struct tofSpectra { makeProcessFunctionFull(Al, Alpha); #undef makeProcessFunctionFull - using CollisionCandidateMC = soa::Join;//RD + using CollisionCandidateMC = soa::Join; // RD template void fillTrackHistograms_MC(TrackType const& track, ParticleType const& mcParticle, CollisionCandidateMC::iterator const& collision) { @@ -1062,22 +1057,22 @@ struct tofSpectra { break; } -//************************************RD************************************************** -float multiplicity = 0.f; + //************************************RD************************************************** + float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; //to check if its filled + multiplicity = 50; // to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1096,17 +1091,14 @@ float multiplicity = 0.f; case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); //collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); // collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } -//************************************RD************************************************** - - - + //************************************RD************************************************** if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1140,12 +1132,12 @@ float multiplicity = 0.f; if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD } else { - histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD } } else { - histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD if (track.hasTRD() && lastRequiredTrdCluster > 0) { int lastLayer = 0; @@ -1161,18 +1153,18 @@ float multiplicity = 0.f; } if (track.hasTOF()) { - histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD - - //**********************************RD************************************************ - if (!mcParticle.isPhysicalPrimary()) { - if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD - } else { - histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD - } - } - - //**************************************************************************************** + histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD + + //**********************************RD************************************************ + if (!mcParticle.isPhysicalPrimary()) { + if (mcParticle.getProcess() == 4) { + histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } + } + + //**************************************************************************************** } } } @@ -1238,23 +1230,22 @@ float multiplicity = 0.f; break; } - -//************************************RD************************************************** -float multiplicity = 0.f; + //************************************RD************************************************** + float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; //to check if its filled + multiplicity = 50; // to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1273,15 +1264,14 @@ float multiplicity = 0.f; case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); //collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); // collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } -//************************************RD************************************************** - + //************************************RD************************************************** if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1289,12 +1279,12 @@ float multiplicity = 0.f; if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity); // RD } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity); // RD } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity); // RD } } @@ -1499,7 +1489,7 @@ float multiplicity = 0.f; continue; } static_for<0, 17>([&](auto i) { - fillParticleHistograms_MC( mcParticle, mcParticle.mcCollision_as()); + fillParticleHistograms_MC(mcParticle, mcParticle.mcCollision_as()); }); } diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 2fe7cb9e847..e49ab7647a3 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -110,21 +110,21 @@ static constexpr std::string_view hpt_numtof_prm[NpCharge] = {"MC/el/pos/prm/pt/ "MC/el/neg/prm/pt/numtof", "MC/mu/neg/prm/pt/numtof", "MC/pi/neg/prm/pt/numtof", "MC/ka/neg/prm/pt/numtof", "MC/pr/neg/prm/pt/numtof", "MC/de/neg/prm/pt/numtof", "MC/tr/neg/prm/pt/numtof", "MC/he/neg/prm/pt/numtof", "MC/al/neg/prm/pt/numtof"}; -//****************************************************RD**************************************************************************************************** +//****************************************************RD**************************************************************************************************** static constexpr std::string_view hpt_numtof_str[NpCharge] = {"MC/el/pos/str/pt/numtof", "MC/mu/pos/str/pt/numtof", "MC/pi/pos/str/pt/numtof", - "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", - "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", - "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", - "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", - "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; - + "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", + "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", + "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", + "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", + "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; + static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/numtof", "MC/mu/pos/mat/pt/numtof", "MC/pi/pos/mat/pt/numtof", - "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", - "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", - "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", - "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", - "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; -//*********************************************************************************************************************************************************** + "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", + "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", + "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", + "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", + "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; +//*********************************************************************************************************************************************************** static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", "MC/tr/pos/prm/pt/den", "MC/he/pos/prm/pt/den", "MC/al/pos/prm/pt/den", From 6147d72381c871a630946178774e695d394c2b91 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:01:29 +0200 Subject: [PATCH 05/25] Update spectraTOF.h --- PWGLF/Tasks/spectraTOF.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index e49ab7647a3..8101c08a766 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -234,4 +234,4 @@ static constexpr std::string_view hdcazmat[NpCharge] = {"dcazmat/pos/el", "dcazm "dcazmat/neg/ka", "dcazmat/neg/pr", "dcazmat/neg/de", "dcazmat/neg/tr", "dcazmat/neg/he", "dcazmat/neg/al"}; -#endif +#endif // PWGLF_TASKS_SPECTRATOF_H_ From 9de7218419fcd8b531358b3010c00b24b3492165 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:06:41 +0200 Subject: [PATCH 06/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 162 ++++++++++++++++++++----------------- 1 file changed, 86 insertions(+), 76 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 0e5d037c34e..f3ec75b16ef 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -89,7 +89,7 @@ struct tofSpectra { Configurable maxDcaXYFactor{"maxDcaXYFactor", 1.f, "Additional cut on the maximum value of the DCA xy (multiplicative factor)"}; Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; - Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"}; // RD + Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"};//RD // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; @@ -412,15 +412,15 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD - histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis}); // RD - histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis}); // RD - + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD + histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis});//RD + histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis});//RD + } else { - - histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); + + histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); histos.add(hnsigmatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTPCAxis, multAxis}); - if (enableDeltaHistograms) { + if (enableDeltaHistograms) { histos.add(hdeltatof[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTOFAxis, multAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTPCAxis, multAxis}); } @@ -431,21 +431,22 @@ struct tofSpectra { histos.add(hdcaxyphi[i].data(), Form("%s -- 0.9 < #it{p}_{T} < 1.1 GeV/#it{c}", pTCharge[i]), kTH2D, {phiAxis, dcaXyAxis}); if (doprocessMC) { - /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ - + /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ + + //*************************************RD********************************************** - + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); @@ -455,15 +456,19 @@ struct tofSpectra { histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - + + + + //*************************************************************************************** - - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - + + histos.add(hdcaxyprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); histos.add(hdcazprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaZAxis}); histos.add(hdcaxystr[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); @@ -540,12 +545,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD + if (track.sign() > 0) { //RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD + } else { //RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD + }//RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -647,13 +652,13 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD - } else { // RD - histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD - } // RD - } else { + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) {//RD + if (track.sign() > 0) {//RD + histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD + } else {//RD + histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD + }//RD + } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); } else { @@ -995,7 +1000,7 @@ struct tofSpectra { makeProcessFunctionFull(Al, Alpha); #undef makeProcessFunctionFull - using CollisionCandidateMC = soa::Join; // RD + using CollisionCandidateMC = soa::Join;//RD template void fillTrackHistograms_MC(TrackType const& track, ParticleType const& mcParticle, CollisionCandidateMC::iterator const& collision) { @@ -1057,22 +1062,22 @@ struct tofSpectra { break; } - //************************************RD************************************************** - float multiplicity = 0.f; +//************************************RD************************************************** +float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; // to check if its filled + multiplicity = 50; //to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1091,14 +1096,17 @@ struct tofSpectra { case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); // collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); //collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } - //************************************RD************************************************** +//************************************RD************************************************** + + + if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1132,12 +1140,12 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD } else { - histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD } } else { - histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD + histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD if (track.hasTRD() && lastRequiredTrdCluster > 0) { int lastLayer = 0; @@ -1153,18 +1161,18 @@ struct tofSpectra { } if (track.hasTOF()) { - histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD - - //**********************************RD************************************************ - if (!mcParticle.isPhysicalPrimary()) { - if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD - } else { - histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD - } - } - - //**************************************************************************************** + histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD + + //**********************************RD************************************************ + if (!mcParticle.isPhysicalPrimary()) { + if (mcParticle.getProcess() == 4) { + histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD + } else { + histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD + } + } + + //**************************************************************************************** } } } @@ -1230,22 +1238,23 @@ struct tofSpectra { break; } - //************************************RD************************************************** - float multiplicity = 0.f; + +//************************************RD************************************************** +float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; // to check if its filled + multiplicity = 50; //to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1264,14 +1273,15 @@ struct tofSpectra { case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); // collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); //collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } - //************************************RD************************************************** +//************************************RD************************************************** + if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1279,12 +1289,12 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity); // RD + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity);// RD } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity); // RD + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity);// RD } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity); // RD + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity);// RD } } @@ -1489,7 +1499,7 @@ struct tofSpectra { continue; } static_for<0, 17>([&](auto i) { - fillParticleHistograms_MC(mcParticle, mcParticle.mcCollision_as()); + fillParticleHistograms_MC( mcParticle, mcParticle.mcCollision_as()); }); } @@ -1545,4 +1555,4 @@ struct tofSpectra { WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { return WorkflowSpec{adaptAnalysisTask(cfgc)}; -} \ No newline at end of file +} From ec8a7619a6a4932744436662dd3727c3c0848254 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:07:00 +0200 Subject: [PATCH 07/25] Update spectraTOF.h --- PWGLF/Tasks/spectraTOF.h | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 8101c08a766..f8c6b1f0b1b 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -110,21 +110,21 @@ static constexpr std::string_view hpt_numtof_prm[NpCharge] = {"MC/el/pos/prm/pt/ "MC/el/neg/prm/pt/numtof", "MC/mu/neg/prm/pt/numtof", "MC/pi/neg/prm/pt/numtof", "MC/ka/neg/prm/pt/numtof", "MC/pr/neg/prm/pt/numtof", "MC/de/neg/prm/pt/numtof", "MC/tr/neg/prm/pt/numtof", "MC/he/neg/prm/pt/numtof", "MC/al/neg/prm/pt/numtof"}; -//****************************************************RD**************************************************************************************************** +//****************************************************RD**************************************************************************************************** static constexpr std::string_view hpt_numtof_str[NpCharge] = {"MC/el/pos/str/pt/numtof", "MC/mu/pos/str/pt/numtof", "MC/pi/pos/str/pt/numtof", - "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", - "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", - "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", - "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", - "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; - + "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", + "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", + "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", + "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", + "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; + static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/numtof", "MC/mu/pos/mat/pt/numtof", "MC/pi/pos/mat/pt/numtof", - "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", - "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", - "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", - "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", - "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; -//*********************************************************************************************************************************************************** + "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", + "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", + "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", + "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", + "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; +//*********************************************************************************************************************************************************** static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", "MC/tr/pos/prm/pt/den", "MC/he/pos/prm/pt/den", "MC/al/pos/prm/pt/den", From 35667e914a47c83e54324e1d5182f84be5e1ae46 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:12:24 +0200 Subject: [PATCH 08/25] Update spectraTOF.h --- PWGLF/Tasks/spectraTOF.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index f8c6b1f0b1b..2fe7cb9e847 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -234,4 +234,4 @@ static constexpr std::string_view hdcazmat[NpCharge] = {"dcazmat/pos/el", "dcazm "dcazmat/neg/ka", "dcazmat/neg/pr", "dcazmat/neg/de", "dcazmat/neg/tr", "dcazmat/neg/he", "dcazmat/neg/al"}; -#endif // PWGLF_TASKS_SPECTRATOF_H_ +#endif From bd1f97a226fe33e47a5b28726dcc295b574d84a4 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:15:16 +0200 Subject: [PATCH 09/25] Update spectraTOF.h --- PWGLF/Tasks/spectraTOF.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 2fe7cb9e847..4454256d1d7 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -110,21 +110,20 @@ static constexpr std::string_view hpt_numtof_prm[NpCharge] = {"MC/el/pos/prm/pt/ "MC/el/neg/prm/pt/numtof", "MC/mu/neg/prm/pt/numtof", "MC/pi/neg/prm/pt/numtof", "MC/ka/neg/prm/pt/numtof", "MC/pr/neg/prm/pt/numtof", "MC/de/neg/prm/pt/numtof", "MC/tr/neg/prm/pt/numtof", "MC/he/neg/prm/pt/numtof", "MC/al/neg/prm/pt/numtof"}; -//****************************************************RD**************************************************************************************************** + +//********************************************RD********************************************************************************************** static constexpr std::string_view hpt_numtof_str[NpCharge] = {"MC/el/pos/str/pt/numtof", "MC/mu/pos/str/pt/numtof", "MC/pi/pos/str/pt/numtof", "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", - "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; - + "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/numtof", "MC/mu/pos/mat/pt/numtof", "MC/pi/pos/mat/pt/numtof", "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; -//*********************************************************************************************************************************************************** static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", "MC/tr/pos/prm/pt/den", "MC/he/pos/prm/pt/den", "MC/al/pos/prm/pt/den", @@ -234,4 +233,4 @@ static constexpr std::string_view hdcazmat[NpCharge] = {"dcazmat/pos/el", "dcazm "dcazmat/neg/ka", "dcazmat/neg/pr", "dcazmat/neg/de", "dcazmat/neg/tr", "dcazmat/neg/he", "dcazmat/neg/al"}; -#endif +#endif // PWGLF_TASKS_SPECTRATOF_H_ From 916c1f3cdb1e059764e43cd52ba06f6d054b9641 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 12:16:11 +0200 Subject: [PATCH 10/25] Update spectraTOF.cxx From 209e2681792a00e9b1140ed3dc6570ba92cc5b0d Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 13 Jun 2023 10:17:15 +0000 Subject: [PATCH 11/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 160 +++++++++++++++++-------------------- PWGLF/Tasks/spectraTOF.h | 24 +++--- 2 files changed, 87 insertions(+), 97 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index f3ec75b16ef..96f13d9f702 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -89,7 +89,7 @@ struct tofSpectra { Configurable maxDcaXYFactor{"maxDcaXYFactor", 1.f, "Additional cut on the maximum value of the DCA xy (multiplicative factor)"}; Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; - Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"};//RD + Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"}; // RD // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; @@ -412,15 +412,15 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD - histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis});//RD - histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis});//RD - + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis}); // RD + histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis}); // RD + } else { - - histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); + + histos.add(hnsigmatof[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTOFAxis, multAxis}); histos.add(hnsigmatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, nsigmaTPCAxis, multAxis}); - if (enableDeltaHistograms) { + if (enableDeltaHistograms) { histos.add(hdeltatof[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTOFAxis, multAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH3D, {ptAxis, deltaTPCAxis, multAxis}); } @@ -431,22 +431,21 @@ struct tofSpectra { histos.add(hdcaxyphi[i].data(), Form("%s -- 0.9 < #it{p}_{T} < 1.1 GeV/#it{c}", pTCharge[i]), kTH2D, {phiAxis, dcaXyAxis}); if (doprocessMC) { - /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ - - + /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ + //*************************************RD********************************************** - + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); @@ -456,19 +455,15 @@ struct tofSpectra { histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - - - - + //*************************************************************************************** - - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); + + histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - - + histos.add(hdcaxyprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); histos.add(hdcazprm[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaZAxis}); histos.add(hdcaxystr[i].data(), pTCharge[i], kTH2D, {ptAxis, dcaXyAxis}); @@ -545,12 +540,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { //RD - if (track.sign() > 0) { //RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - } else { //RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - }//RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -652,13 +647,13 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) {//RD - if (track.sign() > 0) {//RD - histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - } else {//RD - histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY());//RD - }//RD - } else { + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } else { // RD + histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + } // RD + } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); } else { @@ -1000,7 +995,7 @@ struct tofSpectra { makeProcessFunctionFull(Al, Alpha); #undef makeProcessFunctionFull - using CollisionCandidateMC = soa::Join;//RD + using CollisionCandidateMC = soa::Join; // RD template void fillTrackHistograms_MC(TrackType const& track, ParticleType const& mcParticle, CollisionCandidateMC::iterator const& collision) { @@ -1062,22 +1057,22 @@ struct tofSpectra { break; } -//************************************RD************************************************** -float multiplicity = 0.f; + //************************************RD************************************************** + float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; //to check if its filled + multiplicity = 50; // to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1096,17 +1091,14 @@ float multiplicity = 0.f; case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); //collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); // collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } -//************************************RD************************************************** - - - + //************************************RD************************************************** if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1140,12 +1132,12 @@ float multiplicity = 0.f; if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD } else { - histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD } } else { - histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD + histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD if (track.hasTRD() && lastRequiredTrdCluster > 0) { int lastLayer = 0; @@ -1161,18 +1153,18 @@ float multiplicity = 0.f; } if (track.hasTOF()) { - histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity);// RD - - //**********************************RD************************************************ - if (!mcParticle.isPhysicalPrimary()) { - if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity);// RD - } else { - histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity);// RD - } - } - - //**************************************************************************************** + histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD + + //**********************************RD************************************************ + if (!mcParticle.isPhysicalPrimary()) { + if (mcParticle.getProcess() == 4) { + histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } + } + + //**************************************************************************************** } } } @@ -1238,23 +1230,22 @@ float multiplicity = 0.f; break; } - -//************************************RD************************************************** -float multiplicity = 0.f; + //************************************RD************************************************** + float multiplicity = 0.f; switch (multiplicityEstimator) { case kNoMultiplicity: // No multiplicity - multiplicity = 50; //to check if its filled + multiplicity = 50; // to check if its filled break; case kMultFV0M: // MultFV0M multiplicity = collision.multZeqFV0A(); break; - case kMultFT0M: + case kMultFT0M: multiplicity = collision.multZeqFT0A() + collision.multZeqFT0C(); break; case kMultFDDM: // MultFDDM - + multiplicity = collision.multZeqFDDA() + collision.multZeqFDDC(); break; case kMultTracklets: // MultTracklets @@ -1273,15 +1264,14 @@ float multiplicity = 0.f; case kCentralityFT0C: // Centrality FT0C multiplicity = collision.centFT0C(); break; - case kCentralityFT0M: // Centrality FT0M - multiplicity = collision.centFT0M(); //collision.centFT0A() + case kCentralityFT0M: // Centrality FT0M + multiplicity = collision.centFT0M(); // collision.centFT0A() break; default: LOG(fatal) << "Unknown multiplicity estimator: " << multiplicityEstimator; } -//************************************RD************************************************** - + //************************************RD************************************************** if (mcParticle.pdgCode() != PDGs[i]) { return; @@ -1289,12 +1279,12 @@ float multiplicity = 0.f; if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity); // RD } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity); // RD } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity);// RD + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity); // RD } } @@ -1499,7 +1489,7 @@ float multiplicity = 0.f; continue; } static_for<0, 17>([&](auto i) { - fillParticleHistograms_MC( mcParticle, mcParticle.mcCollision_as()); + fillParticleHistograms_MC(mcParticle, mcParticle.mcCollision_as()); }); } diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 4454256d1d7..4318de71a09 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -111,19 +111,19 @@ static constexpr std::string_view hpt_numtof_prm[NpCharge] = {"MC/el/pos/prm/pt/ "MC/ka/neg/prm/pt/numtof", "MC/pr/neg/prm/pt/numtof", "MC/de/neg/prm/pt/numtof", "MC/tr/neg/prm/pt/numtof", "MC/he/neg/prm/pt/numtof", "MC/al/neg/prm/pt/numtof"}; -//********************************************RD********************************************************************************************** +//********************************************RD********************************************************************************************** static constexpr std::string_view hpt_numtof_str[NpCharge] = {"MC/el/pos/str/pt/numtof", "MC/mu/pos/str/pt/numtof", "MC/pi/pos/str/pt/numtof", - "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", - "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", - "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", - "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", - "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; + "MC/ka/pos/str/pt/numtof", "MC/pr/pos/str/pt/numtof", "MC/de/pos/str/pt/numtof", + "MC/tr/pos/str/pt/numtof", "MC/he/pos/str/pt/numtof", "MC/al/pos/str/pt/numtof", + "MC/el/neg/str/pt/numtof", "MC/mu/neg/str/pt/numtof", "MC/pi/neg/str/pt/numtof", + "MC/ka/neg/str/pt/numtof", "MC/pr/neg/str/pt/numtof", "MC/de/neg/str/pt/numtof", + "MC/tr/neg/str/pt/numtof", "MC/he/neg/str/pt/numtof", "MC/al/neg/str/pt/numtof"}; static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/numtof", "MC/mu/pos/mat/pt/numtof", "MC/pi/pos/mat/pt/numtof", - "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", - "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", - "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", - "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", - "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; + "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", + "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", + "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", + "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", + "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", "MC/tr/pos/prm/pt/den", "MC/he/pos/prm/pt/den", "MC/al/pos/prm/pt/den", @@ -233,4 +233,4 @@ static constexpr std::string_view hdcazmat[NpCharge] = {"dcazmat/pos/el", "dcazm "dcazmat/neg/ka", "dcazmat/neg/pr", "dcazmat/neg/de", "dcazmat/neg/tr", "dcazmat/neg/he", "dcazmat/neg/al"}; -#endif // PWGLF_TASKS_SPECTRATOF_H_ +#endif // PWGLF_TASKS_SPECTRATOF_H_ From 6111a152a41b6aa7f00172d8f015a404761f9467 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Tue, 13 Jun 2023 16:25:50 +0200 Subject: [PATCH 12/25] Update spectraTOF.h --- PWGLF/Tasks/spectraTOF.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.h b/PWGLF/Tasks/spectraTOF.h index 4318de71a09..680882efc52 100644 --- a/PWGLF/Tasks/spectraTOF.h +++ b/PWGLF/Tasks/spectraTOF.h @@ -122,7 +122,7 @@ static constexpr std::string_view hpt_numtof_mat[NpCharge] = {"MC/el/pos/mat/pt/ "MC/ka/pos/mat/pt/numtof", "MC/pr/pos/mat/pt/numtof", "MC/de/pos/mat/pt/numtof", "MC/tr/pos/mat/pt/numtof", "MC/he/pos/mat/pt/numtof", "MC/al/pos/mat/pt/numtof", "MC/el/neg/mat/pt/numtof", "MC/mu/neg/mat/pt/numtof", "MC/pi/neg/mat/pt/numtof", - "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtofnum", "MC/de/neg/mat/pt/numtof", + "MC/ka/neg/mat/pt/numtof", "MC/pr/neg/mat/pt/numtof", "MC/de/neg/mat/pt/numtof", "MC/tr/neg/mat/pt/numtof", "MC/he/neg/mat/pt/numtof", "MC/al/neg/mat/pt/numtof"}; static constexpr std::string_view hpt_den_prm[NpCharge] = {"MC/el/pos/prm/pt/den", "MC/mu/pos/prm/pt/den", "MC/pi/pos/prm/pt/den", "MC/ka/pos/prm/pt/den", "MC/pr/pos/prm/pt/den", "MC/de/pos/prm/pt/den", From ac709be2ef832fadd35824e7b412f8e4824afb5b Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:02:25 +0200 Subject: [PATCH 13/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 96f13d9f702..04de7aaf162 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -89,7 +89,7 @@ struct tofSpectra { Configurable maxDcaXYFactor{"maxDcaXYFactor", 1.f, "Additional cut on the maximum value of the DCA xy (multiplicative factor)"}; Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; - Configurable makeTHnSparseChoice{"makeTHnSparseChoice", false, "choose if produce thnsparse"}; // RD + Configurable makeTHnSparseChoice{"makeTHnSparseChoice", true, "choose if produce thnsparse"}; // RD // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; @@ -165,6 +165,7 @@ struct tofSpectra { LOG(info) << "\tminTPCNClsFound=" << minTPCNClsFound.value; LOG(info) << "\tmaxChi2PerClusterITS=" << maxChi2PerClusterITS.value; LOG(info) << "\tmaxDcaZ=" << maxDcaZ.value; + LOG(info) << "\tmakeTHnSparseChoice=" << makeTHnSparseChoice.value; customTrackCuts = getGlobalTrackSelectionRun3ITSMatch(itsPattern.value); LOG(info) << "Customizing track cuts:"; @@ -178,6 +179,7 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); + //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms @@ -412,9 +414,9 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD - histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis}); // RD - histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis}); // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD + histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD } else { @@ -540,11 +542,11 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD } // RD } else { if (track.sign() > 0) { @@ -647,11 +649,11 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD } else { // RD - histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY()); // RD + histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD } // RD } else { if (track.sign() > 0) { From e5d65d430adc876d07bb1a74eb9658c5738bd887 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:05:36 +0200 Subject: [PATCH 14/25] Update spectraTOF.cxx makeTHnSparseChoice has been added to customTrackCuts as a boolean. dcaZ has been added to the nsigma distributions. --- PWGLF/Tasks/spectraTOF.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 04de7aaf162..24d3598ac09 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -179,7 +179,6 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); - //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms From 7d16ef4f8a1680d028109b3b094c4ceafec1bb93 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:46:32 +0200 Subject: [PATCH 15/25] Update spectraTOF.cxx DCA Z inclusion to nsigma dists. --- PWGLF/Tasks/spectraTOF.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 24d3598ac09..2161c754012 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -90,7 +90,6 @@ struct tofSpectra { Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; Configurable makeTHnSparseChoice{"makeTHnSparseChoice", true, "choose if produce thnsparse"}; // RD - // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; From 28de637bee1dbac30d34ee79149f0429a4644366 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 14 Jun 2023 09:53:36 +0000 Subject: [PATCH 16/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 24d3598ac09..0716a957fb9 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -413,7 +413,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -541,12 +541,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -648,12 +648,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); From b2d3662a7f909a3a920705eef395e41b4d2433c9 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 11:55:56 +0200 Subject: [PATCH 17/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 24d3598ac09..2c02316f272 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -16,7 +16,6 @@ /// \brief Task for the analysis of the spectra with the TOF detector. /// Depending on the configuration it can also run on tiny tables. /// - // O2 includes #include "ReconstructionDataFormats/Track.h" #include "Framework/runDataProcessing.h" From 8ec8457ba8be76e1c7ee4718f320ff0ec5b56083 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:41:26 +0200 Subject: [PATCH 18/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index f62414795b3..7ff36fe43c4 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -74,6 +74,7 @@ struct tofSpectra { static constexpr int kCentralityFV0A = 10; static constexpr int kNMults = 10; Configurable multiplicityEstimator{"multiplicityEstimator", 0, "Flag to use a multiplicity estimator: 0 no multiplicity, 1 MultFV0M, 2 MultFT0M, 3 MultFDDM, 4 MultTracklets, 5 MultTPC, 6 MultNTracksPV, 7 MultNTracksPVeta1, 8 CentralityFT0C, 9 CentralityFT0M, 10 CentralityFV0A"}; + // Custom track cuts for the cut variation study TrackSelection customTrackCuts; Configurable useCustomTrackCuts{"useCustomTrackCuts", false, "Flag to use custom track cuts"}; From f125f125d2a20ebf03dd3a96b16c222fca53ca35 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 14 Jun 2023 10:42:04 +0000 Subject: [PATCH 19/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 7ff36fe43c4..3fa5a34b561 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -74,7 +74,7 @@ struct tofSpectra { static constexpr int kCentralityFV0A = 10; static constexpr int kNMults = 10; Configurable multiplicityEstimator{"multiplicityEstimator", 0, "Flag to use a multiplicity estimator: 0 no multiplicity, 1 MultFV0M, 2 MultFT0M, 3 MultFDDM, 4 MultTracklets, 5 MultTPC, 6 MultNTracksPV, 7 MultNTracksPVeta1, 8 CentralityFT0C, 9 CentralityFT0M, 10 CentralityFV0A"}; - + // Custom track cuts for the cut variation study TrackSelection customTrackCuts; Configurable useCustomTrackCuts{"useCustomTrackCuts", false, "Flag to use custom track cuts"}; From c4252b8992b1aeb3debe730c1fa1528c88e7962f Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:47:42 +0200 Subject: [PATCH 20/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 3fa5a34b561..da606a63c46 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -180,6 +180,7 @@ struct tofSpectra { customTrackCuts.SetMaxDcaZ(maxDcaZ.value); customTrackCuts.print(); } + // Histograms const AxisSpec vtxZAxis{100, -20, 20, "Vtx_{z} (cm)"}; const AxisSpec pAxis{binsPt, "#it{p} (GeV/#it{c})"}; From ecc5752f6d7c3c177c15ca6428ba434adebc5c14 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 12:48:48 +0200 Subject: [PATCH 21/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 179 +++++++++++++++++++++++-------------- 1 file changed, 111 insertions(+), 68 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index da606a63c46..b282eea15f9 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -16,6 +16,7 @@ /// \brief Task for the analysis of the spectra with the TOF detector. /// Depending on the configuration it can also run on tiny tables. /// + // O2 includes #include "ReconstructionDataFormats/Track.h" #include "Framework/runDataProcessing.h" @@ -74,7 +75,6 @@ struct tofSpectra { static constexpr int kCentralityFV0A = 10; static constexpr int kNMults = 10; Configurable multiplicityEstimator{"multiplicityEstimator", 0, "Flag to use a multiplicity estimator: 0 no multiplicity, 1 MultFV0M, 2 MultFT0M, 3 MultFDDM, 4 MultTracklets, 5 MultTPC, 6 MultNTracksPV, 7 MultNTracksPVeta1, 8 CentralityFT0C, 9 CentralityFT0M, 10 CentralityFV0A"}; - // Custom track cuts for the cut variation study TrackSelection customTrackCuts; Configurable useCustomTrackCuts{"useCustomTrackCuts", false, "Flag to use custom track cuts"}; @@ -90,6 +90,7 @@ struct tofSpectra { Configurable maxDcaZ{"maxDcaZ", 2.f, "Additional cut on the maximum value of the DCA z"}; Configurable minTPCNClsFound{"minTPCNClsFound", 0.f, "Additional cut on the minimum value of the number of found clusters in the TPC"}; Configurable makeTHnSparseChoice{"makeTHnSparseChoice", true, "choose if produce thnsparse"}; // RD + // Histograms HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; @@ -178,9 +179,9 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); + //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } - // Histograms const AxisSpec vtxZAxis{100, -20, 20, "Vtx_{z} (cm)"}; const AxisSpec pAxis{binsPt, "#it{p} (GeV/#it{c})"}; @@ -198,12 +199,17 @@ struct tofSpectra { h->GetXaxis()->SetBinLabel(3, "Quality passed"); h->GetXaxis()->SetBinLabel(4, "TOF passed (partial)"); - h = histos.add("evtime_tof", "event time selections from pidEvTimeFlags", kTH1D, {{5, 0, 4}}); + h = histos.add("evtime_tof", "event time selections from pidEvTimeFlags", kTH1D, {{10, -0.5, 9.5}}); h->GetXaxis()->SetBinLabel(1, "AnyEvTime"); h->GetXaxis()->SetBinLabel(2, "EvTimeDefined"); h->GetXaxis()->SetBinLabel(3, "EvTimeTOF"); h->GetXaxis()->SetBinLabel(4, "EvTimeT0AC"); h->GetXaxis()->SetBinLabel(5, "EvTimeTOFT0AV"); + h->GetXaxis()->SetBinLabel(6, "AnyEvTime (selected)"); + h->GetXaxis()->SetBinLabel(7, "EvTimeDefined (selected)"); + h->GetXaxis()->SetBinLabel(8, "EvTimeTOF (selected)"); + h->GetXaxis()->SetBinLabel(9, "EvTimeT0AC (selected)"); + h->GetXaxis()->SetBinLabel(10, "EvTimeTOFT0AV (selected)"); histos.add("Centrality/FV0A", "FV0A", HistType::kTH1D, {{binsPercentile, "Centrality FV0A"}}); histos.add("Centrality/FT0M", "FT0M", HistType::kTH1D, {{binsPercentile, "Centrality FT0M"}}); @@ -413,7 +419,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -432,32 +438,31 @@ struct tofSpectra { histos.add(hdcaxyphi[i].data(), Form("%s -- 0.9 < #it{p}_{T} < 1.1 GeV/#it{c}", pTCharge[i]), kTH2D, {phiAxis, dcaXyAxis}); if (doprocessMC) { - /* histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_goodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcgoodev[i].data(), pTCharge[i], kTH1D, {ptAxis}); - histos.add(hpt_den_prm_mcbadev[i].data(), pTCharge[i], kTH1D, {ptAxis});*/ - - //*************************************RD********************************************** - - histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_numtof_mat[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_num_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); - histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); - - //*************************************************************************************** + if (makeTHnSparseChoice) { + //*************************************RD********************************************** + + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_numtof_mat[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH3D, {ptAxis, dcaXyAxis, multAxis}); + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH2D, {ptAxis, multAxis}); + + //*************************************************************************************** + } else { + histos.add(hpt_num_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_numtof_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_num_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_prm[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_str[i].data(), pTCharge[i], kTH1D, {ptAxis}); + histos.add(hpt_den_mat[i].data(), pTCharge[i], kTH1D, {ptAxis}); + } histos.add(hpt_den_prm_recoev[i].data(), pTCharge[i], kTH1D, {ptAxis}); histos.add(hpt_den_prm_evsel[i].data(), pTCharge[i], kTH1D, {ptAxis}); @@ -541,12 +546,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -584,6 +589,19 @@ struct tofSpectra { if (requireNoTrd == true && track.hasTRD()) { return; } + histos.fill(HIST("evtime_tof"), 0.f); + if (track.isEvTimeDefined()) { + histos.fill(HIST("evtime_tof"), 1.f); + } + if (track.isEvTimeTOF()) { + histos.fill(HIST("evtime_tof"), 2.f); + } + if (track.isEvTimeT0AC()) { + histos.fill(HIST("evtime_tof"), 3.f); + } + if (track.isEvTimeTOFT0AC()) { + histos.fill(HIST("evtime_tof"), 4.f); + } switch (selectEvTime) { case 0: break; @@ -615,18 +633,18 @@ struct tofSpectra { default: LOG(fatal) << "Fatal did not recognise value select event time" << selectEvTime; } - histos.fill(HIST("evtime_tof"), 0); + histos.fill(HIST("evtime_tof"), 5.f); if (track.isEvTimeDefined()) { - histos.fill(HIST("evtime_tof"), 1); + histos.fill(HIST("evtime_tof"), 6.f); } if (track.isEvTimeTOF()) { - histos.fill(HIST("evtime_tof"), 2); + histos.fill(HIST("evtime_tof"), 7.f); } if (track.isEvTimeT0AC()) { - histos.fill(HIST("evtime_tof"), 3); + histos.fill(HIST("evtime_tof"), 8.f); } if (track.isEvTimeTOFT0AC()) { - histos.fill(HIST("evtime_tof"), 4); + histos.fill(HIST("evtime_tof"), 9.f); } if (track.hasTRD() && (lastRequiredTrdCluster > 0)) { @@ -648,12 +666,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); @@ -1133,13 +1151,37 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_num_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + if (track.hasTOF()) { + histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } + } else { + histos.fill(HIST(hpt_num_str[i]), track.pt()); + if (track.hasTOF()) { + histos.fill(HIST(hpt_numtof_str[i]), track.pt()); + } + } } else { - histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_num_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + if (track.hasTOF()) { + histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } + + } else { + histos.fill(HIST(hpt_num_mat[i]), track.pt()); + if (track.hasTOF()) { + histos.fill(HIST(hpt_numtof_mat[i]), track.pt()); + } + } } } else { - histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD - + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_num_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_num_prm[i]), track.pt()); + } if (track.hasTRD() && lastRequiredTrdCluster > 0) { int lastLayer = 0; for (int l = 7; l >= 0; l--) { @@ -1152,20 +1194,12 @@ struct tofSpectra { return; } } - if (track.hasTOF()) { - histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD - - //**********************************RD************************************************ - if (!mcParticle.isPhysicalPrimary()) { - if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_numtof_str[i]), track.pt(), track.dcaXY(), multiplicity); // RD - } else { - histos.fill(HIST(hpt_numtof_mat[i]), track.pt(), track.dcaXY(), multiplicity); // RD - } + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_numtof_prm[i]), track.pt(), track.dcaXY(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_numtof_prm[i]), track.pt()); } - - //**************************************************************************************** } } } @@ -1280,12 +1314,24 @@ struct tofSpectra { if (!mcParticle.isPhysicalPrimary()) { if (mcParticle.getProcess() == 4) { - histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity); // RD + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_den_str[i]), mcParticle.pt()); + } } else { - histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity); // RD + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_den_mat[i]), mcParticle.pt()); + } } } else { - histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity); // RD + if (makeTHnSparseChoice) { + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt(), multiplicity); // RD + } else { + histos.fill(HIST(hpt_den_prm[i]), mcParticle.pt()); + } } } @@ -1543,7 +1589,4 @@ struct tofSpectra { }; // end of spectra task -WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) -{ - return WorkflowSpec{adaptAnalysisTask(cfgc)}; -} +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { return WorkflowSpec{adaptAnalysisTask(cfgc)}; } From 0fa9ba0882f939964c4f6f708717d7aedd16900e Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 14 Jun 2023 10:49:28 +0000 Subject: [PATCH 22/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index b282eea15f9..5ddb2feb352 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -179,7 +179,7 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); - //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); + // customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms @@ -419,7 +419,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -546,12 +546,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -666,12 +666,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); From 6fb35f09aa044f6264e4706fb65d32996195ccb1 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 13:02:10 +0200 Subject: [PATCH 23/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 5ddb2feb352..b282eea15f9 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -179,7 +179,7 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); - // customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); + //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms @@ -419,7 +419,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -546,12 +546,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -666,12 +666,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); From 81a4d432dfb46c4afb97c1d30e9e9eb1726cbcb7 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 14 Jun 2023 11:02:55 +0000 Subject: [PATCH 24/25] Please consider the following formatting changes --- PWGLF/Tasks/spectraTOF.cxx | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index b282eea15f9..5ddb2feb352 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -179,7 +179,7 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); - //customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); + // customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms @@ -419,7 +419,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -546,12 +546,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -666,12 +666,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity); From 78d388d634d5a6c1a0ba2c0f4bea4af6bc869081 Mon Sep 17 00:00:00 2001 From: RD0407 <67634136+RD0407@users.noreply.github.com> Date: Wed, 14 Jun 2023 14:56:19 +0200 Subject: [PATCH 25/25] Update spectraTOF.cxx --- PWGLF/Tasks/spectraTOF.cxx | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/PWGLF/Tasks/spectraTOF.cxx b/PWGLF/Tasks/spectraTOF.cxx index 5ddb2feb352..5932382eb8d 100644 --- a/PWGLF/Tasks/spectraTOF.cxx +++ b/PWGLF/Tasks/spectraTOF.cxx @@ -179,7 +179,6 @@ struct tofSpectra { customTrackCuts.SetMinNCrossedRowsOverFindableClustersTPC(minNCrossedRowsOverFindableClustersTPC.value); customTrackCuts.SetMaxDcaXYPtDep([](float pt) { return 10000.f; }); // No DCAxy cut will be used, this is done via the member function of the task customTrackCuts.SetMaxDcaZ(maxDcaZ.value); - // customTrackCuts.SetMakeTHnSparseChoice(makeTHnSparseChoice.value); customTrackCuts.print(); } // Histograms @@ -419,7 +418,7 @@ struct tofSpectra { histos.add(hdeltatof[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTOFAxis}); histos.add(hdeltatpc[i].data(), pTCharge[i], kTH2D, {ptAxis, deltaTPCAxis}); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD histos.add(hnsigmatof[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTOFAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD histos.add(hnsigmatpc[i].data(), pTCharge[i], kTHnSparseD, {ptAxis, nsigmaTPCAxis, multAxis, dcaXyAxis, dcaZAxis}); // RD @@ -546,12 +545,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTPC); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD - histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD - histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD - } // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD + histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD + } else { // RD + histos.fill(HIST(hnsigmatpc[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaZ()); // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatpc[id]), track.pt(), nsigmaTPC, multiplicity); @@ -666,12 +665,12 @@ struct tofSpectra { } else { histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF); } - } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice.value) { // RD - if (track.sign() > 0) { // RD + } else if (multiplicityEstimator != kNoMultiplicity && makeTHnSparseChoice) { // RD + if (track.sign() > 0) { // RD histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } else { // RD + } else { // RD histos.fill(HIST(hnsigmatof[id + Np]), track.pt(), nsigmaTOF, multiplicity, track.dcaXY(), track.dcaZ()); // RD - } // RD + } // RD } else { if (track.sign() > 0) { histos.fill(HIST(hnsigmatof[id]), track.pt(), nsigmaTOF, multiplicity);