Skip to content

Commit

Permalink
PWGEM/PhotonMeson: Add EMC readout and trigger event cut
Browse files Browse the repository at this point in the history
- Add a cut that requires kTVXinEMC and one for the hardware triggers in EMEventCut
- Add two columns for these cuts in hCollisionCounter
- Move "accepted" filling from 10 to 12
  • Loading branch information
nstrangm committed Jul 11, 2024
1 parent 65cdbbb commit f7cd230
Show file tree
Hide file tree
Showing 8 changed files with 69 additions and 33 deletions.
14 changes: 13 additions & 1 deletion PWGEM/Dilepton/Core/EMEventCut.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

ClassImp(EMEventCut);

const char* EMEventCut::mCutNames[static_cast<int>(EMEventCut::EMEventCuts::kNCuts)] = {"Sel8", "FT0AND", "Zvtx", "eNoTFB", "RequireNoITSROFB", "NoSameBunchPileup", "GoodVertexITSTPC", "GoodZvtxFT0vsPV"};
const char* EMEventCut::mCutNames[static_cast<int>(EMEventCut::EMEventCuts::kNCuts)] = {"Sel8", "FT0AND", "Zvtx", "eNoTFB", "RequireNoITSROFB", "NoSameBunchPileup", "GoodVertexITSTPC", "GoodZvtxFT0vsPV", "EMC MB Readout", "EMC L0 Triggered"};

void EMEventCut::SetRequireSel8(bool flag)
{
Expand Down Expand Up @@ -76,6 +76,18 @@ void EMEventCut::SetRequireGoodZvtxFT0vsPV(bool flag)
LOG(info) << "EM Event Cut, require good Zvtx between FT0 vs. PV: " << mRequireGoodZvtxFT0vsPV;
}

void EMEventCut::SetRequireEMCReadoutInMB(bool flag)
{
mRequireEMCReadoutInMB = flag;
LOG(info) << "EM Event Cut, require the EMC to be read out in an MB collision by checking kTVXinEMC: " << mRequireEMCReadoutInMB;
}

void EMEventCut::SetRequireEMCHardwareTriggered(bool flag)
{
mRequireEMCHardwareTriggered = flag;
LOG(info) << "EM Event Cut, require the EMC to be triggered by requiring kEMC7 or kDMC7: " << mRequireEMCHardwareTriggered;
}

void EMEventCut::print() const
{
LOG(info) << "EM Event Cut:";
Expand Down
18 changes: 18 additions & 0 deletions PWGEM/Dilepton/Core/EMEventCut.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ class EMEventCut : public TNamed
kNoSameBunchPileup,
kIsVertexITSTPC,
kIsGoodZvtxFT0vsPV,
kEMCReadoutInMB,
kEMCHardwareTriggered,
kOccupancy,
kNCuts
};
Expand Down Expand Up @@ -70,6 +72,12 @@ class EMEventCut : public TNamed
if (mRequireGoodZvtxFT0vsPV && !IsSelected(collision, EMEventCuts::kIsGoodZvtxFT0vsPV)) {
return false;
}
if (mRequireEMCReadoutInMB && !IsSelected(collision, EMEventCuts::kEMCReadoutInMB)) {
return false;
}
if (mRequireEMCHardwareTriggered && !IsSelected(collision, EMEventCuts::kEMCHardwareTriggered)) {
return false;
}
if (!IsSelected(collision, EMEventCuts::kOccupancy)) {
return false;
}
Expand Down Expand Up @@ -104,6 +112,12 @@ class EMEventCut : public TNamed
case EMEventCuts::kIsGoodZvtxFT0vsPV:
return collision.selection_bit(o2::aod::evsel::kIsGoodZvtxFT0vsPV);

case EMEventCuts::kEMCReadoutInMB:
return (collision.alias_bit(kTVXinEMC));

