Skip to content

Commit b50f81f

Browse files
[PWGLF] Add new centralities in StraCents table (#15589)
Co-authored-by: ALICE Builder <alibuild@users.noreply.github.com>
1 parent 4c34ef3 commit b50f81f

File tree

5 files changed

+69
-10
lines changed

5 files changed

+69
-10
lines changed

PWGLF/DataModel/LFStrangenessTables.h

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,11 @@ DECLARE_SOA_TABLE_VERSIONED(StraCents_001, "AOD", "STRACENTS", 1, //! centrality
8282
cent::CentFT0C, cent::CentFV0A,
8383
cent::CentFT0CVariant1, cent::CentMFT,
8484
cent::CentNGlobal);
85+
DECLARE_SOA_TABLE_VERSIONED(StraCents_002, "AOD", "STRACENTS", 2, //! centrality percentiles in Run 3
86+
cent::CentFT0M, cent::CentFT0A,
87+
cent::CentFT0C, cent::CentFV0A,
88+
cent::CentFT0CVariant1, cent::CentFT0CVariant2,
89+
cent::CentMFT, cent::CentNGlobal, cent::CentNTPV);
8590

8691
DECLARE_SOA_TABLE(StraCentsRun2, "AOD", "STRACENTSRUN2", //! centrality percentiles in Run 2
8792
cent::CentRun2V0M, cent::CentRun2V0A,
@@ -325,11 +330,11 @@ DECLARE_SOA_TABLE(StraEvTimes, "AOD", "STRAEVTIMES", //! event time (FT0, TOF)
325330
stracollision::EventTime);
326331

327332
using StraRawCents = StraRawCents_004;
328-
using StraCents = StraCents_001;
333+
using StraCents = StraCents_002;
329334
using StraEvSels = StraEvSels_005;
330335
using StraStamps = StraStamps_001;
331336
using StraCollision = StraCollisions::iterator;
332-
using StraCent = StraCents_001::iterator;
337+
using StraCent = StraCents::iterator;
333338

334339
namespace stramccollision
335340
{

PWGLF/TableProducer/Strangeness/Converters/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,11 @@ o2physics_add_dpl_workflow(stracentconverter
124124
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore
125125
COMPONENT_NAME Analysis)
126126

127+
o2physics_add_dpl_workflow(stracentconverter2
128+
SOURCES stracentconverter2.cxx
129+
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore
130+
COMPONENT_NAME Analysis)
131+
127132
o2physics_add_dpl_workflow(stramccollmultconverter
128133
SOURCES stramccollmultconverter.cxx
129134
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2+
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3+
// All rights not expressly granted are reserved.
4+
//
5+
// This software is distributed under the terms of the GNU General Public
6+
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7+
//
8+
// In applying this license CERN does not waive the privileges and immunities
9+
// granted to it by virtue of its status as an Intergovernmental Organization
10+
// or submit itself to any jurisdiction.
11+
#include "PWGLF/DataModel/LFStrangenessTables.h"
12+
13+
#include "Framework/AnalysisDataModel.h"
14+
#include "Framework/AnalysisTask.h"
15+
#include "Framework/runDataProcessing.h"
16+
17+
using namespace o2;
18+
using namespace o2::framework;
19+
20+
// Converts Stra Cents from 001 to 002
21+
struct stracentconverter2 {
22+
Produces<aod::StraCents_002> straCents_002;
23+
24+
void process(aod::StraCents_001 const& straCents_001)
25+
{
26+
for (auto& values : straCents_001) {
27+
straCents_002(values.centFT0M(),
28+
values.centFT0A(),
29+
values.centFT0C(),
30+
values.centFV0A(),
31+
values.centFT0CVariant1(),
32+
-999.0 /*dummy FT0C Variant 2*/,
33+
values.centMFT(),
34+
values.centNGlobal(),
35+
-999.0 /*dummy NTPV value*/);
36+
}
37+
}
38+
};
39+
40+
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)
41+
{
42+
return WorkflowSpec{
43+
adaptAnalysisTask<stracentconverter2>(cfgc)};
44+
}

PWGLF/TableProducer/Strangeness/stracents.cxx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ struct straCents {
131131
CalibrationInfo ft0aInfo = CalibrationInfo("FT0A");
132132
CalibrationInfo ft0cInfo = CalibrationInfo("FT0C");
133133
CalibrationInfo ft0cVariant1Info = CalibrationInfo("FT0Cvar1");
134+
CalibrationInfo ft0cVariant2Info = CalibrationInfo("FT0Cvar2");
134135
CalibrationInfo fddmInfo = CalibrationInfo("FDD");
135136
CalibrationInfo ntpvInfo = CalibrationInfo("NTracksPV");
136137
CalibrationInfo nGlobalInfo = CalibrationInfo("NGlobal");
@@ -243,6 +244,7 @@ struct straCents {
243244
ft0aInfo.mCalibrationStored = false;
244245
ft0cInfo.mCalibrationStored = false;
245246
ft0cVariant1Info.mCalibrationStored = false;
247+
ft0cVariant2Info.mCalibrationStored = false;
246248
fddmInfo.mCalibrationStored = false;
247249
ntpvInfo.mCalibrationStored = false;
248250
nGlobalInfo.mCalibrationStored = false;
@@ -371,6 +373,7 @@ struct straCents {
371373
getccdb(ft0aInfo, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
372374
getccdb(ft0cInfo, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
373375
getccdb(ft0cVariant1Info, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
376+
getccdb(ft0cVariant2Info, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
374377
getccdb(fddmInfo, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
375378
getccdb(ntpvInfo, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
376379
getccdb(nGlobalInfo, ccdbConfig.genName, ccdbConfig.doNotCrashOnNull);
@@ -533,12 +536,14 @@ struct straCents {
533536
float centFT0C = getCentrality(ft0cInfo, multZeqFT0C);
534537
float centFV0A = getCentrality(fv0aInfo, multZeqFV0A);
535538
float centFT0CVariant1 = getCentrality(ft0cVariant1Info, multZeqFT0C);
539+
float centFT0CVariant2 = getCentrality(ft0cVariant2Info, multZeqFT0C);
536540
float centMFT = 100.5f; // missing mftNtracks in strangeness data model
537541
float centNGlobal = getCentrality(nGlobalInfo, collision.multNTracksGlobal());
542+
float centNTPV = 100.5f; // missing multNContribs in strangeness data model
538543

539544
strangeCents(centFT0M, centFT0A,
540-
centFT0C, centFV0A, centFT0CVariant1,
541-
centMFT, centNGlobal);
545+
centFT0C, centFV0A, centFT0CVariant1, centFT0CVariant2,
546+
centMFT, centNGlobal, centNTPV);
542547

543548
if (produceHistograms.value) {
544549
histos.fill(HIST("FT0M/Mult"), multZeqFT0A + multZeqFT0C);

PWGLF/TableProducer/Strangeness/strangederivedbuilder.cxx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -555,8 +555,8 @@ struct strangederivedbuilder {
555555
}
556556

557557
products.strangeCents(collision.centFT0M(), collision.centFT0A(),
558-
centrality, collision.centFV0A(), collision.centFT0CVariant1(),
559-
collision.centMFT(), collision.centNGlobal());
558+
centrality, collision.centFV0A(), collision.centFT0CVariant1(), collision.centFT0CVariant2(),
559+
collision.centMFT(), collision.centNGlobal(), collision.centNTPV());
560560
products.strangeEvSels(collision.sel8(), collision.selection_raw(),
561561
collision.multFT0A() * static_cast<float>(fillTruncationOptions.fillRawFT0A),
562562
collision.multFT0C() * static_cast<float>(fillTruncationOptions.fillRawFT0C),
@@ -707,23 +707,23 @@ struct strangederivedbuilder {
707707
}
708708
}
709709

710-
void processCollisionsRun3(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentNGlobals, aod::CentMFTs, aod::EvSels, aod::MultsExtra, aod::MultsGlobal> const& collisions, aod::V0Datas const& V0s, aod::CascDatas const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&)
710+
void processCollisionsRun3(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentFT0CVariant2s, aod::CentNGlobals, aod::CentMFTs, aod::CentNTPVs, aod::EvSels, aod::MultsExtra, aod::MultsGlobal> const& collisions, aod::V0Datas const& V0s, aod::CascDatas const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&)
711711
{
712712
populateCollisionTables(collisions, collisions, V0s, Cascades, KFCascades, TraCascades, bcs);
713713
}
714714

715-
void processCollisionsRun3WithUD(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentNGlobals, aod::CentMFTs, aod::EvSels, aod::MultsExtra, aod::MultsGlobal> const& collisions, aod::V0Datas const& V0s, aod::CascDatas const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, UDCollisionsFull const& udCollisions)
715+
void processCollisionsRun3WithUD(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentFT0CVariant2s, aod::CentNGlobals, aod::CentMFTs, aod::CentNTPVs, aod::EvSels, aod::MultsExtra, aod::MultsGlobal> const& collisions, aod::V0Datas const& V0s, aod::CascDatas const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, UDCollisionsFull const& udCollisions)
716716
{
717717
populateCollisionTables(collisions, udCollisions, V0s, Cascades, KFCascades, TraCascades, bcs);
718718
}
719719

720-
void processCollisionsRun3WithMC(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentNGlobals, aod::CentMFTs, aod::EvSels, aod::McCollisionLabels, aod::MultsExtra, aod::MultsGlobal> const& collisions, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::V0MCCores, aod::V0MCCollRefs> const& /*V0MCCores*/, soa::Join<aod::CascDatas, aod::McCascLabels> const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, soa::Join<aod::McCollisions, aod::McCollsExtra, aod::MultsExtraMC> const& mcCollisions, aod::McParticles const& mcParticles)
720+
void processCollisionsRun3WithMC(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentFT0CVariant2s, aod::CentNGlobals, aod::CentMFTs, aod::CentNTPVs, aod::EvSels, aod::McCollisionLabels, aod::MultsExtra, aod::MultsGlobal> const& collisions, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::V0MCCores, aod::V0MCCollRefs> const& /*V0MCCores*/, soa::Join<aod::CascDatas, aod::McCascLabels> const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, soa::Join<aod::McCollisions, aod::McCollsExtra, aod::MultsExtraMC> const& mcCollisions, aod::McParticles const& mcParticles)
721721
{
722722
populateMCCollisionTable(mcCollisions, mcParticles);
723723
populateCollisionTables(collisions, collisions, V0s, Cascades, KFCascades, TraCascades, bcs);
724724
}
725725

726-
void processCollisionsRun3WithUDWithMC(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentNGlobals, aod::CentMFTs, aod::EvSels, aod::McCollisionLabels, aod::MultsExtra, aod::MultsGlobal> const& collisions, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::V0MCCores, aod::V0MCCollRefs> const& /*V0MCCores*/, soa::Join<aod::CascDatas, aod::McCascLabels> const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, UDCollisionsFull const& udCollisions, soa::Join<aod::McCollisions, aod::McCollsExtra, aod::MultsExtraMC> const& mcCollisions, aod::McParticles const& mcParticles)
726+
void processCollisionsRun3WithUDWithMC(soa::Join<aod::Collisions, aod::FT0Mults, aod::FV0Mults, aod::FDDMults, aod::PVMults, aod::ZDCMults, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::CentFV0As, aod::CentFT0CVariant1s, aod::CentFT0CVariant2s, aod::CentNGlobals, aod::CentMFTs, aod::CentNTPVs, aod::EvSels, aod::McCollisionLabels, aod::MultsExtra, aod::MultsGlobal> const& collisions, soa::Join<aod::V0Datas, aod::McV0Labels> const& V0s, soa::Join<aod::V0MCCores, aod::V0MCCollRefs> const& /*V0MCCores*/, soa::Join<aod::CascDatas, aod::McCascLabels> const& Cascades, aod::KFCascDatas const& KFCascades, aod::TraCascDatas const& TraCascades, soa::Join<aod::BCsWithTimestamps, aod::Run3MatchedToBCSparse> const& bcs, aod::FT0s const&, aod::FV0As const&, aod::FDDs const&, aod::Zdcs const&, UDCollisionsFull const& udCollisions, soa::Join<aod::McCollisions, aod::McCollsExtra, aod::MultsExtraMC> const& mcCollisions, aod::McParticles const& mcParticles)
727727
{
728728
populateMCCollisionTable(mcCollisions, mcParticles);
729729
populateCollisionTables(collisions, udCollisions, V0s, Cascades, KFCascades, TraCascades, bcs);

0 commit comments

Comments
 (0)