From f63a971e7a967ad9f2d4a3b9350762c51b1edc43 Mon Sep 17 00:00:00 2001
From: "s.zharko@gsi.de" <s.zharko@gsi.de>
Date: Tue, 4 Mar 2025 18:55:51 +0100
Subject: [PATCH] Adding PID by ELoss in STS (redimine 3554)

---
 macro/beamtime/mcbm2022/mcbm_event_reco_L1.C        | 5 +++++
 macro/beamtime/mcbm2024/mcbm_event_reco_L1.C        | 6 ++++++
 macro/beamtime/mcbm2025/mcbm_event_reco_L1.C        | 5 +++++
 reco/L1/OffLineInterface/CbmL1GlobalTrackFinder.cxx | 3 +++
 4 files changed, 19 insertions(+)

diff --git a/macro/beamtime/mcbm2022/mcbm_event_reco_L1.C b/macro/beamtime/mcbm2022/mcbm_event_reco_L1.C
index 35ba48cbc8..5b24ce5b67 100644
--- a/macro/beamtime/mcbm2022/mcbm_event_reco_L1.C
+++ b/macro/beamtime/mcbm2022/mcbm_event_reco_L1.C
@@ -629,6 +629,11 @@ Bool_t mcbm_event_reco_L1(UInt_t uRunId                   = 2570,
     CbmL1GlobalTrackFinder* globalTrackFinder = new CbmL1GlobalTrackFinder();
     FairTask* globalFindTracks                = new CbmL1GlobalFindTracksEvents(globalTrackFinder);
     run->AddTask(globalFindTracks);
+
+    auto* trdLI = new CbmTrdSetTracksPidLike("TRDLikelihood", "TRDLikelihood");
+    trdLI->SetUseMCInfo(false);
+    trdLI->SetUseMomDependence(false);
+    run->AddTask(trdLI);
   }
   // =========================================================================
   // ===                            QA                                     ===
diff --git a/macro/beamtime/mcbm2024/mcbm_event_reco_L1.C b/macro/beamtime/mcbm2024/mcbm_event_reco_L1.C
index 67e2848c21..56b5773432 100644
--- a/macro/beamtime/mcbm2024/mcbm_event_reco_L1.C
+++ b/macro/beamtime/mcbm2024/mcbm_event_reco_L1.C
@@ -632,6 +632,12 @@ Bool_t mcbm_event_reco_L1(UInt_t uRunId                   = 3105,
     FairTask* globalFindTracks                = new CbmL1GlobalFindTracksEvents(globalTrackFinder);
     run->AddTask(globalFindTracks);
 
+    auto* trdLI = new CbmTrdSetTracksPidLike("TRDLikelihood", "TRDLikelihood");
+    trdLI->SetUseMCInfo(false);
+    trdLI->SetUseMomDependence(false);
+    run->AddTask(trdLI);
+
+
     if (bPV) {
       CbmKF* KF = new CbmKF();
       run->AddTask(KF);
diff --git a/macro/beamtime/mcbm2025/mcbm_event_reco_L1.C b/macro/beamtime/mcbm2025/mcbm_event_reco_L1.C
index 7596b67bca..3f2e72756a 100644
--- a/macro/beamtime/mcbm2025/mcbm_event_reco_L1.C
+++ b/macro/beamtime/mcbm2025/mcbm_event_reco_L1.C
@@ -634,6 +634,11 @@ Bool_t mcbm_event_reco_L1(UInt_t uRunId                   = 3453,
     FairTask* globalFindTracks                = new CbmL1GlobalFindTracksEvents(globalTrackFinder);
     run->AddTask(globalFindTracks);
 
+    auto* trdLI = new CbmTrdSetTracksPidLike("TRDLikelihood", "TRDLikelihood");
+    trdLI->SetUseMCInfo(false);
+    trdLI->SetUseMomDependence(false);
+    run->AddTask(trdLI);
+
     if (bPV) {
       CbmKF* KF = new CbmKF();
       run->AddTask(KF);
diff --git a/reco/L1/OffLineInterface/CbmL1GlobalTrackFinder.cxx b/reco/L1/OffLineInterface/CbmL1GlobalTrackFinder.cxx
index c1f15963b2..cb69970661 100644
--- a/reco/L1/OffLineInterface/CbmL1GlobalTrackFinder.cxx
+++ b/reco/L1/OffLineInterface/CbmL1GlobalTrackFinder.cxx
@@ -190,6 +190,9 @@ void CbmL1GlobalTrackFinder::CbmL1TrackToCbmStsTrack(CbmL1Track l1track, CbmStsT
 
   track->SetParamFirst(cbm::kf::ConvertTrackParam(T));
   track->SetParamLast(cbm::kf::ConvertTrackParam(T.TLast));
+
+  double dEdXSts = this->CalculateEloss(track);
+  track->SetELoss(dEdXSts);
 }
 // -------------------------------------------------------------------------
 
-- 
GitLab