case EMEventCuts::kEMCHardwareTriggered:
return (collision.alias_bit(kEMC7) || collision.alias_bit(kDMC7));

case EMEventCuts::kOccupancy: {
if (mMinOccupancy < 0) {
return true;
Expand All @@ -126,6 +140,8 @@ class EMEventCut : public TNamed
void SetRequireNoSameBunchPileup(bool flag);
void SetRequireVertexITSTPC(bool flag);
void SetRequireGoodZvtxFT0vsPV(bool flag);
void SetRequireEMCReadoutInMB(bool flag);
void SetRequireEMCHardwareTriggered(bool flag);

/// @brief Print the track selection
void print() const;
Expand All @@ -140,6 +156,8 @@ class EMEventCut : public TNamed
bool mRequireNoSameBunchPileup{false};
bool mRequireVertexITSTPC{false};
bool mRequireGoodZvtxFT0vsPV{false};
bool mRequireEMCReadoutInMB{false};
bool mRequireEMCHardwareTriggered{false};

ClassDef(EMEventCut, 1);
};
Expand Down
12 changes: 6 additions & 6 deletions PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@ struct Pi0EtaToGammaGamma {
Configurable<bool> cfgRequireNoSameBunchPileup{"cfgRequireNoSameBunchPileup", false, "require no same bunch pileup in event cut"};
Configurable<bool> cfgRequireVertexITSTPC{"cfgRequireVertexITSTPC", false, "require Vertex ITSTPC in event cut"}; // ITS-TPC matched track contributes PV.
Configurable<bool> cfgRequireGoodZvtxFT0vsPV{"cfgRequireGoodZvtxFT0vsPV", false, "require good Zvtx between FT0 vs. PV in event cut"};
Configurable<bool> cfgRequireEMCReadoutInMB{"cfgRequireEMCReadoutInMB", false, "require the EMC to be read out in an MB collision (kTVXinEMC)"};
Configurable<bool> cfgRequireEMCHardwareTriggered{"cfgRequireEMCHardwareTriggered", false, "require the EMC to be hardware triggered (kEMC7 or kDMC7)"};
Configurable<int> cfgOccupancyMin{"cfgOccupancyMin", -1, "min. occupancy"};
Configurable<int> cfgOccupancyMax{"cfgOccupancyMax", 1000000000, "max. occupancy"};
} eventcuts;
Expand Down Expand Up @@ -174,7 +176,6 @@ struct Pi0EtaToGammaGamma {
EMCPhotonCut fEMCCut;
struct : ConfigurableGroup {
std::string prefix = "emccut_group";
Configurable<bool> requireCaloReadout{"requireCaloReadout", true, "Require calorimeters readout when analyzing EMCal/PHOS"};
Configurable<float> minOpenAngle{"minOpenAngle", 0.0202, "apply min opening angle"};
Configurable<float> EMC_minTime{"EMC_minTime", -20., "Minimum cluster time for EMCal time cut"};
Configurable<float> EMC_maxTime{"EMC_maxTime", +25., "Maximum cluster time for EMCal time cut"};
Expand Down Expand Up @@ -316,6 +317,8 @@ struct Pi0EtaToGammaGamma {
fEMEventCut.SetRequireNoSameBunchPileup(eventcuts.cfgRequireNoSameBunchPileup);
fEMEventCut.SetRequireVertexITSTPC(eventcuts.cfgRequireVertexITSTPC);
fEMEventCut.SetRequireGoodZvtxFT0vsPV(eventcuts.cfgRequireGoodZvtxFT0vsPV);
fEMEventCut.SetRequireEMCReadoutInMB(eventcuts.cfgRequireEMCReadoutInMB);
fEMEventCut.SetRequireEMCHardwareTriggered(eventcuts.cfgRequireEMCHardwareTriggered);
fEMEventCut.SetOccupancyRange(eventcuts.cfgOccupancyMin, eventcuts.cfgOccupancyMax);
}

Expand Down Expand Up @@ -497,9 +500,6 @@ struct Pi0EtaToGammaGamma {
if ((pairtype == PairType::kPHOSPHOS || pairtype == PairType::kPCMPHOS) && !collision.alias_bit(triggerAliases::kTVXinPHOS)) {
continue;
}
if ((pairtype == PairType::kEMCEMC || pairtype == PairType::kPCMEMC) && (!collision.alias_bit(triggerAliases::kTVXinEMC) && emccuts.requireCaloReadout)) {
continue;
}

const float centralities[3] = {collision.centFT0M(), collision.centFT0A(), collision.centFT0C()};
if (centralities[cfgCentEstimator] < cfgCentMin || cfgCentMax < centralities[cfgCentEstimator]) {
Expand All @@ -511,8 +511,8 @@ struct Pi0EtaToGammaGamma {
continue;
}
o2::aod::pwgem::photonmeson::utils::eventhistogram::fillEventInfo<1>(&fRegistry, collision);
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 12.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 12.0); // accepted

int zbin = lower_bound(zvtx_bin_edges.begin(), zvtx_bin_edges.end(), collision.posZ()) - zvtx_bin_edges.begin() - 1;
if (zbin < 0) {
Expand Down
23 changes: 10 additions & 13 deletions PWGEM/PhotonMeson/Core/Pi0EtaToGammaGammaMC.h
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ struct Pi0EtaToGammaGammaMC {
Configurable<bool> cfgRequireNoSameBunchPileup{"cfgRequireNoSameBunchPileup", false, "require no same bunch pileup in event cut"};
Configurable<bool> cfgRequireVertexITSTPC{"cfgRequireVertexITSTPC", false, "require Vertex ITSTPC in event cut"}; // ITS-TPC matched track contributes PV.
Configurable<bool> cfgRequireGoodZvtxFT0vsPV{"cfgRequireGoodZvtxFT0vsPV", false, "require good Zvtx between FT0 vs. PV in event cut"};
Configurable<bool> cfgRequireEMCReadoutInMB{"cfgRequireEMCReadoutInMB", false, "require the EMC to be read out in an MB collision (kTVXinEMC)"};
Configurable<bool> cfgRequireEMCHardwareTriggered{"cfgRequireEMCHardwareTriggered", false, "require the EMC to be hardware triggered (kEMC7 or kDMC7)"};
Configurable<int> cfgOccupancyMin{"cfgOccupancyMin", -1, "min. occupancy"};
Configurable<int> cfgOccupancyMax{"cfgOccupancyMax", 1000000000, "max. occupancy"};
} eventcuts;
Expand Down Expand Up @@ -165,7 +167,6 @@ struct Pi0EtaToGammaGammaMC {
EMCPhotonCut fEMCCut;
struct : ConfigurableGroup {
std::string prefix = "emccut_group";
Configurable<bool> requireCaloReadout{"requireCaloReadout", true, "Require calorimeters readout when analyzing EMCal/PHOS"};
Configurable<float> minOpenAngle{"minOpenAngle", 0.0202, "apply min opening angle"};
Configurable<float> EMC_minTime{"EMC_minTime", -20., "Minimum cluster time for EMCal time cut"};
Configurable<float> EMC_maxTime{"EMC_maxTime", +25., "Maximum cluster time for EMCal time cut"};
Expand Down Expand Up @@ -285,6 +286,8 @@ struct Pi0EtaToGammaGammaMC {
fEMEventCut.SetRequireNoSameBunchPileup(eventcuts.cfgRequireNoSameBunchPileup);
fEMEventCut.SetRequireVertexITSTPC(eventcuts.cfgRequireVertexITSTPC);
fEMEventCut.SetRequireGoodZvtxFT0vsPV(eventcuts.cfgRequireGoodZvtxFT0vsPV);
fEMEventCut.SetRequireEMCReadoutInMB(eventcuts.cfgRequireEMCReadoutInMB);
fEMEventCut.SetRequireEMCHardwareTriggered(eventcuts.cfgRequireEMCHardwareTriggered);
fEMEventCut.SetOccupancyRange(eventcuts.cfgOccupancyMin, eventcuts.cfgOccupancyMax);
}

Expand Down Expand Up @@ -425,9 +428,6 @@ struct Pi0EtaToGammaGammaMC {
if ((pairtype == PairType::kPHOSPHOS || pairtype == PairType::kPCMPHOS) && !collision.alias_bit(triggerAliases::kTVXinPHOS)) {
continue;
}
if ((pairtype == PairType::kEMCEMC || pairtype == PairType::kPCMEMC) && (!collision.alias_bit(triggerAliases::kTVXinEMC) && emccuts.requireCaloReadout)) {
continue;
}

const float centralities[3] = {collision.centFT0M(), collision.centFT0A(), collision.centFT0C()};
if (centralities[cfgCentEstimator] < cfgCentMin || cfgCentMax < centralities[cfgCentEstimator]) {
Expand All @@ -439,8 +439,8 @@ struct Pi0EtaToGammaGammaMC {
continue;
}
o2::aod::pwgem::photonmeson::utils::eventhistogram::fillEventInfo<1>(&fRegistry, collision);
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 12.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 12.0); // accepted

int photonid1 = -1, photonid2 = -1, pi0id = -1, etaid = -1;
if constexpr (pairtype == PairType::kPCMPCM || pairtype == PairType::kPHOSPHOS || pairtype == PairType::kEMCEMC) { // same kinds pairing
Expand Down Expand Up @@ -569,8 +569,8 @@ struct Pi0EtaToGammaGammaMC {
auto etamc = mcparticles.iteratorAt(etaid);
o2::aod::pwgem::photonmeson::utils::nmhistogram::fillTruePairInfo(&fRegistry, veeg, etamc, mcparticles, mccollisions, f1fd_k0s_to_pi0);
}
} // end of dielectron loop
} // end of pcm loop
} // end of dielectron loop
} // end of pcm loop
} else { // PCM-EMC, PCM-PHOS. Nightmare. don't run these pairs.
auto photons1_per_collision = photons1.sliceBy(perCollision1, collision.globalIndex());
auto photons2_per_collision = photons2.sliceBy(perCollision2, collision.globalIndex());
Expand All @@ -593,8 +593,8 @@ struct Pi0EtaToGammaGammaMC {
// o2::aod::pwgem::photonmeson::utils::nmhistogram::fillTruePairInfo(&fRegistry, v12, etamc, mcparticles, mccollisions, f1fd_k0s_to_pi0);
// }
} // end of pairing loop
} // end of pairing in same event
} // end of collision loop
} // end of pairing in same event
} // end of collision loop
}

