Skip to content

Commit 088eabf

Browse files
ddobrigkalibuild
andauthored
[PWGLF] Strangeness builder vs derived builder streamlining (AliceO2Group#10141)
Co-authored-by: ALICE Builder <[email protected]>
1 parent 647435e commit 088eabf

File tree

2 files changed

+11
-79
lines changed

2 files changed

+11
-79
lines changed

PWGLF/TableProducer/Strangeness/strangederivedbuilder.cxx

Lines changed: 0 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,6 @@ struct strangederivedbuilder {
130130
Produces<aod::GeOmegaMinus> geOmegaMinus;
131131
Produces<aod::GeOmegaPlus> geOmegaPlus;
132132

133-
//__________________________________________________
134-
// Found tags for findable exercise
135-
Produces<aod::V0FoundTags> v0FoundTags;
136-
Produces<aod::CascFoundTags> cascFoundTags;
137-
138133
//__________________________________________________
139134
// Debug
140135
Produces<aod::StraOrigins> straOrigin;
@@ -358,17 +353,6 @@ struct strangederivedbuilder {
358353
} else {
359354
LOGF(info, "Process strange mothers...........: no");
360355
}
361-
LOGF(info, "====] findable exercise extras [==================================");
362-
if (doprocessV0FoundTags) {
363-
LOGF(info, "Process found V0 tags.............: yes");
364-
} else {
365-
LOGF(info, "Process found V0 tags.............: no");
366-
}
367-
if (doprocessCascFoundTags) {
368-
LOGF(info, "Process found cascade tags........: yes");
369-
} else {
370-
LOGF(info, "Process found cascade tags........: no");
371-
}
372356
LOGF(info, "==================================================================");
373357

374358
// setup map for fast checking if enabled
@@ -388,16 +372,6 @@ struct strangederivedbuilder {
388372

389373
histos.add("h2dNVerticesVsCentrality", "h2dNVerticesVsCentrality", kTH2D, {axisCentrality, axisNVertices});
390374

391-
if (doprocessV0FoundTags || doprocessCascFoundTags) {
392-
auto h = histos.add<TH1>("hFoundTagsCounters", "hFoundTagsCounters", kTH1D, {{6, -0.5f, 5.5f}});
393-
h->GetXaxis()->SetBinLabel(1, "Found V0s");
394-
h->GetXaxis()->SetBinLabel(2, "Findable V0s");
395-
h->GetXaxis()->SetBinLabel(3, "Findable & found V0s");
396-
h->GetXaxis()->SetBinLabel(4, "Found Cascades");
397-
h->GetXaxis()->SetBinLabel(5, "Findable Cascades");
398-
h->GetXaxis()->SetBinLabel(6, "Findable & found Cascades");
399-
}
400-
401375
// for QA and test purposes
402376
auto hRawCentrality = histos.add<TH1>("hRawCentrality", "hRawCentrality", kTH1F, {axisRawCentrality});
403377

@@ -1057,60 +1031,12 @@ struct strangederivedbuilder {
10571031
StraTPCQVs(collision.qTPCL() * std::cos(2 * collision.psiTPCL()), collision.qTPCL() * std::sin(2 * collision.psiTPCL()), collision.qTPCL(), collision.qTPCR() * std::cos(2 * collision.psiTPCR()), collision.qTPCR() * std::sin(2 * collision.psiTPCR()), collision.qTPCR());
10581032
}
10591033

1060-
uint64_t combineProngIndices(uint32_t low, uint32_t high)
1061-
{
1062-
return ((static_cast<uint64_t>(high)) << 32) | (static_cast<uint64_t>(low));
1063-
}
1064-
1065-
void processV0FoundTags(aod::V0s const& foundV0s, aod::V0Datas const& findableV0s, aod::FindableV0s const& /* added to avoid troubles */)
1066-
{
1067-
histos.fill(HIST("hFoundTagsCounters"), 0.0f, foundV0s.size());
1068-
histos.fill(HIST("hFoundTagsCounters"), 1.0f, findableV0s.size());
1069-
1070-
for (auto const& findableV0 : findableV0s) {
1071-
bool hasBeenFound = false;
1072-
for (auto const& foundV0 : foundV0s) {
1073-
if (foundV0.posTrackId() == findableV0.posTrackId() && foundV0.negTrackId() == findableV0.negTrackId()) {
1074-
hasBeenFound = true;
1075-
}
1076-
}
1077-
v0FoundTags(hasBeenFound);
1078-
}
1079-
}
1080-
10811034
using uint128_t = __uint128_t;
10821035
uint128_t combineProngIndices128(uint32_t pos, uint32_t neg, uint32_t bach)
10831036
{
10841037
return ((static_cast<uint128_t>(pos)) << 64) | ((static_cast<uint128_t>(neg)) << 32) | (static_cast<uint128_t>(bach));
10851038
}
10861039

1087-
void processCascFoundTags(aod::Cascades const& foundCascades, aod::CascDatas const& findableCascades, aod::V0s const&, aod::FindableCascades const& /* added to avoid troubles */)
1088-
{
1089-
histos.fill(HIST("hFoundTagsCounters"), 3.0f, foundCascades.size());
1090-
histos.fill(HIST("hFoundTagsCounters"), 4.0f, findableCascades.size());
1091-
1092-
// pack the found V0s in a long long
1093-
std::vector<uint128_t> foundCascadesPacked;
1094-
foundCascadesPacked.reserve(foundCascades.size());
1095-
for (auto const& foundCascade : foundCascades) {
1096-
auto v0 = foundCascade.v0();
1097-
foundCascadesPacked[foundCascade.globalIndex()] = combineProngIndices128(v0.posTrackId(), v0.negTrackId(), foundCascade.bachelorId());
1098-
}
1099-
1100-
bool hasBeenFound = false;
1101-
for (auto const& findableCascade : findableCascades) {
1102-
uint128_t indexPack = combineProngIndices128(findableCascade.posTrackId(), findableCascade.negTrackId(), findableCascade.bachelorId());
1103-
for (uint32_t ic = 0; ic < foundCascades.size(); ic++) {
1104-
if (indexPack == foundCascadesPacked[ic]) {
1105-
hasBeenFound = true;
1106-
histos.fill(HIST("hFoundTagsCounters"), 5.0f);
1107-
break;
1108-
}
1109-
}
1110-
cascFoundTags(hasBeenFound);
1111-
}
1112-
}
1113-
11141040
void processDataframeIDs(aod::Origins const& origins)
11151041
{
11161042
auto origin = origins.begin();
@@ -1150,10 +1076,6 @@ struct strangederivedbuilder {
11501076
PROCESS_SWITCH(strangederivedbuilder, processTPCQVectors, "Produce TPC Q-vectors table", false);
11511077
PROCESS_SWITCH(strangederivedbuilder, processTPCQVectorsLF, "Produce TPC Q-vectors table using LF temporary calibration", false);
11521078
PROCESS_SWITCH(strangederivedbuilder, processZDCSP, "Produce ZDC SP table", false);
1153-
1154-
// dedicated findable functionality
1155-
PROCESS_SWITCH(strangederivedbuilder, processV0FoundTags, "Produce FoundV0Tags for findable exercise", false);
1156-
PROCESS_SWITCH(strangederivedbuilder, processCascFoundTags, "Produce FoundCascTags for findable exercise", false);
11571079
};
11581080

11591081
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)

PWGLF/TableProducer/Strangeness/strangenessbuilderfindable.cxx

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@
99
// granted to it by virtue of its status as an Intergovernmental Organization
1010
// or submit itself to any jurisdiction.
1111
//
12-
// Strangeness builder task
12+
// ========================
13+
/// \file strangenessbuilder.cxx
14+
/// \brief Strangeness builder task
15+
/// \author David Dobrigkeit Chinellato ([email protected])
1316
// ========================
1417
//
1518
// This task produces all tables that may be necessary for
@@ -21,6 +24,13 @@
2124
// -- processRealData[Run2] .........: use this OR processMonteCarlo but NOT both
2225
// -- processMonteCarlo[Run2] .......: use this OR processRealData but NOT both
2326
//
27+
// Most important configurables:
28+
// -- enabledTables ......: key control bools to decide which tables to generate
29+
// task will adapt algorithm to spare / spend CPU accordingly
30+
// -- mc_findableMode ....: 0: only found (default), 1: add findable to found, 2: all findable
31+
// When using findables, refer to FoundTag bools for checking if found
32+
// -- v0builderopts ......: V0-specific building options (topological, etc)
33+
// -- cascadebuilderopts .: cascade-specific building options (topological, etc)
2434

2535
#include <string>
2636
#include <vector>

0 commit comments

Comments
 (0)