Skip to content

Commit 890b1bd

Browse files
committed
PWGLF antitriton workflow review fix
1 parent bc69f0c commit 890b1bd

1 file changed

Lines changed: 25 additions & 24 deletions

File tree

PWGLF/Tasks/Nuspex/antitritonAnalysis.cxx

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -17,22 +17,31 @@
1717
#include "PWGCF/Femto3D/DataModel/PIDutils.h"
1818
#include "PWGCF/Femto3D/DataModel/singletrackselector.h"
1919

20-
#include "Common/DataModel/Multiplicity.h"
20+
#include "Common/Core/RecoDecay.h"
21+
#include "Common/DataModel/PIDResponseITS.h"
2122

23+
#include <CommonConstants/PhysicsConstants.h>
2224
#include <Framework/ASoA.h>
2325
#include <Framework/AnalysisDataModel.h>
2426
#include <Framework/AnalysisTask.h>
25-
#include <Framework/DataTypes.h>
27+
#include <Framework/Configurable.h>
2628
#include <Framework/Expressions.h>
2729
#include <Framework/HistogramRegistry.h>
28-
#include <Framework/StaticFor.h>
30+
#include <Framework/HistogramSpec.h>
31+
#include <Framework/InitContext.h>
32+
#include <Framework/OutputObjHeader.h>
2933
#include <Framework/runDataProcessing.h>
30-
#include <MathUtils/Utils.h>
3134

32-
#include <TH1F.h>
33-
#include <TParameter.h>
35+
#include <TH1.h>
36+
#include <TH2.h>
37+
#include <TH3.h>
38+
#include <TPDGCode.h>
39+
#include <TString.h>
3440

