Skip to content

Commit 0867f0c

Browse files
committed
[PWGDQ] Central Barrel MC Multiplcity added
1 parent 48e1f21 commit 0867f0c

File tree

6 files changed

+30
-10
lines changed

6 files changed

+30
-10
lines changed

PWGDQ/Core/HistogramsLibrary.cxx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,9 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
120120
hm->AddHistogram(histClass, "VtxZ_MultFT0C", "VtxZ vs MultFT0C", false, 20, -10.0, 10.0, VarManager::kVtxZ, 200, 0, 25000.0, VarManager::kMultFT0C);
121121
hm->AddHistogram(histClass, "VtxZ_MultFDDA", "VtxZ vs MultFDDA", false, 20, -10.0, 10.0, VarManager::kVtxZ, 200, 0, 25000.0, VarManager::kMultFDDA);
122122
hm->AddHistogram(histClass, "VtxZ_MultFDDC", "VtxZ vs MultFDDC", false, 20, -10.0, 10.0, VarManager::kVtxZ, 200, 0, 25000.0, VarManager::kMultFDDC);
123+
hm->AddHistogram(histClass, "VtxNcontribReal_MultMCNParticlesEta05", "VtxNcontribReal vs MultMCNParticlesEta05", false, 150, 0, 150.0, VarManager::kVtxNcontribReal, 150, 0, 150.0, VarManager::kMultMCNParticlesEta05);
124+
hm->AddHistogram(histClass, "VtxNcontribReal_MultMCNParticlesEta08", "VtxNcontribReal vs MultMCNParticlesEta08", false, 150, 0, 150.0, VarManager::kVtxNcontribReal, 150, 0, 150.0, VarManager::kMultMCNParticlesEta08);
125+
hm->AddHistogram(histClass, "VtxNcontribReal_MultMCNParticlesEta10", "VtxNcontribReal vs MultMCNParticlesEta10", false, 150, 0, 150.0, VarManager::kVtxNcontribReal, 150, 0, 150.0, VarManager::kMultMCNParticlesEta10);
123126

124127
} else {
125128
hm->AddHistogram(histClass, "MultTPC", "MultTPC", false, 200, 0.0, 50000.0, VarManager::kMultTPC);
@@ -223,6 +226,9 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
223226
hm->AddHistogram(histClass, "MCVtxX_VtxY", "Vtx X vs Vtx Y", false, 200, 15.0, 15.0, VarManager::kMCVtxZ, 200, -0.2, 0.2, VarManager::kMCVtxY);
224227
hm->AddHistogram(histClass, "MCImpPar", "MC impact param", false, 20, 0.0, 20.0, VarManager::kMCEventImpParam);
225228
hm->AddHistogram(histClass, "MCCentrFT0C", "MC Centrality FT0C", false, 100, 0.0, 100.0, VarManager::kMCEventCentrFT0C);
229+
hm->AddHistogram(histClass, "MultMCNParticlesEta05", "MultMCNParticlesEta05", false, 150, 0.0, 150.0, VarManager::kMultMCNParticlesEta05);
230+
hm->AddHistogram(histClass, "MultMCNParticlesEta08", "MultMCNParticlesEta08", false, 150, 0.0, 150.0, VarManager::kMultMCNParticlesEta08);
231+
hm->AddHistogram(histClass, "MultMCNParticlesEta10", "MultMCNParticlesEta10", false, 150, 0.0, 150.0, VarManager::kMultMCNParticlesEta10);
226232
}
227233
if (subGroupStr.Contains("subgen")) {
228234
hm->AddHistogram(histClass, "SubGenID", "SubGenerator ID", false, 11, -0.5, 10.5, VarManager::kMCEventSubGeneratorId);

PWGDQ/Core/VarManager.cxx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -446,6 +446,9 @@ void VarManager::SetDefaultVarNames()
446446
fgVariableNames[kMCEventWeight] = "MC event weight";
447447
fgVariableNames[kMCEventImpParam] = "MC impact parameter";
448448
fgVariableNames[kMCEventCentrFT0C] = "MC Centrality FT0C";
449+
fgVariableNames[kMultMCNParticlesEta05] = "MC Multiplicity Central Barrel for |eta| < 0.5";
450+
fgVariableNames[kMultMCNParticlesEta08] = "MC Multiplicity Central Barrel for |eta| < 0.8";
451+
fgVariableNames[kMultMCNParticlesEta10] = "MC Multiplicity Central Barrel for |eta| < 1.0";
449452
fgVariableUnits[kMCEventGeneratorId] = "";
450453
fgVariableUnits[kMCEventSubGeneratorId] = "";
451454
fgVariableUnits[kMCVtxX] = "cm";
@@ -455,6 +458,9 @@ void VarManager::SetDefaultVarNames()
455458
fgVariableUnits[kMCEventWeight] = "";
456459
fgVariableUnits[kMCEventImpParam] = "b";
457460
fgVariableUnits[kMCEventCentrFT0C] = "%";
461+
fgVariableUnits[kMultMCNParticlesEta05] = "Multiplicity_eta05";
462+
fgVariableUnits[kMultMCNParticlesEta08] = "Multiplicity_eta08";
463+
fgVariableUnits[kMultMCNParticlesEta10] = "Multiplicity_eta10";
458464
fgVariableNames[kTwoEvPosZ1] = "vtx-z_{1}";
459465
fgVariableUnits[kTwoEvPosZ1] = "cm";
460466
fgVariableNames[kTwoEvPosZ2] = "vtx-z_{2}";

PWGDQ/Core/VarManager.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,9 @@ class VarManager : public TObject
283283
kMCEventWeight,
284284
kMCEventImpParam,
285285
kMCEventCentrFT0C,
286+
kMultMCNParticlesEta10,
287+
kMultMCNParticlesEta08,
288+
kMultMCNParticlesEta05,
286289
kQ1ZNAX,
287290
kQ1ZNAY,
288291
kQ1ZNCX,
@@ -1989,6 +1992,9 @@ void VarManager::FillEvent(T const& event, float* values)
19891992
if constexpr ((fillMap & CollisionCent) > 0) {
19901993
// WARNING: temporary solution, ongoing work to provide proper MC gen. centrality
19911994
values[kMCEventCentrFT0C] = event.bestCollisionCentFT0C();
1995+
values[kMultMCNParticlesEta05] = event.multMCNParticlesEta05();
1996+
values[kMultMCNParticlesEta08] = event.multMCNParticlesEta08();
1997+
values[kMultMCNParticlesEta10] = event.multMCNParticlesEta10();
19921998
}
19931999
}
19942000