template <int par_id, typename TBinnedData>
Expand Down Expand Up @@ -639,9 +639,6 @@ struct Pi0EtaToGammaGammaMC {
if ((pairtype == kPHOSPHOS || pairtype == kPCMPHOS) && !collision.alias_bit(triggerAliases::kTVXinPHOS)) {
continue; // I don't know why this is necessary in simulation.
}
if ((pairtype == kEMCEMC || pairtype == kPCMEMC) && (!collision.alias_bit(triggerAliases::kTVXinEMC) && emccuts.requireCaloReadout)) {
continue; // I don't know why this is necessary in simulation.
}

float centralities[3] = {collision.centFT0M(), collision.centFT0A(), collision.centFT0C()};
if (centralities[cfgCentEstimator] < cfgCentMin || cfgCentMax < centralities[cfgCentEstimator]) {
Expand Down
4 changes: 2 additions & 2 deletions PWGEM/PhotonMeson/Tasks/dalitzEEQC.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -351,8 +351,8 @@ struct DalitzEEQC {
continue;
}
o2::aod::pwgem::photonmeson::utils::eventhistogram::fillEventInfo<1>(&fRegistry, collision);
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 12.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 12.0); // accepted

auto posTracks_per_coll = posTracks->sliceByCached(o2::aod::emprimaryelectron::emeventId, collision.globalIndex(), cache);
auto negTracks_per_coll = negTracks->sliceByCached(o2::aod::emprimaryelectron::emeventId, collision.globalIndex(), cache);
Expand Down
4 changes: 2 additions & 2 deletions PWGEM/PhotonMeson/Tasks/dalitzEEQCMC.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -456,8 +456,8 @@ struct DalitzEEQCMC {
continue;
}
o2::aod::pwgem::photonmeson::utils::eventhistogram::fillEventInfo<1>(&fRegistry, collision);
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 12.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 12.0); // accepted

