Skip to content

Commit 010c8f1

Browse files
ayatsujiringoayatsuji
andauthored
[PWGDQ] add event level histograms in same-event-pairing (#18489)
Co-authored-by: ayatsuji <13807650+asakuratou@user.noreply.gitee.com>
1 parent be58c8f commit 010c8f1

1 file changed

Lines changed: 23 additions & 1 deletion

File tree

‎PWGDQ/Tasks/tableReader_withAssoc.h‎

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1444,6 +1444,10 @@ struct AnalysisSameEventPairing {
14441444
// TODO: Add pair cuts via JSON
14451445
} fConfigCuts;
14461446

1447+
// add event level histograms after remove collision splitting candidates
1448+
o2::framework::Configurable<std::string> fConfigAddEventHistogram{"cfgAddEventHistogram", "", "Comma separated list of histograms,only used after turn on the cfgRemoveCollSplittingCandidates option"};
1449+
o2::framework::Configurable<std::string> fConfigAddJSONEventHistograms{"cfgAddJSONEventHistograms", "", "Event histograms in JSON format,only used after turn on the cfgRemoveCollSplittingCandidates option"};
1450+
14471451
o2::framework::Configurable<int> fConfigMixingDepth{"cfgMixingDepth", 100, "Number of Events stored for event mixing"};
14481452
o2::framework::Configurable<std::string> fConfigMixingVariables{"cfgMixingVars", "", "Mixing configs separated by a comma, default no mixing"};
14491453
o2::framework::Configurable<std::string> fConfigMixingVariablesJson{"cfgMixingVarsJSON", "", "Mixing configs in JSON format"};
@@ -1532,6 +1536,8 @@ struct AnalysisSameEventPairing {
15321536
bool fEnableBarrelMuonHistos = false;
15331537
bool fEnableBarrelMuonMixingHistos = false;
15341538

1539+
bool fSplitCheckEnabled = false;
1540+
15351541
o2::framework::NoBinningPolicy<o2::aod::dqanalysisflags::MixingHash> hashBin;
15361542

15371543
o2::framework::Preslice<o2::soa::Join<o2::aod::ReducedTracksAssoc, o2::aod::BarrelTrackCuts, o2::aod::Prefilter>> trackAssocsPerCollision = o2::aod::reducedtrack_association::reducedeventId;
@@ -1878,12 +1884,18 @@ struct AnalysisSameEventPairing {
18781884
}
18791885
}
18801886

1887+
o2::common::core::getTaskOptionValue<bool>(context, "analysis-event-selection", "cfgCheckSplitCollisions", fSplitCheckEnabled, false);
1888+
18811889
if (fConfigQA) {
18821890
fHistMan = new HistogramManager("analysisHistos", "aa", VarManager::kNVars);
18831891
fHistMan->SetUseDefaultVariableNames(true);
18841892
fHistMan->SetDefaultVarNames(dqtablereader_helpers::varNames(), dqtablereader_helpers::varUnits());
18851893
VarManager::SetCollisionSystem((TString)fConfigOptions.collisionSystem, fConfigOptions.centerMassEnergy); // set collision system and center of mass energy
1886-
DefineHistograms(fHistMan, histNames.Data(), fConfigAddSEPHistogram.value.data()); // define all histograms
1894+
if (fConfigCuts.event.value && fSplitCheckEnabled) {
1895+
DefineHistograms(fHistMan, "Event_AfterSplitVeto", fConfigAddEventHistogram.value.data()); // define event histograms after removing collision splitting candidates
1896+
o2::aod::dqhistograms::AddHistogramsFromJSON(fHistMan, fConfigAddJSONEventHistograms.value.c_str());
1897+
}
1898+
DefineHistograms(fHistMan, histNames.Data(), fConfigAddSEPHistogram.value.data()); // define all histograms
18871899
if (fEnableBarrelHistos) {
18881900
DefineHistograms(fHistMan, "PairingSEQA", "sameevent-pairing"); // histograms for QA of the pairing
18891901
}
@@ -2063,6 +2075,11 @@ struct AnalysisSameEventPairing {
20632075
// VarManager::FillEvent<gkEventFillMap>(event, dqtablereader_helpers::varValues());
20642076
VarManager::FillEvent<TEventFillMap>(event, dqtablereader_helpers::varValues());
20652077

2078+
// fill the event histograms
2079+
if (fConfigQA && fConfigCuts.event && fSplitCheckEnabled) {
2080+
fHistMan->FillHistClass("Event_AfterSplitVeto", dqtablereader_helpers::varValues());
2081+
}
2082+
20662083
auto groupedAssocs = assocs.sliceBy(preslice, event.globalIndex());
20672084
if (groupedAssocs.size() == 0) {
20682085
continue;
@@ -2929,6 +2946,11 @@ struct AnalysisSameEventPairing {
29292946
VarManager::ResetValues(0, VarManager::kNVars);
29302947
VarManager::FillEvent<TEventFillMap>(event, dqtablereader_helpers::varValues());
29312948

2949+
// fill the event histograms
2950+
if (fConfigQA && fConfigCuts.event && fSplitCheckEnabled) {
2951+
fHistMan->FillHistClass("Event_AfterSplitVeto", dqtablereader_helpers::varValues());
2952+
}
2953+
29322954
auto groupedAssocs1 = assocs1.sliceBy(preslice1, event.globalIndex());
29332955
if (groupedAssocs1.size() == 0) {
29342956
continue;

0 commit comments

Comments
 (0)