Skip to content

Commit f5c45ac

Browse files
authored
Add centrality estimators (#4618)
* Add centrality estimators * Fix bug
1 parent 787e6ef commit f5c45ac

File tree

1 file changed

+24
-2
lines changed

1 file changed

+24
-2
lines changed

PWGLF/TableProducer/hyperRecoTask.cxx

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ using namespace o2::framework;
4141
using namespace o2::framework::expressions;
4242
using std::array;
4343
using TracksFull = soa::Join<aod::TracksIU, aod::TracksExtra, aod::TracksCovIU>;
44-
using CollisionsFull = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0Ms>;
45-
using CollisionsFullWithFlow = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0Ms, aod::QvectorFT0As, aod::QvectorFT0Cs, aod::QvectorFT0Ms, aod::QvectorFV0As>;
44+
using CollisionsFull = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0Ms, aod::CentFV0As>;
45+
using CollisionsFullWithFlow = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0As, aod::CentFT0Cs, aod::CentFT0Ms, aod::CentFV0As, aod::QvectorFT0As, aod::QvectorFT0Cs, aod::QvectorFT0Ms, aod::QvectorFV0As>;
4646

4747
namespace
4848
{
@@ -51,6 +51,10 @@ static const std::vector<std::string> betheBlochParNames{"p0", "p1", "p2", "p3",
5151
static const std::vector<std::string> particleNames{"He3"};
5252
std::shared_ptr<TH1> hEvents;
5353
std::shared_ptr<TH1> hZvtx;
54+
std::shared_ptr<TH1> hCentFT0A;
55+
std::shared_ptr<TH1> hCentFT0C;
56+
std::shared_ptr<TH1> hCentFT0M;
57+
std::shared_ptr<TH1> hCentFV0A;
5458
std::shared_ptr<TH2> hNsigma3HeSel;
5559
std::shared_ptr<TH2> hDeDx3HeSel;
5660
std::shared_ptr<TH2> hDeDxTot;
@@ -147,6 +151,7 @@ struct hyperRecoTask {
147151
ConfigurableAxis dedxBins{"dedxBins", {1000, 0.f, 1000.f}, "Binning for dE/dx"};
148152
ConfigurableAxis nSigmaBins{"nSigmaBins", {200, -5.f, 5.f}, "Binning for n sigma"};
149153
ConfigurableAxis zVtxBins{"zVtxBins", {100, -20.f, 20.f}, "Binning for n sigma"};
154+
ConfigurableAxis centBins{"centBins", {100, 0.f, 100.f}, "Binning for centrality"};
150155

151156
// std vector of candidates
152157
std::vector<hyperCandidate> hyperCandidates;
@@ -186,6 +191,7 @@ struct hyperRecoTask {
186191
const AxisSpec dedxAxis{dedxBins, "d#it{E}/d#it{x}"};
187192
const AxisSpec nSigma3HeAxis{nSigmaBins, "n_{#sigma}({}^{3}He)"};
188193
const AxisSpec zVtxAxis{zVtxBins, "z_{vtx} (cm)"};
194+
const AxisSpec centAxis{centBins, "Centrality"};
189195

190196
hNsigma3HeSel = qaRegistry.add<TH2>("hNsigma3HeSel", "; p_{TPC}/z (GeV/#it{c}); n_{#sigma} ({}^{3}He)", HistType::kTH2F, {rigidityAxis, nSigma3HeAxis});
191197
hDeDx3HeSel = qaRegistry.add<TH2>("hDeDx3HeSel", ";p_{TPC}/z (GeV/#it{c}); dE/dx", HistType::kTH2F, {rigidityAxis, dedxAxis});
@@ -206,6 +212,10 @@ struct hyperRecoTask {
206212
hIsMatterGenTwoBody->GetXaxis()->SetBinLabel(2, "Antimatter");
207213
}
208214
hZvtx = qaRegistry.add<TH1>("hZvtx", ";z_{vtx} (cm); ", HistType::kTH1D, {{100, -20, 20}});
215+
hCentFT0A = qaRegistry.add<TH1>("hCentFT0A", ";Centrality; ", HistType::kTH1D, {{100, 0, 100}});
216+
hCentFT0C = qaRegistry.add<TH1>("hCentFT0C", ";Centrality; ", HistType::kTH1D, {{100, 0, 100}});
217+
hCentFT0M = qaRegistry.add<TH1>("hCentFT0M", ";Centrality; ", HistType::kTH1D, {{100, 0, 100}});
218+
hCentFV0A = qaRegistry.add<TH1>("hCentFV0A", ";Centrality; ", HistType::kTH1D, {{100, 0, 100}});
209219
}
210220

211221
void initCCDB(aod::BCsWithTimestamps::iterator const& bc)
@@ -457,6 +467,10 @@ struct hyperRecoTask {
457467

458468
hEvents->Fill(2.);
459469
hZvtx->Fill(collision.posZ());
470+
hCentFT0A->Fill(collision.centFT0A());
471+
hCentFT0C->Fill(collision.centFT0C());
472+
hCentFT0M->Fill(collision.centFT0M());
473+
hCentFV0A->Fill(collision.centFV0A());
460474

461475
const uint64_t collIdx = collision.globalIndex();
462476
auto V0Table_thisCollision = V0s.sliceBy(perCollision, collIdx);
@@ -500,6 +514,10 @@ struct hyperRecoTask {
500514

501515
hEvents->Fill(2.);
502516
hZvtx->Fill(collision.posZ());
517+
hCentFT0A->Fill(collision.centFT0A());
518+
hCentFT0C->Fill(collision.centFT0C());
519+
hCentFT0M->Fill(collision.centFT0M());
520+
hCentFV0A->Fill(collision.centFV0A());
503521

504522
const uint64_t collIdx = collision.globalIndex();
505523
auto V0Table_thisCollision = V0s.sliceBy(perCollision, collIdx);
@@ -544,6 +562,10 @@ struct hyperRecoTask {
544562
continue;
545563
hEvents->Fill(2.);
546564
hZvtx->Fill(collision.posZ());
565+
hCentFT0A->Fill(collision.centFT0A());
566+
hCentFT0C->Fill(collision.centFT0C());
567+
hCentFT0M->Fill(collision.centFT0M());
568+
hCentFV0A->Fill(collision.centFV0A());
547569

548570
const uint64_t collIdx = collision.globalIndex();
549571
auto V0Table_thisCollision = V0s.sliceBy(perCollision, collIdx);

0 commit comments

Comments
 (0)