PWGDQ/DataModel/ReducedInfoTables.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,8 @@ DECLARE_SOA_TABLE(ReducedEventsInfo, "AOD", "REDUCEVENTINFO", //! Main event i
221221
DECLARE_SOA_TABLE(ReducedMCEvents, "AOD", "REDUCEDMCEVENT", //! Event level MC truth information
222222
o2::soa::Index<>,
223223
mccollision::GeneratorsID, reducedevent::MCPosX, reducedevent::MCPosY, reducedevent::MCPosZ,
224-
mccollision::T, mccollision::Weight, mccollision::ImpactParameter);
224+
mccollision::T, mccollision::Weight, mccollision::ImpactParameter,
225+
mult::MultMCNParticlesEta05, mult::MultMCNParticlesEta08, mult::MultMCNParticlesEta10);
225226

226227
using ReducedEvent = ReducedEvents::iterator;
227228
using StoredReducedEvent = StoredReducedEvents::iterator;

PWGDQ/TableProducer/tableMakerMC.cxx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -461,7 +461,7 @@ struct TableMakerMC {
461461
// make an entry for this MC event only if it was not already added to the table
462462
if (!(fEventLabels.find(mcCollision.globalIndex()) != fEventLabels.end())) {
463463
eventMC(mcCollision.generatorsID(), mcCollision.posX(), mcCollision.posY(), mcCollision.posZ(),
464-
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter());
464+
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter(), 1, 1, 1);
465465
fEventLabels[mcCollision.globalIndex()] = fCounters[1];
466466
fCounters[1]++;
467467
}
@@ -1096,7 +1096,7 @@ struct TableMakerMC {
10961096
// make an entry for this MC event only if it was not already added to the table
10971097
if (!(fEventLabels.find(mcCollision.globalIndex()) != fEventLabels.end())) {
10981098
eventMC(mcCollision.generatorsID(), mcCollision.posX(), mcCollision.posY(), mcCollision.posZ(),
1099-
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter());
1099+
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter(), 1, 1, 1);
11001100
fEventLabels[mcCollision.globalIndex()] = fCounters[1];
11011101
fCounters[1]++;
11021102
}

