From b5d3447da17c5c6222a9cb7682e1bf6d631fa0ae Mon Sep 17 00:00:00 2001 From: P-A Loizeau <p.-a.loizeau@gsi.de> Date: Wed, 12 Mar 2025 05:20:30 +0100 Subject: [PATCH] [QA] Add plots for selected pairs in v0 trigger mode --- algo/qa/trigger/V0TriggerQa.cxx | 26 +++++++++++++++++++------- algo/qa/trigger/V0TriggerQa.h | 9 ++++++--- algo/trigger/V0Trigger.cxx | 5 +++++ 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/algo/qa/trigger/V0TriggerQa.cxx b/algo/qa/trigger/V0TriggerQa.cxx index 234cf13b1..a3db84a53 100644 --- a/algo/qa/trigger/V0TriggerQa.cxx +++ b/algo/qa/trigger/V0TriggerQa.cxx @@ -18,17 +18,29 @@ using cbm::algo::evbuild::V0TriggerQa; void V0TriggerQa::Init() { // Histograms - fphPairDeltaT = MakeObj<qa::H1D>("v0trigger_pair_delta_t", "Time difference of track pair;#Delta t [ns];Counts", - kPairDeltaTB, kPairDeltaTL, kPairDeltaTU); - fphPairZVertex = MakeObj<qa::H1D>("v0trigger_pair_z_vertex", "z-verex of track pair;z [cm];Counts", kPairZVertexB, - kPairZVertexL, kPairZVertexU); - fphPairDca = MakeObj<qa::H1D>("v0trigger_pair_dca", "Track pair distance of closest approach;DCA [cm];Counts", - kPairDcaB, kPairDcaL, kPairDcaU); + fphPairDeltaT = MakeObj<qa::H1D>("v0trigger_pair_delta_t", "Time difference of track pair;#Delta t [ns];Counts", + kPairDeltaTB, kPairDeltaTL, kPairDeltaTU); + fphPairZVertex = MakeObj<qa::H1D>("v0trigger_pair_z_vertex", "z-vertex of track pair;z [cm];Counts", kPairZVertexB, + kPairZVertexL, kPairZVertexU); + fphPairDca = MakeObj<qa::H1D>("v0trigger_pair_dca", "Track pair distance of closest approach;DCA [cm];Counts", + kPairDcaB, kPairDcaL, kPairDcaU); + fphSelPairDeltaT = MakeObj<qa::H1D>("v0trigger_selpair_delta_t", + "Time difference of selected track pair (pass all cuts);#Delta t [ns];Counts", + kPairDeltaTB, kPairDeltaTL, kPairDeltaTU); + fphSelPairZVertex = MakeObj<qa::H1D>("v0trigger_selpair_z_vertex", + "z-vertex of selected track pair (pass all cuts);z [cm];Counts", kPairZVertexB, + kPairZVertexL, kPairZVertexU); + fphSelPairDca = MakeObj<qa::H1D>("v0trigger_selpair_dca", + "Selected track pair (all cuts ok) distance of closest approach;DCA [cm];Counts", + kPairDcaB, kPairDcaL, kPairDcaU); // Canvas - auto canv = qa::CanvasConfig(GetTaskName(), "V0 Trigger summary", 3, 1); + auto canv = qa::CanvasConfig(GetTaskName(), "V0 Trigger summary", 3, 2); canv.AddPadConfig(qa::PadConfig(fphPairDeltaT, "hist")); canv.AddPadConfig(qa::PadConfig(fphPairZVertex, "hist")); canv.AddPadConfig(qa::PadConfig(fphPairDca, "hist")); + canv.AddPadConfig(qa::PadConfig(fphSelPairDeltaT, "hist")); + canv.AddPadConfig(qa::PadConfig(fphSelPairZVertex, "hist")); + canv.AddPadConfig(qa::PadConfig(fphSelPairDca, "hist")); AddCanvasConfig(canv); } diff --git a/algo/qa/trigger/V0TriggerQa.h b/algo/qa/trigger/V0TriggerQa.h index fff885f86..b0f37c398 100644 --- a/algo/qa/trigger/V0TriggerQa.h +++ b/algo/qa/trigger/V0TriggerQa.h @@ -61,8 +61,11 @@ namespace cbm::algo::evbuild static constexpr double kPairDcaU{+5.5}; ///< Track pair DCA: upper bound [cm] //* Histograms - qa::H1D* fphPairDeltaT{nullptr}; ///< Track pair delta T - qa::H1D* fphPairZVertex{nullptr}; ///< Track pair z-vertex - qa::H1D* fphPairDca{nullptr}; ///< Track pair distance at closest approach + qa::H1D* fphPairDeltaT{nullptr}; ///< Track pair delta T + qa::H1D* fphPairZVertex{nullptr}; ///< Track pair z-vertex + qa::H1D* fphPairDca{nullptr}; ///< Track pair distance at closest approach + qa::H1D* fphSelPairDeltaT{nullptr}; ///< Track selected pairs delta T (pass all cuts) + qa::H1D* fphSelPairZVertex{nullptr}; ///< Track selected pairs z-vertex (pass all cuts) + qa::H1D* fphSelPairDca{nullptr}; ///< Track selected pairs distance at closest approach (pass all cuts) }; } // namespace cbm::algo::evbuild diff --git a/algo/trigger/V0Trigger.cxx b/algo/trigger/V0Trigger.cxx index e3ff8ef9f..4ba866c81 100644 --- a/algo/trigger/V0Trigger.cxx +++ b/algo/trigger/V0Trigger.cxx @@ -58,6 +58,11 @@ namespace cbm::algo::evbuild result.second.numTrackPairsAfterZCut++; double tVertex = 0.5 * (time1 + time2); result.first.push_back(tVertex); + if (fpQa->IsActive()) { + fpQa->fphSelPairDeltaT->Fill(time2 - time1); + fpQa->fphSelPairZVertex->Fill(zVertex); + fpQa->fphSelPairDca->Fill(dist); + } } } } -- GitLab