From 8eaad0aaf5c407e71fdc7ce32dc5b94d905d10fd Mon Sep 17 00:00:00 2001 From: jesgum Date: Tue, 23 Sep 2025 13:45:49 +0200 Subject: [PATCH 1/3] Let fasttracker in otf-tracker to use the generic geo --- ALICE3/TableProducer/OTF/onTheFlyTracker.cxx | 31 ++++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx b/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx index 0f785534159..1015e620fbb 100644 --- a/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx +++ b/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx @@ -139,6 +139,7 @@ struct OnTheFlyTracker { Configurable minSiliconHitsIfTPCUsed{"minSiliconHitsIfTPCUsed", 2, "minimum number of silicon hits to accept track in case TPC info is present"}; Configurable minTPCClusters{"minTPCClusters", 70, "minimum number of TPC hits necessary to consider minSiliconHitsIfTPCUsed"}; Configurable alice3detector{"alice3detector", 2, "0: ALICE 3 v1, 1: ALICE 3 v4, 2: ALICE 3 Sep 2025"}; + Configurable alice3geo{"alice3geo", "", "Path to ccdb with a3 geo. If empty, fallback to pre-defined geometry"}; Configurable applyZacceptance{"applyZacceptance", false, "apply z limits to detector layers or not"}; Configurable applyMSCorrection{"applyMSCorrection", true, "apply ms corrections for secondaries or not"}; Configurable applyElossCorrection{"applyElossCorrection", true, "apply eloss corrections for secondaries or not"}; @@ -413,22 +414,26 @@ struct OnTheFlyTracker { fastTracker.SetApplyMSCorrection(fastTrackerSettings.applyMSCorrection); fastTracker.SetApplyElossCorrection(fastTrackerSettings.applyElossCorrection); - switch (fastTrackerSettings.alice3detector) { - case 0: - fastTracker.AddSiliconALICE3v2(fastTrackerSettings.pixelRes); - break; + if (fastTrackerSettings.alice3geo.value.empty()) { + switch (fastTrackerSettings.alice3detector) { + case 0: + fastTracker.AddSiliconALICE3v2(fastTrackerSettings.pixelRes); + break; - case 1: - fastTracker.AddSiliconALICE3v4(fastTrackerSettings.pixelRes); - fastTracker.AddTPC(0.1, 0.1); - break; + case 1: + fastTracker.AddSiliconALICE3v4(fastTrackerSettings.pixelRes); + fastTracker.AddTPC(0.1, 0.1); + break; - case 2: - fastTracker.AddSiliconALICE3(fastTrackerSettings.scaleVD, fastTrackerSettings.pixelRes); - break; + case 2: + fastTracker.AddSiliconALICE3(fastTrackerSettings.scaleVD, fastTrackerSettings.pixelRes); + break; - default: - break; + default: + break; + } + } else { + fastTracker.AddGenericDetector(fastTrackerSettings.alice3geo, ccdb.operator->()); } // print fastTracker settings From 5a9cf830b9a6a33025605b7d4e75ccc2a7688a3e Mon Sep 17 00:00:00 2001 From: jesgum Date: Tue, 23 Sep 2025 15:37:40 +0200 Subject: [PATCH 2/3] Use only one configurable for fasttracker geo --- ALICE3/Core/FastTracker.cxx | 2 +- ALICE3/TableProducer/OTF/onTheFlyTracker.cxx | 48 ++++++++------------ 2 files changed, 20 insertions(+), 30 deletions(-) diff --git a/ALICE3/Core/FastTracker.cxx b/ALICE3/Core/FastTracker.cxx index 0f45e47291e..b2223592647 100644 --- a/ALICE3/Core/FastTracker.cxx +++ b/ALICE3/Core/FastTracker.cxx @@ -180,7 +180,7 @@ void FastTracker::AddSiliconALICE3(float scaleX0VD, std::vector pixelReso AddLayer("B03", 7., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); AddLayer("B04", 9., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); AddLayer("B05", 12., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); - AddLayer("iTOF", 19, 250, x0iTOF, xrhoiTOF, resRPhiOT, resZOT, eff, 0); + AddLayer("iTOF", 19, 250, x0iTOF, xrhoiTOF, resRPhiOT, resZOT, 0.0f, 0); AddLayer("B06", 20., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); AddLayer("B07", 30., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); AddLayer("B08", 45., 250, x0OT, xrhoOT, resRPhiOT, resZOT, eff, 1); diff --git a/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx b/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx index 1015e620fbb..fddfdebd2a0 100644 --- a/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx +++ b/ALICE3/TableProducer/OTF/onTheFlyTracker.cxx @@ -138,8 +138,7 @@ struct OnTheFlyTracker { Configurable minSiliconHits{"minSiliconHits", 6, "minimum number of silicon hits to accept track"}; Configurable minSiliconHitsIfTPCUsed{"minSiliconHitsIfTPCUsed", 2, "minimum number of silicon hits to accept track in case TPC info is present"}; Configurable minTPCClusters{"minTPCClusters", 70, "minimum number of TPC hits necessary to consider minSiliconHitsIfTPCUsed"}; - Configurable alice3detector{"alice3detector", 2, "0: ALICE 3 v1, 1: ALICE 3 v4, 2: ALICE 3 Sep 2025"}; - Configurable alice3geo{"alice3geo", "", "Path to ccdb with a3 geo. If empty, fallback to pre-defined geometry"}; + Configurable alice3geo{"alice3geo", "2", "0: ALICE 3 v1, 1: ALICE 3 v4, 2: ALICE 3 Sep 2025, or path to ccdb with a3 geo"}; Configurable applyZacceptance{"applyZacceptance", false, "apply z limits to detector layers or not"}; Configurable applyMSCorrection{"applyMSCorrection", true, "apply ms corrections for secondaries or not"}; Configurable applyElossCorrection{"applyElossCorrection", true, "apply eloss corrections for secondaries or not"}; @@ -409,35 +408,26 @@ struct OnTheFlyTracker { rand.SetSeed(seed); // configure FastTracker - fastTracker.SetMagneticField(magneticField); - fastTracker.SetApplyZacceptance(fastTrackerSettings.applyZacceptance); - fastTracker.SetApplyMSCorrection(fastTrackerSettings.applyMSCorrection); - fastTracker.SetApplyElossCorrection(fastTrackerSettings.applyElossCorrection); - - if (fastTrackerSettings.alice3geo.value.empty()) { - switch (fastTrackerSettings.alice3detector) { - case 0: - fastTracker.AddSiliconALICE3v2(fastTrackerSettings.pixelRes); - break; - - case 1: - fastTracker.AddSiliconALICE3v4(fastTrackerSettings.pixelRes); - fastTracker.AddTPC(0.1, 0.1); - break; - - case 2: - fastTracker.AddSiliconALICE3(fastTrackerSettings.scaleVD, fastTrackerSettings.pixelRes); - break; - - default: - break; + if (enableSecondarySmearing) { + fastTracker.SetMagneticField(magneticField); + fastTracker.SetApplyZacceptance(fastTrackerSettings.applyZacceptance); + fastTracker.SetApplyMSCorrection(fastTrackerSettings.applyMSCorrection); + fastTracker.SetApplyElossCorrection(fastTrackerSettings.applyElossCorrection); + + if (fastTrackerSettings.alice3geo.value == "0") { + fastTracker.AddSiliconALICE3v2(fastTrackerSettings.pixelRes); + } else if (fastTrackerSettings.alice3geo.value == "1") { + fastTracker.AddSiliconALICE3v4(fastTrackerSettings.pixelRes); + fastTracker.AddTPC(0.1, 0.1); + } else if (fastTrackerSettings.alice3geo.value == "2") { + fastTracker.AddSiliconALICE3(fastTrackerSettings.scaleVD, fastTrackerSettings.pixelRes); + } else { + fastTracker.AddGenericDetector(fastTrackerSettings.alice3geo, ccdb.operator->()); } - } else { - fastTracker.AddGenericDetector(fastTrackerSettings.alice3geo, ccdb.operator->()); - } - // print fastTracker settings - fastTracker.Print(); + // print fastTracker settings + fastTracker.Print(); + } } /// Function to decay the xi From aefc741a249da59967b535f556ac85b9e9a8abb6 Mon Sep 17 00:00:00 2001 From: jesgum Date: Tue, 23 Sep 2025 15:42:17 +0200 Subject: [PATCH 3/3] includes --- ALICE3/Core/FastTracker.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/ALICE3/Core/FastTracker.cxx b/ALICE3/Core/FastTracker.cxx index b2223592647..e189a86a0df 100644 --- a/ALICE3/Core/FastTracker.cxx +++ b/ALICE3/Core/FastTracker.cxx @@ -18,6 +18,7 @@ #include "TMatrixDSymEigen.h" #include "TRandom.h" +#include #include #include