PWGDQ/TableProducer/tableMakerMC_withAssoc.cxx

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ using MyEventsWithMultsAndRapidityGapFilter = soa::Join<aod::Collisions, aod::Ev
9999
using MyEventsWithCent = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs, aod::CentFT0As, aod::CentFT0Ms, aod::McCollisionLabels>;
100100
using MyEventsWithCentAndMults = soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Cs, aod::CentFT0As, aod::CentFT0Ms, aod::Mults, aod::MultsExtra, aod::McCollisionLabels>;
101101
using MFTTrackLabeled = soa::Join<o2::aod::MFTTracks, aod::McMFTTrackLabels>;
102-
using MyEventsMcWithMults = soa::Join<aod::McCollisions, aod::McCollsExtra>;
102+
using MyEventsMcWithMults = soa::Join<aod::McCollisions, aod::McCollsExtra, aod::MultMCExtras_001>;
103103

104104
// Declare bit maps containing information on the table joins content (used as argument in templated functions)
105105
constexpr static uint32_t gkEventFillMap = VarManager::ObjTypes::BC | VarManager::ObjTypes::Collision;
@@ -469,7 +469,8 @@ struct TableMakerMC {
469469
fHistMan->FillHistClass("Event_MCTruth", VarManager::fgValues);
470470
// Create the skimmed table entry for this collision
471471
eventMC(mcCollision.generatorsID(), mcCollision.posX(), mcCollision.posY(), mcCollision.posZ(),
472-
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter());
472+
mcCollision.t(), mcCollision.weight(), mcCollision.impactParameter(),
473+
mcCollision.multMCNParticlesEta05(), mcCollision.multMCNParticlesEta08(), mcCollision.multMCNParticlesEta10());
473474
}
474475
}
475476

@@ -563,7 +564,7 @@ struct TableMakerMC {
563564
} // end loop over mc stack
564565
}
565566

566-
template <uint32_t TEventFillMap, uint32_t TEventMcFillMap, typename TEvents>
567+
template <uint32_t TEventFillMap, typename TEvents>
567568
void skimCollisions(TEvents const& collisions, BCsWithTimestamps const& /*bcs*/)
568569
{
569570
// Skim reconstructed collisions which are selected by the user specified cuts
@@ -623,7 +624,7 @@ struct TableMakerMC {
623624
VarManager::FillEvent<TEventFillMap>(collision); // extract event information and place it in the fValues array
624625
if (collision.has_mcCollision()) {
625626
auto mcCollision = collision.template mcCollision_as<MyEventsMcWithMults>();
626-
VarManager::FillEvent<TEventMcFillMap>(mcCollision);
627+
VarManager::FillEvent<gkEventMcFillMapWithCent>(mcCollision);
627628
}
628629
if (fDoDetailedQA) {
629630
fHistMan->FillHistClass("Event_BeforeCuts", VarManager::fgValues);
@@ -1178,11 +1179,11 @@ struct TableMakerMC {
11781179
} // end skimMuons
11791180

11801181
template <uint32_t TEventFillMap, uint32_t TTrackFillMap, uint32_t TMuonFillMap, uint32_t TMFTFillMap, uint32_t TEventMcFillMap, typename TEvents, typename TTracks,
1181-
typename TMuons, typename TMFTTracks, typename TTrackAssoc, typename TFwdTrackAssoc, typename TMFTTrackAssoc, typename TMFTCov, typename TEventsMC>
1182+
typename TMuons, typename TMFTTracks, typename TTrackAssoc, typename TFwdTrackAssoc, typename TMFTTrackAssoc, typename TMFTCov, typename MyEventsMcWithMults>
11821183
void fullSkimming(TEvents const& collisions, BCsWithTimestamps const& bcs,
11831184
TTracks const& tracksBarrel, TMuons const& muons, TMFTTracks const& mftTracks,
11841185
TTrackAssoc const& trackAssocs, TFwdTrackAssoc const& fwdTrackAssocs, TMFTTrackAssoc const& mftAssocs,
1185-
TEventsMC const& mcCollisions, aod::McParticles const& mcParticles, TMFTCov const& mftCovs)
1186+
MyEventsMcWithMults const& mcCollisions, aod::McParticles const& mcParticles, TMFTCov const& mftCovs)
11861187
{
11871188
// Check whether the run changed and update CCDB if it did
11881189
if (bcs.size() > 0 && fCurrentRun != bcs.begin().runNumber()) {
@@ -1224,7 +1225,7 @@ struct TableMakerMC {
12241225
eventVtxCov.reserve(collisions.size());
12251226
eventMClabels.reserve(collisions.size());
12261227
eventInfo.reserve(collisions.size());
1227-
skimCollisions<TEventFillMap, TEventMcFillMap>(collisions, bcs);
1228+
skimCollisions<TEventFillMap>(collisions, bcs);
12281229
if (fCollIndexMap.size() == 0) {
12291230
return;
12301231
}

0 commit comments

Comments
 (0)