Skip to content

Commit 40eb41b

Browse files
authored
add TPC multiplicity to multiplicity table (#349)
1 parent 636d58f commit 40eb41b

2 files changed

Lines changed: 13 additions & 9 deletions

File tree

Common/DataModel/Multiplicity.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ DECLARE_SOA_DYNAMIC_COLUMN(MultV0M, multV0M, //!
2828
DECLARE_SOA_DYNAMIC_COLUMN(MultT0M, multT0M, //!
2929
[](float multT0A, float multT0C) -> float { return multT0A + multT0C; });
3030
DECLARE_SOA_COLUMN(MultTracklets, multTracklets, int);
31+
DECLARE_SOA_COLUMN(MultTPC, multTPC, int);
3132

3233
} // namespace mult
3334
DECLARE_SOA_TABLE(Mults, "AOD", "MULT", //!
@@ -36,7 +37,8 @@ DECLARE_SOA_TABLE(Mults, "AOD", "MULT", //!
3637
mult::MultZNA, mult::MultZNC,
3738
mult::MultV0M<mult::MultV0A, mult::MultV0C>,
3839
mult::MultT0M<mult::MultT0A, mult::MultT0C>,
39-
mult::MultTracklets);
40+
mult::MultTracklets,
41+
mult::MultTPC);
4042
using Mult = Mults::iterator;
4143
} // namespace o2::aod
4244

Common/TableProducer/multiplicityTable.cxx

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ void customize(std::vector<ConfigParamSpec>& workflowOptions)
2828

2929
struct MultiplicityTableTaskIndexed {
3030
Produces<aod::Mults> mult;
31-
Partition<aod::Tracks> run2tracklets = (aod::track::trackType == static_cast<uint8_t>(o2::aod::track::TrackTypeEnum::Run2Tracklet));
32-
33-
void processRun2(aod::Run2MatchedSparse::iterator const& collision, aod::Tracks const& tracks, aod::BCs const&, aod::Zdcs const&, aod::FV0As const& fv0as, aod::FV0Cs const& fv0cs, aod::FT0s const& ft0s)
31+
Partition<soa::Join<aod::Tracks, aod::TracksExtra>> run2tracklets = (aod::track::trackType == static_cast<uint8_t>(o2::aod::track::TrackTypeEnum::Run2Tracklet));
32+
Partition<soa::Join<aod::Tracks, aod::TracksExtra>> tracksWithTPC = (aod::track::tpcNClsFindable > (uint8_t)0);
33+
void processRun2(aod::Run2MatchedSparse::iterator const& collision, soa::Join<aod::Tracks, aod::TracksExtra> const& tracksExtra, aod::BCs const&, aod::Zdcs const&, aod::FV0As const& fv0as, aod::FV0Cs const& fv0cs, aod::FT0s const& ft0s)
3434
{
3535
float multV0A = -1.f;
3636
float multV0C = -1.f;
@@ -39,6 +39,7 @@ struct MultiplicityTableTaskIndexed {
3939
float multZNA = -1.f;
4040
float multZNC = -1.f;
4141
int multTracklets = run2tracklets.size();
42+
int multTPC = tracksWithTPC.size();
4243

4344
if (collision.has_fv0a()) {
4445
auto v0a = collision.fv0a();
@@ -66,8 +67,9 @@ struct MultiplicityTableTaskIndexed {
6667
multZNA = zdc.energyCommonZNA();
6768
multZNC = zdc.energyCommonZNC();
6869
}
69-
LOGF(debug, "multV0A=%5.0f multV0C=%5.0f multT0A=%5.0f multT0C=%5.0f multZNA=%6.0f multZNC=%6.0f multTracklets=%i", multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets);
70-
mult(multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets);
70+
71+
LOGF(debug, "multV0A=%5.0f multV0C=%5.0f multT0A=%5.0f multT0C=%5.0f multZNA=%6.0f multZNC=%6.0f multTracklets=%i multTPC=%i", multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets, multTPC);
72+
mult(multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets, multTPC);
7173
}
7274
PROCESS_SWITCH(MultiplicityTableTaskIndexed, processRun2, "Produce Run 2 multiplicity tables", true);
7375

@@ -81,7 +83,7 @@ struct MultiplicityTableTaskIndexed {
8183
float multZNA = -1.f;
8284
float multZNC = -1.f;
8385
int multTracklets = -1;
84-
86+
int multTPC = -1;
8587
const float* aAmplitudesA;
8688
const float* aAmplitudesC;
8789

@@ -100,8 +102,8 @@ struct MultiplicityTableTaskIndexed {
100102
}
101103
}
102104

103-
LOGF(debug, "multV0A=%5.0f multV0C=%5.0f multT0A=%5.0f multT0C=%5.0f multZNA=%6.0f multZNC=%6.0f multTracklets=%i", multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets);
104-
mult(multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets);
105+
LOGF(debug, "multV0A=%5.0f multV0C=%5.0f multT0A=%5.0f multT0C=%5.0f multZNA=%6.0f multZNC=%6.0f multTracklets=%i multTPC=%i", multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets, multTPC);
106+
mult(multV0A, multV0C, multT0A, multT0C, multZNA, multZNC, multTracklets, multTPC);
105107
}
106108
}
107109
PROCESS_SWITCH(MultiplicityTableTaskIndexed, processRun3, "Produce Run 3 multiplicity tables", false);

0 commit comments

Comments
 (0)