Skip to content
Merged
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
27 changes: 20 additions & 7 deletions PWGLF/Tasks/GlobalEventProperties/PseudorapidityDensityMFT.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,6 @@ static constexpr TrackSelectionFlags::flagtype TrackSelectionDca =
// using MFTTracksLabeled = soa::Join<o2::aod::MFTTracks, aod::McMFTTrackLabels>;
// replace your alias with the extension included:
using FullBCs = soa::Join<aod::BCsWithTimestamps, aod::BcSels>;

using MFTTracksLabeled =
soa::Join<o2::aod::MFTTracks, aod::MFTTrkCompColls, aod::BestCollisionsFwd3d,
/*aod::MFTTracks_001Extension, */ // exposes bestCollisionId, bestDCAXY, (and bestDCAZ if 3D)
Expand Down Expand Up @@ -174,6 +173,7 @@ struct PseudorapidityDensityMFT {
AllRecoCollisions = 1,
HasMcCollision,
RctMFT,
UseGoodItsLayersAll,
UseContBestCollisionIndex,
VzWindow,
InelGt0,
Expand Down Expand Up @@ -348,6 +348,7 @@ struct PseudorapidityDensityMFT {

Configurable<bool> useEvSel{"useEvSel", true, "use event selection"};
Configurable<bool> useNoSameBunchPileup{"useNoSameBunchPileup", true, "reject collisions in case of pileup with another collision in the same foundBC"};
Configurable<bool> useGoodItsLayersAll{"useGoodItsLayersAll", true, "all ITS layers are in a good state"};
Configurable<bool> useNoCollInRofStandard{"useNoCollInRofStandard", true, "Require evsel::kNoCollInRofStrict in processGenReco"};
Configurable<bool> useNoCollInRofStrict{"useNoCollInRofStrict", true, "Require evsel::kNoCollInRofStrict in processGenReco"};
Configurable<bool> useNoCollInTimeRangeStrict{"useNoCollInTimeRangeStrict", true, "Require evsel::kNoCollInTimeRangeStrict in processGenReco"};
Expand Down Expand Up @@ -511,6 +512,7 @@ struct PseudorapidityDensityMFT {
auto* x = h->GetXaxis();
x->SetBinLabel(static_cast<int>(GenRecoCutBin::AllRecoCollisions), "All reco collisions (loop entry)");
x->SetBinLabel(static_cast<int>(GenRecoCutBin::RctMFT), "myChecker (cfg)");
x->SetBinLabel(static_cast<int>(GenRecoCutBin::UseGoodItsLayersAll), "kIsGoodItsLayersAll");
x->SetBinLabel(static_cast<int>(GenRecoCutBin::UseContBestCollisionIndex), "useContBestcollisionIndex");
x->SetBinLabel(static_cast<int>(GenRecoCutBin::HasMcCollision), "has_mcCollision()");
x->SetBinLabel(static_cast<int>(GenRecoCutBin::VzWindow), "Vz window");
Expand Down Expand Up @@ -2175,12 +2177,6 @@ struct PseudorapidityDensityMFT {
}
fillGenRecoCut(step.bin);
}

if (useRctMFT && !myChecker(collision)) {
return false;
}
fillGenRecoCut(GenRecoCutBin::RctMFT);

return true;
};

Expand All @@ -2194,6 +2190,17 @@ struct PseudorapidityDensityMFT {
}
fillGenRecoCut(GenRecoCutBin::HasMcCollision);

if (useRctMFT && !myChecker(collision)) {
continue;
}
fillGenRecoCut(GenRecoCutBin::RctMFT);

if (useGoodItsLayersAll &&
!collision.selection_bit(o2::aod::evsel::kIsGoodITSLayersAll)) {
continue;
}
fillGenRecoCut(GenRecoCutBin::UseGoodItsLayersAll);

registry.fill(HIST("Purity/reco/CollisionNumContrib"), collision.numContrib());

if (useCont && collision.globalIndex() != mcCollision.bestCollisionIndex()) {
Expand Down Expand Up @@ -2487,6 +2494,12 @@ struct PseudorapidityDensityMFT {
}
fillGenRecoCut(GenRecoCutBin::RctMFT);

if (useGoodItsLayersAll &&
!collision.selection_bit(o2::aod::evsel::kIsGoodITSLayersAll)) {
continue;
}
fillGenRecoCut(GenRecoCutBin::UseGoodItsLayersAll);

registry.fill(HIST("Purity/reco/CollisionNumContrib"), collision.numContrib());

if (useCont && collision.globalIndex() != mcCollision.bestCollisionIndex()) {
Expand Down
Loading