auto posTracks_per_coll = posTracks->sliceByCached(o2::aod::emprimaryelectron::emeventId, collision.globalIndex(), cache);
auto negTracks_per_coll = negTracks->sliceByCached(o2::aod::emprimaryelectron::emeventId, collision.globalIndex(), cache);
Expand Down
15 changes: 8 additions & 7 deletions PWGEM/PhotonMeson/Tasks/emcalQC.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,15 @@ struct emcalQC {
Configurable<bool> cfgRequireNoSameBunchPileup{"cfgRequireNoSameBunchPileup", false, "require no same bunch pileup in event cut"};
Configurable<bool> cfgRequireVertexITSTPC{"cfgRequireVertexITSTPC", false, "require Vertex ITSTPC in event cut"}; // ITS-TPC matched track contributes PV.
Configurable<bool> cfgRequireGoodZvtxFT0vsPV{"cfgRequireGoodZvtxFT0vsPV", false, "require good Zvtx between FT0 vs. PV in event cut"};
Configurable<bool> cfgRequireEMCReadoutInMB{"cfgRequireEMCReadoutInMB", false, "require the EMC to be read out in an MB collision (kTVXinEMC)"};
Configurable<bool> cfgRequireEMCHardwareTriggered{"cfgRequireEMCHardwareTriggered", false, "require the EMC to be hardware triggered (kEMC7 or kDMC7)"};
Configurable<int> cfgOccupancyMin{"cfgOccupancyMin", -1, "min. occupancy"};
Configurable<int> cfgOccupancyMax{"cfgOccupancyMax", 1000000000, "max. occupancy"};
} eventcuts;

