Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion PWGDQ/Core/HistogramsLibrary.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
hm->AddHistogram(histClass, "TF_NMFTs", "Number of MFT tracks per TF", false, 1000, 0.0, 200000.0, VarManager::kTFNMFTs);
}
if (!groupStr.CompareTo("event")) {
if (!subGroupStr.Contains("generator")) {
if (!subGroupStr.Contains("generator") && !subGroupStr.Contains("pairing")) {
hm->AddHistogram(histClass, "VtxZ", "Vtx Z", false, 60, -15.0, 15.0, VarManager::kVtxZ);
hm->AddHistogram(histClass, "VtxZ_Run", "Vtx Z", true, 1, -0.5, 0.5, VarManager::kRunNo, 60, -15.0, 15.0, VarManager::kVtxZ, 1, 0, 1, VarManager::kNothing, "", "", "", VarManager::kNothing, VarManager::kNothing, false, true);
hm->AddHistogram(histClass, "BC", "Event per BC", false, 3564, 0.0, 3564.0, VarManager::kBCOrbit);
Expand Down Expand Up @@ -583,6 +583,14 @@ void o2::aod::dqhistograms::DefineHistograms(HistogramManager* hm, const char* h
hm->AddHistogram(histClass, "FracAbove500um_NTracksTRD", "Fraction of tracks with DCAz > 500 um vs number of tracks with TRD", false, 100, 0.0, 1000.0, VarManager::kMultNTracksHasTRD, 100, 0.0, 1.0, VarManager::kDCAzFracAbove500um);
hm->AddHistogram(histClass, "FracAbove5mm_NTracksTRD", "Fraction of tracks with DCAz > 5 mm vs number of tracks with TRD", false, 100, 0.0, 1000.0, VarManager::kMultNTracksHasTRD, 100, 0.0, 1.0, VarManager::kDCAzFracAbove5mm);
}
if (subGroupStr.Contains("pairing")) {
if (subGroupStr.Contains("sameevent")) {
hm->AddHistogram(histClass, "NPairsPerEvent", "Number of track pairs per event", false, 100, 0.0, 100.0, VarManager::kNPairsPerEvent);
}
if (subGroupStr.Contains("mixedevent")) {
hm->AddHistogram(histClass, "NPairsPerEvent", "Number of track pairs per event", false, 500, 0.0, 500.0, VarManager::kNPairsPerEvent);
}
}
} // end "event"

if (!groupStr.CompareTo("two-collisions")) {
Expand Down
3 changes: 3 additions & 0 deletions PWGDQ/Core/VarManager.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -1435,6 +1435,8 @@ void VarManager::SetDefaultVarNames()
fgVariableUnits[kR3SP] = "";
fgVariableNames[kR3EP] = "R_{3}^{EP} ";
fgVariableUnits[kR3EP] = "";
fgVariableNames[kNPairsPerEvent] = "number of pairs per event";
fgVariableUnits[kNPairsPerEvent] = "";
fgVariableNames[kPairMass] = "mass";
fgVariableUnits[kPairMass] = "GeV/c2";
fgVariableNames[kPairMassDau] = "mass dilepton";
Expand Down Expand Up @@ -2065,6 +2067,7 @@ void VarManager::SetDefaultVarNames()
fgVarNamesMap["kTwoR2SP2"] = kTwoR2SP2;
fgVarNamesMap["kTwoR2EP1"] = kTwoR2EP1;
fgVarNamesMap["kTwoR2EP2"] = kTwoR2EP2;
fgVarNamesMap["kNPairsPerEvent"] = kNPairsPerEvent;
fgVarNamesMap["kNEventWiseVariables"] = kNEventWiseVariables;
fgVarNamesMap["kX"] = kX;
fgVarNamesMap["kY"] = kY;
Expand Down
9 changes: 5 additions & 4 deletions PWGDQ/Core/VarManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -480,10 +480,11 @@ class VarManager : public TObject
kV2ME_EP,
kWV2ME_SP,
kWV2ME_EP,
kTwoR2SP1, // Scalar product resolution of event1 for ME technique
kTwoR2SP2, // Scalar product resolution of event2 for ME technique
kTwoR2EP1, // Event plane resolution of event2 for ME technique
kTwoR2EP2, // Event plane resolution of event2 for ME technique
kTwoR2SP1, // Scalar product resolution of event1 for ME technique
kTwoR2SP2, // Scalar product resolution of event2 for ME technique
kTwoR2EP1, // Event plane resolution of event2 for ME technique
kTwoR2EP2, // Event plane resolution of event2 for ME technique
kNPairsPerEvent, // number of pairs per event in same-event or mixed-event pairing

// Variables for event mixing with cumulant
kV22m,
Expand Down
23 changes: 23 additions & 0 deletions PWGDQ/Tasks/tableReader_withAssoc.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -1326,6 +1326,7 @@ struct AnalysisSameEventPairing {
int fNCutsBarrel;
int fNCutsMuon;
int fNPairCuts;
int fNPairPerEvent;

bool fEnableBarrelMixingHistos;
bool fEnableBarrelHistos;
Expand Down Expand Up @@ -1641,6 +1642,12 @@ struct AnalysisSameEventPairing {
fHistMan->SetDefaultVarNames(VarManager::fgVariableNames, VarManager::fgVariableUnits);
VarManager::SetCollisionSystem((TString)fConfigOptions.collisionSystem, fConfigOptions.centerMassEnergy); // set collision system and center of mass energy
DefineHistograms(fHistMan, histNames.Data(), fConfigAddSEPHistogram.value.data()); // define all histograms
if (fEnableBarrelHistos) {
DefineHistograms(fHistMan, "PairingSEQA", "sameevent-pairing"); // histograms for QA of the pairing
};
if (fEnableBarrelMixingHistos) {
DefineHistograms(fHistMan, "PairingMEQA", "mixedevent-pairing"); // histograms for QA of the pairing
};
dqhistograms::AddHistogramsFromJSON(fHistMan, fConfigAddJSONHistograms.value.c_str()); // ad-hoc histograms via JSON
VarManager::SetUseVars(fHistMan->GetUsedVars()); // provide the list of required variables so that VarManager knows what to fill
fOutputList.setObject(fHistMan->GetMainHistogramList());
Expand Down Expand Up @@ -1749,6 +1756,7 @@ struct AnalysisSameEventPairing {
constexpr bool eventHasQvectorCentr = ((TEventFillMap & VarManager::ObjTypes::CollisionQvect) > 0);
constexpr bool trackHasCov = ((TTrackFillMap & VarManager::ObjTypes::TrackCov) > 0 || (TTrackFillMap & VarManager::ObjTypes::ReducedTrackBarrelCov) > 0);
bool isSelectedBDT = false;
fNPairPerEvent = 0;

for (auto& event : events) {
if (!event.isEventSelected_bit(0)) {
Expand Down Expand Up @@ -1796,6 +1804,7 @@ struct AnalysisSameEventPairing {
twoTrackFilter |= (static_cast<uint32_t>(1) << 31);
}

fNPairPerEvent++;
VarManager::FillPair<TPairType, TTrackFillMap>(t1, t2);
// compute quantities which depend on the associated collision, such as DCA
if (fConfigOptions.propTrack) {
Expand Down Expand Up @@ -2101,6 +2110,10 @@ struct AnalysisSameEventPairing {
}
} // end loop (cuts)
} // end loop over pairs of track associations
VarManager::fgValues[VarManager::kNPairsPerEvent] = fNPairPerEvent;
if (fEnableBarrelHistos && fConfigQA) {
fHistMan->FillHistClass("PairingSEQA", VarManager::fgValues);
}
} // end loop over events
}

Expand All @@ -2120,6 +2133,7 @@ struct AnalysisSameEventPairing {
}
auto t1 = a1.template reducedtrack_as<TTracks1>();
auto t2 = a2.template reducedtrack_as<TTracks2>();
fNPairPerEvent++;
VarManager::FillPairME<TEventFillMap, TPairType>(t1, t2);
if constexpr ((TEventFillMap & VarManager::ObjTypes::ReducedEventQvector) > 0) {
VarManager::FillPairVn<TEventFillMap, TPairType>(t1, t2);
Expand Down Expand Up @@ -2285,7 +2299,12 @@ struct AnalysisSameEventPairing {
auto assocs2 = assocs.sliceBy(preSlice, event2.globalIndex());
assocs2.bindExternalIndices(&events);

fNPairPerEvent = 0;
runMixedPairing<TPairType, TEventFillMap>(assocs1, assocs2, tracks, tracks);
VarManager::fgValues[VarManager::kNPairsPerEvent] = fNPairPerEvent;
if (fEnableBarrelMixingHistos && fConfigQA) {
fHistMan->FillHistClass("PairingMEQA", VarManager::fgValues);
}
} // end event loop
}

Expand Down Expand Up @@ -4274,6 +4293,10 @@ void DefineHistograms(HistogramManager* histMan, TString histClasses, const char
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "pair", histName);
}

if (classStr.Contains("Pairing")) {
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "event", histName);
}

if (classStr.Contains("Triplets")) {
dqhistograms::DefineHistograms(histMan, objArray->At(iclass)->GetName(), "pair", histName);
}
Expand Down
Loading