3541
#include <array>
42+
#include <cmath>
43+
#include <cstddef>
44+
#include <cstdint>
3645
#include <memory>
3746
#include <string>
3847
#include <utility>
@@ -71,7 +80,7 @@ struct AntitritonAnalysis {
7180
Configurable<float> maxTpcFractionSharedCls{"maxTpcFractionSharedCls", 0.4, "maximum fraction of TPC shared clasters"};
7281
Configurable<int> minItsNCls{"minItsNCls", 0, "minimum allowed number of ITS clasters for a track"};
7382
Configurable<float> itsChi2NCl{"itsChi2NCl", 100.0, "upper limit for chi2 value of a fit over ITS clasters for a track"};
74-
Configurable<int> particlePDG{"particlePDG", 1000010030, "PDG code of a particle to perform PID for (only pion, kaon, proton and deurton are supported now)"};
83+
Configurable<int> particlePDG{"particlePDG", o2::constants::physics::Pdg::kTriton, "PDG code of a particle to perform PID for"};
7584
Configurable<std::vector<float>> tpcNSigma{"tpcNSigma", std::vector<float>{-4.0f, 4.0f}, "Nsigma range in TPC before the TOF is used"};
7685
Configurable<std::vector<float>> itsNSigma{"itsNSigma", std::vector<float>{-10.0f, 10.0f}, "Nsigma range in ITS to use along with TPC"};
7786
Configurable<float> pidTrshld{"pidTrshld", 0.0, "value of momentum from which the PID is done with TOF (before that only TPC is used)"};
@@ -81,7 +90,7 @@ struct AntitritonAnalysis {
8190
Configurable<std::vector<float>> tofNSigma{"tofNSigma", std::vector<float>{-4.0f, 4.0f}, "Nsigma range in TOF"};
8291
Configurable<std::vector<float>> tpcNSigmaResidual{"tpcNSigmaResidual", std::vector<float>{-5.0f, 5.0f}, "residual TPC Nsigma cut to use with the TOF"};
8392

84-
Configurable<std::vector<int>> particlePDGtoReject{"particlePDGtoReject", std::vector<int>{2212}, "PDG codes of perticles that will be rejected with TPC"};
93+
Configurable<std::vector<int>> particlePDGtoReject{"particlePDGtoReject", std::vector<int>{PDG_t::kProton}, "PDG codes of perticles that will be rejected with TPC"};
8594
Configurable<std::vector<float>> rejectWithinNsigmaTOF{"rejectWithinNsigmaTOF", std::vector<float>{-0.0f, 0.0f}, "TOF rejection Nsigma range for particles specified with PDG to be rejected"};
8695
Configurable<std::vector<float>> rejectWithinNsigmaTPC{"rejectWithinNsigmaTPC", std::vector<float>{-0.0f, 0.0f}, "TPC rejection Nsigma range for particles specified with PDG to be rejected"};
8796

@@ -94,7 +103,7 @@ struct AntitritonAnalysis {
94103
std::pair<int, std::vector<float>> TPCcuts;
95104
std::pair<int, std::vector<float>> TOFcuts;
96105

97-
static constexpr float kMassTriton = 2.808921f; // GeV/c^2
106+
static constexpr float kMassTriton = o2::constants::physics::MassTriton; // GeV/c^2
98107

99108
Filter pFilter = o2::aod::singletrackselector::p > minP&& o2::aod::singletrackselector::p < maxP;
100109
Filter etaFilter = nabs(o2::aod::singletrackselector::eta) < eta;
@@ -129,7 +138,7 @@ struct AntitritonAnalysis {
129138
std::shared_ptr<TH1> origin;
130139
};
131140

132-
const std::vector<std::string> stageDirs = {
141+
static inline const std::vector<std::string> stageDirs = {
133142
"init",
134143
"No_Cuts",
135144
"ITS_Cuts",
@@ -143,7 +152,7 @@ struct AntitritonAnalysis {
143152
};
144153

145154
// signDirs[0] = "t" for sign > 0 (triton), signDirs[1] = "at" for sign < 0 (antitriton).
146-
const std::array<std::string, 2> signDirs = {"t", "at"};
155+
static inline const std::array<std::string, 2> signDirs = {"t", "at"};
147156

148157
std::vector<std::array<HistSet, 2>> hSets;
149158
std::vector<std::array<HistSet, 2>> hSetsTrue;
@@ -208,22 +217,14 @@ struct AntitritonAnalysis {
208217
return track.p() * std::sqrt(1.f / (beta * beta) - 1.f);
209218
}
210219

211-
template <typename TrackType>
212-
static float getY(const TrackType& track, float mass)
213-
{
214-
const float pTr = track.p();
215-
const float pzTr = track.pz();
216-
const float ETr = std::sqrt(pTr * pTr + mass * mass);
217-
return 0.5f * std::log((ETr + pzTr) / (ETr - pzTr));
218-
}
219-
220220
template <typename TrackType>
221221
void fillHistSet(HistSet& h, const TrackType& track, int pdg)
222222
{
223223
const float mass = kMassTriton;
224+
const auto y = static_cast<float>(RecoDecay::y(std::array{track.px(), track.py(), track.pz()}, mass));
224225
h.eta->Fill(track.eta());
225-
h.eta_to_y->Fill(track.eta(), getY(track, mass));
226-
h.y->Fill(getY(track, mass));
226+
h.eta_to_y->Fill(track.eta(), y);
227+
h.y->Fill(y);
227228
h.phi->Fill(track.phi());
228229
h.p->Fill(track.p());
229230
h.pt->Fill(track.pt());
@@ -281,7 +282,7 @@ struct AntitritonAnalysis {
281282
TPCcuts = std::make_pair(particlePDG.value, tpcNSigma);
282283
TOFcuts = std::make_pair(particlePDG.value, tofNSigma);
283284

284-
int N = dcaBinning.value[0]; // number of bins -- must be odd otherwise will be increased by 1
285+
int N = static_cast<int>(dcaBinning.value[0]); // number of bins -- must be odd otherwise will be increased by 1
285286
if (N % 2 != 1) {
286287
N += 1;
287288
}
@@ -397,7 +398,7 @@ struct AntitritonAnalysis {
397398
: o2::aod::singletrackselector::TPCselection<false>(track, std::make_pair(particlePDG.value, tpcNSigmaResidual.value), tpcNSigmaResidual.value);
398399
if (!pidOk)
399400
continue;
400-
if (std::fabs(getY(track, kMassTriton)) > eta)
401+
if (std::fabs(static_cast<float>(RecoDecay::y(std::array{track.px(), track.py(), track.pz()}, kMassTriton))) > eta)
401402
continue;
402403

403404
fillSet<FillExtra, HasMC>(hSets[6][signIdx], hSetsTrue[6][signIdx], track, particlePDG.value); // PIDcuts

0 commit comments

Comments
 (0)