EMCPhotonCut fEMCCut;
struct : ConfigurableGroup {
std::string prefix = "emccut_group";
Configurable<bool> requireCaloReadout{"requireCaloReadout", true, "Require calorimeters readout when analyzing EMCal/PHOS"};
Configurable<float> minOpenAngle{"minOpenAngle", 0.0202, "apply min opening angle"};
Configurable<float> EMC_minTime{"EMC_minTime", -20., "Minimum cluster time for EMCal time cut"};
Configurable<float> EMC_maxTime{"EMC_maxTime", +25., "Maximum cluster time for EMCal time cut"};
Expand All @@ -96,6 +97,8 @@ struct emcalQC {
fEMEventCut.SetRequireNoSameBunchPileup(eventcuts.cfgRequireNoSameBunchPileup);
fEMEventCut.SetRequireVertexITSTPC(eventcuts.cfgRequireVertexITSTPC);
fEMEventCut.SetRequireGoodZvtxFT0vsPV(eventcuts.cfgRequireGoodZvtxFT0vsPV);
fEMEventCut.SetRequireEMCReadoutInMB(eventcuts.cfgRequireEMCReadoutInMB);
fEMEventCut.SetRequireEMCHardwareTriggered(eventcuts.cfgRequireEMCHardwareTriggered);
fEMEventCut.SetOccupancyRange(eventcuts.cfgOccupancyMin, eventcuts.cfgOccupancyMax);
}

Expand Down Expand Up @@ -147,12 +150,10 @@ struct emcalQC {
if (!fEMEventCut.IsSelected(collision)) {
continue;
}
if (!collision.alias_bit(triggerAliases::kTVXinEMC) && emccuts.requireCaloReadout) {
continue;
}

o2::aod::pwgem::photonmeson::utils::eventhistogram::fillEventInfo<1>(&fRegistry, collision);
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 10.0); // accepted
fRegistry.fill(HIST("Event/before/hCollisionCounter"), 12.0); // accepted
fRegistry.fill(HIST("Event/after/hCollisionCounter"), 12.0); // accepted

auto clusters_per_coll = clusters.sliceBy(perCollision, collision.collisionId());
fRegistry.fill(HIST("Cluster/before/hNgamma"), clusters_per_coll.size());
Expand Down Expand Up @@ -189,7 +190,7 @@ struct emcalQC {
}
fRegistry.fill(HIST("Cluster/after/hNgamma"), ng);
} // end of collision loop
} // end of process
} // end of process

void processDummy(MyCollisions const&) {}

Expand Down
12 changes: 10 additions & 2 deletions PWGEM/PhotonMeson/Utils/EventHistograms.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ namespace o2::aod::pwgem::photonmeson::utils::eventhistogram
void addEventHistograms(HistogramRegistry* fRegistry)
{
// event info
auto hCollisionCounter = fRegistry->add<TH1>("Event/before/hCollisionCounter", "collision counter;;Number of events", kTH1F, {{10, 0.5, 10.5}}, false);
auto hCollisionCounter = fRegistry->add<TH1>("Event/before/hCollisionCounter", "collision counter;;Number of events", kTH1F, {{12, 0.5, 12.5}}, false);
hCollisionCounter->GetXaxis()->SetBinLabel(1, "all");
hCollisionCounter->GetXaxis()->SetBinLabel(2, "No TF border");
hCollisionCounter->GetXaxis()->SetBinLabel(3, "No ITS ROF border");
Expand All @@ -31,7 +31,9 @@ void addEventHistograms(HistogramRegistry* fRegistry)
hCollisionCounter->GetXaxis()->SetBinLabel(7, "FT0AND");
hCollisionCounter->GetXaxis()->SetBinLabel(8, "sel8");
hCollisionCounter->GetXaxis()->SetBinLabel(9, "|Z_{vtx}| < 10 cm");
hCollisionCounter->GetXaxis()->SetBinLabel(10, "accepted");
hCollisionCounter->GetXaxis()->SetBinLabel(10, "EMC MB Readout");
hCollisionCounter->GetXaxis()->SetBinLabel(11, "EMC L0 Triggered");
hCollisionCounter->GetXaxis()->SetBinLabel(12, "accepted");

fRegistry->add("Event/before/hZvtx", "vertex z; Z_{vtx} (cm)", kTH1F, {{100, -50, +50}}, false);
fRegistry->add("Event/before/hMultNTracksPV", "hMultNTracksPV; N_{track} to PV", kTH1F, {{6001, -0.5, 6000.5}}, false);
Expand Down Expand Up @@ -76,6 +78,12 @@ void fillEventInfo(HistogramRegistry* fRegistry, TCollision const& collision)
fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hCollisionCounter"), 9.0);
}
fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hZvtx"), collision.posZ());
if (collision.alias_bit(kTVXinEMC)) {
fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hCollisionCounter"), 10.0);
}
if (collision.alias_bit(kEMC7) || collision.alias_bit(kDMC7)) {
fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hCollisionCounter"), 11.0);
}

fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hMultNTracksPV"), collision.multNTracksPV());
fRegistry->fill(HIST("Event/") + HIST(event_types[ev_id]) + HIST("hMultNTracksPVeta1"), collision.multNTracksPVeta1());
Expand Down

0 comments on commit f7cd230

Please sign in to comment.